mcp-netmiko-server
by upa
An MCP server that enables LLMs to interact with your network devices via SSH (netmiko). It provides tools to list devices, send commands, and configure devices.
Last updated: N/A
What is mcp-netmiko-server?
The mcp-netmiko-server is an MCP (Message Control Protocol) server designed to facilitate interaction between Large Language Models (LLMs) and network devices. It leverages the Netmiko library to establish SSH connections and execute commands on network devices.
How to use mcp-netmiko-server?
- Clone the repository:
git clone https://github.com/upa/mcp-netmiko-server. 2. Create a TOML file (e.g.,my-devices.toml) listing your network devices and their connection details. 3. Run the server usinguv run --with mcp[cli] --with netmiko main.py my-devices.toml(for stdio) oruv run --with mcp[cli] --with netmiko main.py my-devices.toml --sse(for SSE server). 4. Configure your LLM to interact with the server using the provided tools.
Key features of mcp-netmiko-server
List network devices
Send commands to devices
Set configuration commands and commit/save
Supports multiple device types
Configuration via TOML file
Use cases of mcp-netmiko-server
Automated network configuration
Network device monitoring
Troubleshooting network issues
Integrating network devices with LLM-powered applications
Validating network state
FAQ from mcp-netmiko-server
What is Netmiko?
What is Netmiko?
Netmiko is a Python library that simplifies SSH connections to network devices.
What is a TOML file?
What is a TOML file?
TOML is a configuration file format that is easy to read due to its simple syntax.
How do I specify device credentials?
How do I specify device credentials?
Device credentials (username and password) can be specified in the TOML file, either globally in the [default] section or individually for each device.
Where can I find a list of supported device types?
Where can I find a list of supported device types?
See the Netmiko Supported Platforms documentation: https://ktbyers.github.io/netmiko/PLATFORMS.html
How do I run the server as an SSE server?
How do I run the server as an SSE server?
Use the --sse flag when running the server: uv run --with mcp[cli] --with netmiko main.py my-devices.toml --sse