Nautobot MCP Server

Nautobot MCP Server

An integration that enables AI assistants to interact with network data through a standardized protocol, providing AI-ready tools and interfaces for network automation and management.

Category
Visit Server

README

Nautobot MCP

Nautobot Python License

This Nautobot app integrates the MCP (Model Context Protocol) server with Nautobot, providing AI-ready tools and interfaces for network automation and management.

Overview

Nautobot MCP enables AI assistants or applications to interact with your network data through a standardized protocol. The app runs an MCP server alongside Nautobot that exposes tools which can be used by AI systems.

https://modelcontextprotocol.io/introduction

Demo using Librechat - Connected to Nautobot MCP

https://github.com/user-attachments/assets/283d68c2-d35f-4506-b909-45c1850e7281

Installation

1. Install the package

pip install nautobot-mcp

2. Add to INSTALLED_APPS in your Nautobot configuration

# In your nautobot_config.py
PLUGINS = [
    "nautobot_mcp",
    # ... other plugins
]

3. Configuration

Configure the app through Nautobot's configuration system:

# In your nautobot_config.py
PLUGINS_CONFIG = {
    "nautobot_mcp": {
        "MCP_PORT": 8005,  # MCP server port
        "MCP_HOST": "0.0.0.0",  # Default is 0.0.0.0
        "MCP_CUSTOM_TOOLS_DIR": "/path/to/your/custom/tools",  # Directory for custom tools
        "MCP_LOAD_CORE_TOOLS": False,  # Load built-in tools
    },
}

4. Run nautobot post upgrade

nautobot-server post_upgrade

Custom Tools

You can create your own custom tools by defining Python functions in the directory specified in MCP_CUSTOM_TOOLS_DIR.

Example custom tool:

# In /path/to/your/custom/tools/my_tools.py

def some_tool(param1: str, param2: str) -> dict:
    """Some tool description"""
    # Your implementation here
    return {"result": f"Tool result for {param1} and {param2}"}

The MCP server will automatically discover and register all function-based tools in the specified directory.

Deployment Options

Method 1: Manual Start

You can start the MCP server manually:

nautobot-server start_mcp_server

Method 2: Systemd Service (Recommended for Production)

Create a systemd service file at /etc/systemd/system/nautobot-mcp.service:

[Unit]
Description=Nautobot MCP Server
After=network-online.target
Wants=network-online.target

[Service]
User=nautobot
Group=nautobot
WorkingDirectory=/opt/nautobot
ExecStart=/opt/nautobot/venv/bin/nautobot-server start_mcp_server
Restart=on-failure
RestartSec=30
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Then enable and start the service:

sudo systemctl daemon-reload
sudo systemctl enable --now nautobot-mcp.service

Viewing Available Tools

You can view all registered tools in the Nautobot web interface at:

https://your-nautobot-server/plugins/nautobot-mcp/tools/

This page shows all available tools, their descriptions, module paths, and parameter specifications.

Tools

TODO

  • [ ] Add a way to route tool execution to a specific Nautobot worker.
  • [ ] Enhance the tool view in the Nautobot web interface to show tool usage statistics.
  • [ ] Create a docker container to run the MCP server.
  • [ ] Add tests.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured