pihole-mcp-serer

pihole-mcp-serer

site icon
2025.04.21 0
PythonDNS管理网络监控开发效率
pihole-mcp-server 是一个基于 Model Context Protocol (MCP) 的服务器,专门为 Pi-hole 设计。它通过将 Pi-hole 的功能暴露为工具,使得 AI 助手能够利用这些功能。该服务器支持管理多个 Pi-hole 实例,并提供本地 DNS 设置和查询历史等功能。
View on GitHub

Overview

基本能力

产品定位

pihole-mcp-server 是一个为 Pi-hole 设计的 MCP 服务器,旨在通过 AI 助手访问和管理 Pi-hole 的功能。

核心功能

  • ListLocalDNS: 返回 Pi-hole 的所有本地 DNS 设置
  • ListQueries: 返回 Pi-hole 的最近 DNS 查询历史
  • Multiple Pi-hole Support: 支持从单个 MCP 服务器管理最多 4 个 Pi-hole 实例

适用场景

  • 通过 AI 助手管理本地 DNS 设置
  • 查看和分析 DNS 查询历史
  • 集中管理多个 Pi-hole 实例

工具列表

  • list_local_dns: 列出 Pi-hole 的所有本地 DNS 设置
  • list_queries: 获取 Pi-hole 的最近 DNS 查询历史

常见问题解答

  • 如何配置多个 Pi-hole 实例?.env 文件中配置 PIHOLE2_URL, PIHOLE2_PASSWORD 等参数。
  • 如何在 Claude Desktop 中使用? 需要在 claude_desktop_config.json 文件中配置 MCP 服务器信息。

使用教程

使用依赖

安装教程

  1. 创建 .env 文件并配置 Pi-hole 凭证
  2. 使用 Docker 运行服务器: bash docker-compose up -d
  3. 服务器将在 http://localhost:8383 可用

调试方式

  • 开发模式: bash docker-compose -f docker-compose.dev.yml up
  • 本地开发: bash uv run mcp dev main.py
  • STDIO 模式: bash uv run mcp run main.py

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。