CIPP for VS Code
io.github.wyre-technology/cipp-mcp
MCP server for CIPP — M365 multi-tenant management for MSPs (users, tenants, policies).
client:VS Code
transport:stdio
runtime:oci
Install CIPP in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "cipp-api-url",
"description": "CIPP_API_URL",
"password": true
},
{
"type": "promptString",
"id": "cipp-client-id",
"description": "CIPP_CLIENT_ID",
"password": true
},
{
"type": "promptString",
"id": "cipp-client-secret",
"description": "CIPP_CLIENT_SECRET",
"password": true
},
{
"type": "promptString",
"id": "cipp-tenant-id",
"description": "CIPP_TENANT_ID",
"password": true
},
{
"type": "promptString",
"id": "mcp-transport",
"description": "MCP_TRANSPORT",
"password": true
},
{
"type": "promptString",
"id": "auth-mode",
"description": "AUTH_MODE",
"password": true
},
{
"type": "promptString",
"id": "log-level",
"description": "LOG_LEVEL",
"password": true
}
],
"servers": {
"cipp-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/cipp-mcp:v1.7.3"
],
"env": {
"CIPP_API_URL": "${input:cipp-api-url}",
"CIPP_CLIENT_ID": "${input:cipp-client-id}",
"CIPP_CLIENT_SECRET": "${input:cipp-client-secret}",
"CIPP_TENANT_ID": "${input:cipp-tenant-id}",
"MCP_TRANSPORT": "${input:mcp-transport}",
"AUTH_MODE": "${input:auth-mode}",
"LOG_LEVEL": "${input:log-level}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs