Tapo MCP for VS Code
io.github.mihai-dinculescu/tapo-mcp
MCP server for discovering and controlling TP-Link Tapo smart home devices via AI Agents
client:VS Code
transport:stdio
runtime:oci
Install Tapo MCP in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "tapo-mcp-username",
"description": "TAPO_MCP_USERNAME",
"password": true
},
{
"type": "promptString",
"id": "tapo-mcp-password",
"description": "TAPO_MCP_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "tapo-mcp-discovery-target",
"description": "TAPO_MCP_DISCOVERY_TARGET",
"password": true
},
{
"type": "promptString",
"id": "tapo-mcp-api-key",
"description": "TAPO_MCP_API_KEY",
"password": true
},
{
"type": "promptString",
"id": "tapo-mcp-discovery-timeout",
"description": "TAPO_MCP_DISCOVERY_TIMEOUT",
"password": true
},
{
"type": "promptString",
"id": "otel-exporter-otlp-endpoint",
"description": "OTEL_EXPORTER_OTLP_ENDPOINT",
"password": true
}
],
"servers": {
"tapo-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mihai-dinculescu/tapo-mcp:0.5.0"
],
"env": {
"TAPO_MCP_USERNAME": "${input:tapo-mcp-username}",
"TAPO_MCP_PASSWORD": "${input:tapo-mcp-password}",
"TAPO_MCP_DISCOVERY_TARGET": "${input:tapo-mcp-discovery-target}",
"TAPO_MCP_API_KEY": "${input:tapo-mcp-api-key}",
"TAPO_MCP_DISCOVERY_TIMEOUT": "${input:tapo-mcp-discovery-timeout}",
"OTEL_EXPORTER_OTLP_ENDPOINT": "${input:otel-exporter-otlp-endpoint}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs