mcp-netbird

by aantti
Verified

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.

Integrations

  • Provides installation source for the MCP server package.

  • The project is derived from the MCP Server for Grafana, though it doesn't provide Grafana-specific functionality.

Netbird MCP Server

A Model Context Protocol (MCP) server for Netbird.

This project is derived from the MCP Server for Grafana by Grafana Labs and is licensed under the same Apache License 2.0.

Note: this project is still in development.

Installing from source

Clone the repository

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

Build and install

cd mcp-netbird && \ make install

Installing from GitHub

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

Configuration

The server requires the following environment variables:

  • NETBIRD_API_TOKEN: Your Netbird API token
  • NETBIRD_HOST (optional): The Netbird API host (default is api.netbird.io)

Features

  • List Netbird peers with detailed information
    • Connected status
    • Location information
    • System details
    • Group membership
  • Configurable API endpoint
  • Secure token-based authentication

Tools

ToolCategoryDescription
list_netbird_peersPeersList all peers in your Netbird network
list_netbird_groupsGroupsList all groups in your Netbird network
list_netbird_policiesPoliciesList all policies in your Netbird network

Usage

  1. Get your Netbird API token from the Netbird management console.
  2. Install the mcp-netbird binary using one of the installation methods above. Make sure the binary is in your PATH.
  3. Add the server configuration to your client configuration file. E.g., for Codeium Windsurf add the following to ~/.codeium/windsurf/mcp_config.json:
    { "mcpServers": { "netbird": { "command": "mcp-netbird", "args": [], "env": { "NETBIRD_API_TOKEN": "<your-api-token>" } } } }

For more information on how to add a similar configuration to Claude Desktop, see here.

Note: if you see something along the lines of [netbird] [error] spawn mcp-netbird ENOENT in Claude Desktop logs, you need to specify the full path to mcp-netbird. On macOS Claude Logs are in ~/Library/Logs/Claude.

  1. Try asking questions along the lines of "Can you explain my Netbird peers, groups and policies to me?"

Development

Contributions are welcome! Please open an issue or submit a pull request if you have any suggestions or improvements.

This project is written in Go. Install Go following the instructions for your platform.

To run the server manually, use:

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

Or in SSE mode:

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

Debugging

The MCP Inspector is an interactive developer tool for testing and debugging MCP servers. Read more about it here.

Here's how to start the MCP Inspector:

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

Netbird MCP Server can then be tested with either stdio or SSE transport type.

Testing

TODO: add tests

Linting

To lint the code, run:

make lint

License

This project is licensed under the Apache License, Version 2.0.

This project includes software developed at Grafana Labs (https://grafana.com/).

-
security - not tested
A
license - permissive license
-
quality - not tested

MCP Server for Netbird

  1. Installing from source
    1. Clone the repository
    2. Build and install
  2. Installing from GitHub
    1. Configuration
      1. Features
        1. Tools
      2. Usage
        1. Development
          1. Debugging
          2. Testing
          3. Linting
        2. License