ccu mcp for VS Code
io.github.claymore666/ccu-mcp
MCP server for controlling HomeMatic smart home devices via the CCU JSON-RPC API
client:VS Code
transport:stdio
runtime:npm
Install ccu mcp in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "ccu-host",
"description": "CCU_HOST",
"password": true
},
{
"type": "promptString",
"id": "ccu-password",
"description": "CCU_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "ccu-user",
"description": "CCU_USER",
"password": true
},
{
"type": "promptString",
"id": "ccu-https",
"description": "CCU_HTTPS",
"password": true
},
{
"type": "promptString",
"id": "ccu-port",
"description": "CCU_PORT",
"password": true
},
{
"type": "promptString",
"id": "cache-dir",
"description": "CACHE_DIR",
"password": true
},
{
"type": "promptString",
"id": "mcp-allowed-origins",
"description": "MCP_ALLOWED_ORIGINS",
"password": true
},
{
"type": "promptString",
"id": "mcp-allowed-hosts",
"description": "MCP_ALLOWED_HOSTS",
"password": true
},
{
"type": "promptString",
"id": "ccu-profiles",
"description": "CCU_PROFILES",
"password": true
},
{
"type": "promptString",
"id": "ccu-default-profile",
"description": "CCU_DEFAULT_PROFILE",
"password": true
},
{
"type": "promptString",
"id": "ccu-tls-verify",
"description": "CCU_TLS_VERIFY",
"password": true
},
{
"type": "promptString",
"id": "ccu-tls-fingerprint",
"description": "CCU_TLS_FINGERPRINT",
"password": true
},
{
"type": "promptString",
"id": "ccu-ca-cert",
"description": "CCU_CA_CERT",
"password": true
},
{
"type": "promptString",
"id": "ccu-timeout",
"description": "CCU_TIMEOUT",
"password": true
},
{
"type": "promptString",
"id": "ccu-script-timeout",
"description": "CCU_SCRIPT_TIMEOUT",
"password": true
},
{
"type": "promptString",
"id": "cache-ttl",
"description": "CACHE_TTL",
"password": true
},
{
"type": "promptString",
"id": "ccu-rate-limit-burst",
"description": "CCU_RATE_LIMIT_BURST",
"password": true
},
{
"type": "promptString",
"id": "ccu-rate-limit-rate",
"description": "CCU_RATE_LIMIT_RATE",
"password": true
},
{
"type": "promptString",
"id": "resource-poll-interval",
"description": "RESOURCE_POLL_INTERVAL",
"password": true
},
{
"type": "promptString",
"id": "log-level",
"description": "LOG_LEVEL",
"password": true
}
],
"servers": {
"ccu-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ccu-mcp"
],
"env": {
"CCU_HOST": "${input:ccu-host}",
"CCU_PASSWORD": "${input:ccu-password}",
"CCU_USER": "${input:ccu-user}",
"CCU_HTTPS": "${input:ccu-https}",
"CCU_PORT": "${input:ccu-port}",
"CACHE_DIR": "${input:cache-dir}",
"MCP_ALLOWED_ORIGINS": "${input:mcp-allowed-origins}",
"MCP_ALLOWED_HOSTS": "${input:mcp-allowed-hosts}",
"CCU_PROFILES": "${input:ccu-profiles}",
"CCU_DEFAULT_PROFILE": "${input:ccu-default-profile}",
"CCU_TLS_VERIFY": "${input:ccu-tls-verify}",
"CCU_TLS_FINGERPRINT": "${input:ccu-tls-fingerprint}",
"CCU_CA_CERT": "${input:ccu-ca-cert}",
"CCU_TIMEOUT": "${input:ccu-timeout}",
"CCU_SCRIPT_TIMEOUT": "${input:ccu-script-timeout}",
"CACHE_TTL": "${input:cache-ttl}",
"CCU_RATE_LIMIT_BURST": "${input:ccu-rate-limit-burst}",
"CCU_RATE_LIMIT_RATE": "${input:ccu-rate-limit-rate}",
"RESOURCE_POLL_INTERVAL": "${input:resource-poll-interval}",
"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