🍓 servidor pihole-mcp
Un servidor de Protocolo de Contexto de Modelo (MCP) para Pi-hole. Este servidor expone la funcionalidad de Pi-hole como herramientas que pueden ser utilizadas por asistentes de IA.
Dependencias
Estibador
uv
(opcional, para desarrollo)
Si desea ejecutar la aplicación localmente, use uv
. Instálela con el gestor de paquetes que prefiera.
Ambiente
Cree un archivo .env
en la raíz del proyecto con sus credenciales de Pi-hole:
Estructura del proyecto
El proyecto sigue una organización modular para una mejor mantenibilidad:
Esta estructura separa el código en componentes lógicos manteniendo la compatibilidad con todos los modos de ejecución.
Ejecución del servidor
Hay varias formas de ejecutar el servidor MCP de Pi-hole:
Uso de Docker (recomendado para producción)
El servidor estará disponible en http://localhost:8383
Modo de desarrollo con Docker
Para el desarrollo, utilice el archivo de composición dev que se compila localmente:
Inspector de MCP
Puede ejecutar el inspector MCP usando uv
y la CLI mcp
:
Esto iniciará una interfaz interactiva en http://localhost:6274
donde podrá probar herramientas y recursos.
API
Este servidor MCP expone los siguientes recursos y herramientas:
Recursos
piholes://
: Devuelve información sobre todos los Pi-holes configuradosversion://
: Devuelve la versión del servidor MCPlist-tools://
: Devuelve una lista de categorías de herramientaslist-tools://{category}
: Devuelve una lista de herramientas dentro de una categoría específica
Herramientas
Cada llamada de herramienta devuelve resultados como una lista de diccionarios con la siguiente estructura:
Configuración
list_local_dns
: enumera todas las configuraciones de DNS locales de Pi-hole(s)add_local_a_record
: agrega un registro A local a Pi-hole(s).add_local_cname_record
: agrega un registro CNAME local a Pi-hole(s).remove_local_a_record
: elimina todos los registros A de un nombre de host.remove_local_cname_record
: elimina todos los registros CNAME de un nombre de host.
Métrica
list_queries
: obtiene el historial reciente de consultas DNS de Pi-hole(s)list_query_suggestions
: Obtener sugerencias de filtros de consultalist_query_history
: Obtener datos del gráfico de actividad para consultas a lo largo del tiempo
Pruebas en goose
Goose es un cliente CLI LLM útil para pruebas y desarrollo. Sigue sus instrucciones de instalación aquí .
Lo siguiente supone que ha completado la configuración inicial con goose configure
.
Configurar extensión
- Escriba
goose configure
para abrir el menú de configuración. - Seleccione Agregar extensión
- Seleccionar extensión remota
- Te pedirá un nombre. No importa cómo lo llames. Yo lo llamé
pihole-mcp
. - Cuando pregunte "¿Cuál es el URI del punto final de SSE?", ingrese
http://localhost:8383/sse
. - Introduzca un tiempo de espera.
- Añade una descripción si lo deseas.
- Seleccione No cuando le pregunte acerca de las variables de entorno.
Iniciar una sesión
Una vez instalado el servidor, inicie una sesión de chat.
Intente preguntarle: "¿Cuáles son mis registros DNS locales?"
...o decirle: "Muéstrame mis consultas DNS recientes".
Escritorio de Claude
El cliente de escritorio de Claude actualmente solo admite el protocolo STDIO, sin embargo, puede usar un proxy para comunicarse con el punto final SSE.
Agregue lo siguiente a su archivo claude_desktop_config.json
.
Si se conecta a un host diferente en su red local y usa una conexión no segura, deberá permitirla explícitamente con el argumento --allow-http
. Por ejemplo:
Luego, reinicia completamente la aplicación y pruébala.
Licencia
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor que expone la funcionalidad de Pi-hole como herramientas para asistentes de IA, permitiéndoles recuperar configuraciones de DNS locales y consultar el historial a través del lenguaje natural.
Related MCP Servers
- AsecurityAlicenseAqualityThis server enables AI systems to integrate with Tavily's search and data extraction tools, providing real-time web information access and domain-specific searches.Last updated -28,040437JavaScriptMIT License
JSON Resume MCP Serverofficial
AsecurityAlicenseAqualityA server that enhances AI assistants with the ability to update your JSON Resume by analyzing your coding projects, automatically extracting skills and generating professional descriptions.Last updated -33239TypeScriptThe Unlicense- -securityAlicense-qualityA server that allows AI assistants to search for research papers, read their content, and access related code repositories through the PapersWithCode API.Last updated -4PythonMIT License
- -securityAlicense-qualityA server that enables AI assistants like Claude to safely run Python code and access websites, processing data for better AI understanding while providing helpful error messages.Last updated -2PythonGPL 3.0