Pi-hole MCP Server

io.github.hexamatic/pihole-mcp

Manage Pi-hole v6: DNS blocking, domains, clients, query analysis, DHCP, and multi-instance sync.

Connect this server

Add this to your MCP client config — claude_desktop_config.json (Claude Desktop) or .cursor/mcp.json (Cursor).Suits: Claude Desktop · Cursor.

{
  "mcpServers": {
    "pihole-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/hexamatic/pihole-mcp:0.10.0"
      ],
      "env": {
        "PIHOLE_URL": "<your PIHOLE_URL>",
        "PIHOLE_PASSWORD": "<your PIHOLE_PASSWORD>",
        "PIHOLE_READ_ONLY": "false",
        "PIHOLE_TLS_SKIP_VERIFY": "false",
        "PIHOLE_REQUEST_TIMEOUT": "30s",
        "PIHOLE_MAX_RETRIES": "3",
        "PIHOLE_RETRY_MAX_DELAY": "8s"
      }
    }
  }
}
Environment variables
  • PIHOLE_URLrequiredBase URL of your Pi-hole web interface. For multiple Pi-holes use PIHOLE_1_URL, PIHOLE_2_URL, ... instead.
  • PIHOLE_PASSWORDrequiredsecretPi-hole admin password, or an application password (recommended — bypasses TOTP 2FA)
  • PIHOLE_READ_ONLYExpose only inspection tools. Every tool that can change Pi-hole is hidden and rejected if called.
  • PIHOLE_TLS_SKIP_VERIFYSet to true only for a Pi-hole serving a self-signed HTTPS certificate. A trusted certificate is the better fix.
  • PIHOLE_REQUEST_TIMEOUTHTTP request timeout as a Go duration, e.g. 30s or 1m
  • PIHOLE_MAX_RETRIESRetries after a transient Pi-hole API failure; 0 disables retrying
  • PIHOLE_RETRY_MAX_DELAYUpper bound on a single exponential-backoff wait, as a Go duration

A starting point — check the repository for exact arguments and setup. Restart your client after editing the config.

Category
Developer Tools
Version
0.10.0
Registry
active
Published
11/2/2026
Browse all Developer Tools →

Add the badge to your site

Show visitors that Pi-hole MCP Server is listed here — it’s also the link we check for a free listing.

Pi-hole MCP Server — listed on Serverdex

HTML — for your website

<a href="https://serverdex.io/server/io-github-hexamatic-pihole-mcp?utm_source=badge"><img src="https://serverdex.io/brand/badge.svg" alt="Pi-hole MCP Server — listed on Serverdex" width="123" height="40" loading="lazy"></a>

Recommended. A dofollow link from your own domain is the one that counts for search engines, and it's the link we check for a free listing.

Markdown — for your README

[![Pi-hole MCP Server — listed on Serverdex](https://serverdex.io/brand/badge.svg)](https://serverdex.io/server/io-github-hexamatic-pihole-mcp?utm_source=badge)

Nice for visibility, but GitHub marks README links nofollow, so it doesn't pass authority. Use the HTML badge on your site as well.