Pi-hole MCP Server
About
Manage Pi-hole v6: DNS blocking, domains, clients, query analysis, DHCP, and multi-instance sync.
Use this server
Add it to your MCP client. The catalogue lists this config verbatim from its source — it does not run, download, or vouch for the server. Review the command before you run it.
Transportstdio (runs a local command)
Env vars
PIHOLE_URL PIHOLE_PASSWORD TZ PIHOLE_TLS_SKIP_VERIFY PIHOLE_REQUEST_TIMEOUT PIHOLE_MAX_RETRIES PIHOLE_RETRY_MAX_DELAYClaude Code
claude mcp add --env PIHOLE_URL= --env PIHOLE_PASSWORD= --env TZ= --env PIHOLE_TLS_SKIP_VERIFY= --env PIHOLE_REQUEST_TIMEOUT= --env PIHOLE_MAX_RETRIES= --env PIHOLE_RETRY_MAX_DELAY= pihole-mcp -- docker ghcr.io/hexamatic/pihole-mcp:0.8.0
Cursor
If the button doesn't open Cursor, use the JSON below — Cursor accepts the same mcpServers config.
VS Code
code --add-mcp '{"name":"pihole-mcp","command":"docker","args":["ghcr.io/hexamatic/pihole-mcp:0.8.0"],"env":{"PIHOLE_URL":"","PIHOLE_PASSWORD":"","TZ":"","PIHOLE_TLS_SKIP_VERIFY":"","PIHOLE_REQUEST_TIMEOUT":"","PIHOLE_MAX_RETRIES":"","PIHOLE_RETRY_MAX_DELAY":""}}'
JSON
{
"mcpServers": {
"pihole-mcp": {
"command": "docker",
"args": [
"ghcr.io/hexamatic/pihole-mcp:0.8.0"
],
"env": {
"PIHOLE_URL": "",
"PIHOLE_PASSWORD": "",
"TZ": "",
"PIHOLE_TLS_SKIP_VERIFY": "",
"PIHOLE_REQUEST_TIMEOUT": "",
"PIHOLE_MAX_RETRIES": "",
"PIHOLE_RETRY_MAX_DELAY": ""
}
}
}
}
Environment variables are listed by name only — fill in your own values. Entries never carry secrets.