Skip to main content
Glama

Nautobot MCP Server

by gt732

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

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.

-
security - not tested
F
license - not found
-
quality - not tested

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.

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.

  1. Overview
    1. Demo using Librechat - Connected to Nautobot MCP
      1. Installation
        1. Install the package
        2. Add to INSTALLED_APPS in your Nautobot configuration
        3. Configuration
        4. Run nautobot post upgrade
      2. Custom Tools
        1. Deployment Options
          1. Method 1: Manual Start
          2. Method 2: Systemd Service (Recommended for Production)
        2. Viewing Available Tools
          1. TODO
            1. License

              Related MCP Servers

              • -
                security
                A
                license
                -
                quality
                Enables AI assistants to perform network scanning operations using NMAP, offering a standardized interface for network analysis and security assessments through AI conversations.
                Last updated -
                11
                3
                JavaScript
                MIT License
              • -
                security
                F
                license
                -
                quality
                A comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.
                Last updated -
                16
                TypeScript
              • -
                security
                A
                license
                -
                quality
                A Model Context Protocol server that allows AI assistants to invoke and interact with Integrator automation workflows through an API connection.
                Last updated -
                TypeScript
                MIT License
              • A
                security
                A
                license
                A
                quality
                Enables AI assistants to discover, retrieve details about, and manage MCP (Model Context Protocol) servers that provide additional tools and capabilities on demand.
                Last updated -
                4
                724
                1
                JavaScript
                AGPL 3.0
                • Linux
                • Apple

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/gt732/nautobot-app-mcp'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server