Lets MCP-compatible assistants access and manage PI Dashboard resources such as categories and charts through the PI API.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add pi-api --env API_URL='<API_URL>' --env PI_API_KEY='<PI_API_KEY>' -- docker run -i --rm -e 'API_URL={{config.API_URL}}' -e 'PI_API_KEY={{config.PI_API_KEY}}' mingzilla/pi-api-mcp-server~/.codex/config.toml
[mcp_servers.pi-api]
command = "docker"
args = ["run", "-i", "--rm", "-e", "API_URL={{config.API_URL}}", "-e", "PI_API_KEY={{config.PI_API_KEY}}", "mingzilla/pi-api-mcp-server"]
env = { API_URL = "<API_URL>", PI_API_KEY = "<PI_API_KEY>" }
# codex mcp add pi-api --env API_URL='<API_URL>' --env PI_API_KEY='<PI_API_KEY>' -- docker run -i --rm -e 'API_URL={{config.API_URL}}' -e 'PI_API_KEY={{config.PI_API_KEY}}' mingzilla/pi-api-mcp-server~/.cursor/mcp.json
{
"mcpServers": {
"pi-api": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_URL={{config.API_URL}}",
"-e",
"PI_API_KEY={{config.PI_API_KEY}}",
"mingzilla/pi-api-mcp-server"
],
"env": {
"API_URL": "<API_URL>",
"PI_API_KEY": "<PI_API_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"pi-api": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_URL={{config.API_URL}}",
"-e",
"PI_API_KEY={{config.PI_API_KEY}}",
"mingzilla/pi-api-mcp-server"
],
"env": {
"API_URL": "<API_URL>",
"PI_API_KEY": "<PI_API_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"pi-api": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_URL={{config.API_URL}}",
"-e",
"PI_API_KEY={{config.PI_API_KEY}}",
"mingzilla/pi-api-mcp-server"
],
"env": {
"API_URL": "<API_URL>",
"PI_API_KEY": "<PI_API_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"pi-api": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_URL={{config.API_URL}}",
"-e",
"PI_API_KEY={{config.PI_API_KEY}}",
"mingzilla/pi-api-mcp-server"
],
"env": {
"API_URL": "<API_URL>",
"PI_API_KEY": "<PI_API_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"pi-api": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_URL={{config.API_URL}}",
"-e",
"PI_API_KEY={{config.PI_API_KEY}}",
"mingzilla/pi-api-mcp-server"
],
"env": {
"API_URL": "<API_URL>",
"PI_API_KEY": "<PI_API_KEY>"
}
}
}
}Environment variables
API_URLPI_API_KEY
Replace the placeholders with your own credentials and keep them out of version control.