Servidor MCP de Netbird

Un servidor MCP ( Model Context Protocol ) para Netbird.

Este proyecto deriva del Servidor MCP para Grafana de Grafana Labs y está licenciado bajo la misma Licencia Apache 2.0.

También utiliza MCP Go de Mark III Labs.

Nota: este proyecto está todavía en desarrollo.

Instalación de

Instalación desde el código fuente

Clona el repositorio

git clone https://github.com/aantti/mcp-netbird

Construir e instalar

cd mcp-netbird && \ make install

Instalación desde GitHub

go install github.com/aantti/mcp-netbird/cmd/mcp-netbird@latest

Instalación a través de Smithery

smithery badge

Para instalar Netbird MCP Server para Claude Desktop automáticamente a través de Smithery:

npx -y @smithery/cli install @aantti/mcp-netbird --client claude

Configuración

El servidor requiere las siguientes variables de entorno:

  • NETBIRD_API_TOKEN: Tu token de la API de Netbird
  • NETBIRD_HOST (opcional): El host de la API de Netbird (por defecto es api.netbird.io)

Características

Este servidor utiliza la API de Netbird para proporcionar a los LLM información sobre la red Netbird. Actualmente es un mapeo 1:1 de recursos seleccionados de la API Netbird de sólo lectura a herramientas.

  • Utiliza la API de Netbird para acceder a la configuración y el estado
  • Punto final de API configurable
  • Autenticación segura basada en token para la API Netbird

Herramientas

HerramientaDescripciónAPI Netbird
list_netbird_peersTodos los peersListar todos los Peers
list_netbird_port_allocationsTodos los puertos de entrada para peerIdListar todos los puertos asignados
list_netbird_groupsTodos los gruposListar todos los grupos
list_netbird_policiesTodas las políticasListar todas las Políticas
list_netbird_comprobaciones_de_posturaTodas las comprobaciones de posturaListar todas las comprobaciones de postura
list_netbird_networksTodas las redesListar todas las redes
list_netbird_nameserversTodos los grupos de servidores de nombresListar todos los grupos de servidores de nombres

Añadir herramientas

Para añadir nuevas herramientas

  1. Cree un nuevo archivo en tools (por ejemplo, tools/users.go), posiblemente utilice código existente como plantilla
  2. Añada la ruta API y las respuestas específicas al nuevo archivo
  3. Añada la herramienta a func newServer() en cmd/main.go

Uso

  1. Obtenga su token API de Netbird desde la consola de gestión de Netbird.

  2. Instale el binario mcp-netbird utilizando uno de los métodos de instalación anteriores. Asegúrese de que el binario está en su PATH.

  3. Añade la configuración del servidor a tu archivo de configuración del cliente. Por ejemplo, para Codeium Windsurf añada lo siguiente a ~/.codeium/windsurf/mcp_config.json:

    { "mcpServers": { "netbird": { "command": "mcp-netbird", "args": [], "env": { "NETBIRD_API_TOKEN": "<your-api-token>" } } }

Para más información sobre cómo añadir una configuración similar a Claude Desktop, vea aquí.

Nota: si ve algo parecido a [netbird] [error] spawn mcp-netbird ENOENT en los registros de Claude Desktop, debe especificar la ruta completa a mcp-netbird. En macOS los registros de Claude están en ~/Library/Logs/Claude.

  1. Intenta hacer preguntas del tipo "¿Puedes explicarme mis pares, grupos y políticas de Netbird?"

claude-desktop-mcp-netbird

Docker

Construye una imagen y etiquétala:

docker build -t mcp-netbird-sse:v1 -f Dockerfile.sse

Ejecute la imagen:

docker run --name mcp-netbird -p 8001:8001 -e NETBIRD_API_TOKEN=<su-api-token> mcp-netbird-sse:v1

Colmena de herramientas

ToolHive (thv) es una utilidad ligera diseñada para simplificar el despliegue y la gestión de servidores MCP.

Puede utilizar ToolHive para desplegar y ejecutar Netbird MCP de la siguiente manera:

  1. Instale thv como se describe en ToolHive README.

  2. Añada el token de la API de Netbird a los secretos de thv:

thv secret set netbird
  1. Construir una imagen SSE como se describe en la sección anterior Docker

  2. Inicie Netbird MCP con thv run en el puerto 8080:

thv run --secret netbird,target=NETBIRD_API_TOKEN --transport sse --name thv-mcp-netbird --port 8080 --target-port 8001 mcp-netbird-sse:v1
  1. Si desea detener el servidor, utilice
thv stop thv-mcp-netbird

Desarrollo

¡Las contribuciones son bienvenidas! Por favor, abre un issue o envía un pull request si tienes alguna sugerencia o mejora.

Este proyecto está escrito en Go. Instala Go siguiendo las instrucciones de tu plataforma.

Para ejecutar el servidor manualmente, utilice

export NETBIRD_API_TOKEN=tu-token && \ go run cmd/mcp-netbird/main.go

O en modo SSE

export NETBIRD_API_TOKEN=su-token && \ go run cmd/mcp-netbird/main.go --transport sse --sse-address :8001

Depuración

MCP Inspector es una herramienta interactiva para desarrolladores que permite probar y depurar servidores MCP. Más información aquí.

He aquí cómo iniciar el Inspector MCP:

export NETBIRD_API_TOKEN=su-token && \ npx @modelcontextprotocol/inspector

El Servidor Netbird MCP puede probarse con el tipo de transporte stdio o SSE. Para stdio, especifique la ruta completa a mcp-netbird en la interfaz de usuario.

Probando

TODO: añadir más pruebas

Análisis

Para limpiar el código, ejecute

make lint

Licencia

Este proyecto está licenciado bajo la Licencia Apache, Versión 2.0.

Este proyecto incluye software desarrollado en Grafana Labs(https://grafana.com/).

Este proyecto incluye software desarrollado en Mark III Labs(https://github.com/mark3labs/mcp-go).

Relacionados en Servicio en la nube - MCP Servers Seguros

ServidorResumenAcciones
AWS MCPUn servidor de protocolo de contexto de modelo (MCP) que permite a los asistentes de IA como Claude...Ver
MoteadoUn servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con Speckle, el centro de dato...Ver
Espacios para abrazar[!TIP]Ver
KubernetesVer
Servidor MCP KubernetesVer
Demostración de geolocalizaciónEste proyecto demuestra cómo utilizar las funciones de EdgeOne Pages para recuperar información de g...Ver