返回市场
MCP网络鸟服务器

MCP网络鸟服务器

作者:aantti41 星标更新:2025-04-16

项目介绍

Netbird MCP Server

一个用于NetbirdModel Context Protocol (MCP)服务器。

该项目源自Grafana Labs的MCP Server for Grafana,并采用相同的Apache License 2.0许可证。

它还使用了Mark III Labs的MCP Go

注意:此项目仍在开发中。

安装

从源码安装

克隆仓库

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

构建和安装

cd mcp-netbird && \
make install

从GitHub安装

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

通过Smithery安装

smithery badge

要通过Smithery自动安装Netbird MCP Server到Claude Desktop:

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

配置

服务器需要以下环境变量:

  • NETBIRD_API_TOKEN:您的Netbird API令牌
  • NETBIRD_HOST(可选):Netbird API主机(默认是api.netbird.io

功能

该服务器使用Netbird API提供有关Netbird网络的信息。目前,它是对选定的只读Netbird API资源的一对一映射。

  • 使用Netbird API访问配置和状态
  • 可配置的API端点
  • 基于令牌的安全认证方式

工具

工具描述Netbird API
list_netbird_peers所有对等节点列出所有对等节点
list_netbird_port_allocations对应peerId的所有入口端口列出所有端口分配
list_netbird_groups所有组列出所有组
list_netbird_policies所有策略列出所有策略
list_netbird_posture_checks所有姿态检查列出所有姿态检查
list_netbird_networks所有网络列出所有网络
list_netbird_nameservers所有名服务器组列出所有名服务器组

添加工具

要添加新工具:

  1. tools目录下创建一个新文件(例如,tools/users.go),可能需要使用现有代码作为模板。
  2. 向新文件添加API路由和响应细节。
  3. 将工具添加到cmd/main.go中的func newServer()函数。

使用方法

  1. 从Netbird管理控制台获取您的Netbird API令牌

  2. 使用上述任一安装方法安装mcp-netbird二进制文件,并确保该二进制文件在您的PATH中。

  3. 将服务器配置添加到客户端配置文件中。例如,对于Codeium Windsurf,在~/.codeium/windsurf/mcp_config.json中添加如下内容:

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

关于如何在Claude Desktop上添加类似配置,请参阅此处

注意:如果在Claude Desktop日志中看到类似于[netbird] [error] spawn mcp-netbird ENOENT的消息,则需要指定mcp-netbird的完整路径。在macOS上,Claude日志位于~/Library/Logs/Claude

  1. 尝试询问类似“你能解释一下我的Netbird对等节点、组和策略吗?”的问题。

claude-desktop-mcp-netbird

Docker

构建镜像并打标签:

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

运行镜像:

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

ToolHive

ToolHive(thv)是一个轻量级工具,旨在简化MCP服务器的部署和管理。

您可以使用ToolHive来部署和运行Netbird MCP,步骤如下:

  1. 按照ToolHive README中的说明安装thv
  2. 将Netbird API令牌添加到thv密钥中:
thv secret set netbird
  1. 按照Docker部分中的说明构建一个SSE镜像。
  2. 使用thv run在8080端口启动Netbird MCP:
thv run --secret netbird,target=NETBIRD_API_TOKEN --transport sse --name thv-mcp-netbird --port 8080 --target-port 8001 mcp-netbird-sse:v1
  1. 当您想要停止服务器时,使用:
thv stop thv-mcp-netbird

开发

欢迎贡献!如果您有任何建议或改进,请打开一个issue或提交pull request。

此项目用Go编写。按照您的平台说明安装Go。

要手动运行服务器,使用:

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

或者在SSE模式下:

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

调试

MCP Inspector 是一个交互式开发者工具,用于测试和调试MCP服务器。更多详情请参阅这里

以下是启动MCP Inspector的方法:

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

然后可以使用stdioSSE传输类型测试Netbird MCP Server。对于stdio,请在UI中指定mcp-netbird的完整路径。

测试

TODO: 添加更多测试

代码检查

要检查代码,运行:

make lint

许可证

本项目根据Apache License, Version 2.0许可。

本项目包括由Grafana Labs(https://grafana.com/)开发的软件。

本项目包括由Mark III Labs(https://github.com/mark3labs/mcp-go)开发的软件。