EC

e-conners-lab/mcp-demo-lab

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

12 stars 6 forks 质量 71 趋势 19MIT

MCP server giving AI assistants direct access to network infrastructure. 35 tools for multi-vendor device management, routing, config backup/rollback, SNMP, NETCONF, compliance checks, and subnet/MTU...

概览

35 MCP tools, multi-vendor, one interface. Stop writing Netmiko scripts. Connect Claude, ChatGPT, or any MCP-compatible AI to your routers, switches, and firewalls — and let it run show commands, check health, calculate subnets, discover topology, and manage configs through natural language. An MCP (Model Context Protocol) server that gives AI assistants real-time access to network devices. Built for network engineers who want to automate without writing boilerplate. - Cisco IOS-XE (routers, switches) - Nokia SR Linux - FRRouting (FRR) - Juniper Junos - Aruba AOS-CX - Linux hosts Add to ~/Library/Application Support/Claude/claude_desktop_config.json: Restart Claude Desktop. You now have 35 network tools available. All configuration is via environment variables (or .env file): - Python 3.11+ - Network devices reachable via SSH/NETCONF/SNMP - Claude Desktop or any MCP-compatible client

README

以下为原文 README 节选,完整内容请查看原文。

network-mcp

Give AI direct access to your network devices. 35 MCP tools, multi-vendor, one interface.

Stop writing Netmiko scripts. Connect Claude, ChatGPT, or any MCP-compatible AI to your routers, switches, and firewalls — and let it run show commands, check health, calculate subnets, discover topology, and manage configs through natural language.

You: "Check the health of all my devices"
Claude: [calls health_check_all] → 6 devices healthy, Switch-R2 has 2 interfaces down

What is this?

An MCP (Model Context Protocol) server that gives AI assistants real-time access to network devices. Built for network engineers who want to automate without writing boilerplate.

Supported platforms:

  • Cisco IOS-XE (routers, switches)
  • Nokia SR Linux
  • FRRouting (FRR)
  • Juniper Junos
  • Aruba AOS-CX
  • Linux hosts

Quick Start

1. Install

git clone https://github.com/E-Conners-Lab/MCP-DEMO-LAB.git
cd network-mcp
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

2. Configure devices

cp .env.example .env
# Edit .env with your device IPs and credentials

3. Try it instantly (no lab required)

# Demo mode returns realistic mock data — no devices needed
DEMO_MODE=true python network_mcp_server.py

4. Connect to Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "network": {
      "command": "/path/to/network-mcp/.venv/bin/python",
      "args": ["/path/to/network-mcp/network_mcp_server.py"]
    }
  }
}

Restart Claude Desktop. You now have 35 network tools available.

5. Try with a real lab (5 minutes)

# Spin up 2 FRR routers with containerlab
cd quickstart && sudo containerlab deploy -t topology.clab.yml

Tools

Device Operations

Tool Description
get_devices List all devices in inventory
send_command Run show commands on any device
send_config Push configuration changes
health_check Check device health (CPU, memory, interfaces)
health_check_all Health check all devices in parallel
backup_config Backup running configuration
compare_configs Diff two config backups
rollback_config Restore a previous config

Network Intelligence

Tool Description
discover_topology LLDP-based topology discovery
get_routing_table View routing tables
get_neighbors BGP/OSPF neighbor status
get_arp_table ARP table lookup
get_mac_table MAC address table
ping_sweep Sweep a subnet for reachable hosts
traceroute Trace path to destination

Calculators (no devices needed)

Tool Description
calculate_tunnel_mtu Optimal MTU/MSS for VPN tunnels
calculate_subnet_info Subnet details from CIDR notation
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "network": { "command": "/path/to/network-mcp/.venv/bin/python", "args": ["/path/to/network-mcp/network_mcp_server.py"] } } }