MCP Server Junos (Juniper Devices)
@dpajin
About MCP Server Junos (Juniper Devices)
MCP server for Juniper devices running Junos. Tools for executing operational commands and changing device configuration
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"junos": {
"id": "junos",
"name": "Junos MCP Server",
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"http://127.0.0.1:10008/sse"
],
"url": "http://127.0.0.1:10008/sse",
"transport": "sse",
"env": {
"MCP_SERVER_JUNOS_HOST": "127.0.0.1",
"MCP_SERVER_JUNOS_PORT": "10008",
"MCP_SERVER_JUNOS_TRANSPORT": "streamable-http",
"MCP_SERVER_JUNOS_ACCESS_DEFAULT_USER": "admin",
"MCP_SERVER_JUNOS_ACCESS_DEFAULT_PASSWD": "admin@123",
"MCP_SERVER_JUNOS_ACCESS_DEFAULT_PORT": "830",
"LOG_LEVEL": "INFO"
}
}
}
}Tools
4Retrieve basic information about the device, such as OS version and model.
Execute any specified show command on the device and return the output. It can be used to retrieve device configuration and execute ping command.
Load and commit configuration changes to the device in both `set` and `junos` (curly brackets) formats.
Retrieve the list of **locally configured** devices on the MCP server. The list include **device name** and **IP address** for remote access.
Overview
What is MCP Server Junos (Juniper Devices)?
MCP Server Junos (Juniper Devices) provides MCP tools for viewing operational state and changing configuration of Juniper Networks devices running the Junos operating system. It uses Juniper’s junos-eznc Python SDK and FastMCP.
How to use MCP Server Junos (Juniper Devices)?
Clone the repository, install dependencies with pip install -r requirements.txt, rename config.example.yml to config.yml, and run python mcp_server_junos.py. The server exposes an HTTP SSE interface on a configurable host and port (default http://127.0.0.1:10008/sse). Alternatively, run as a Docker container with environment variables or a mounted configuration file.
Key features of MCP Server Junos (Juniper Devices)
- Retrieve device facts like OS version and model.
- Execute any
showcommand, including configuration and ping. - Load and commit configuration changes in
setorjunosformats. - List locally configured devices with names and IPs.
- Configure via
config.ymlfile or environment variables. - Run standalone or as a Docker container.
Use cases of MCP Server Junos (Juniper Devices)
- Automate retrieval of Junos device operational state and inventory.
- Remotely execute
showcommands on multiple Juniper devices. - Push configuration changes (set or curly‑bracket format) to devices.
- Integrate MCP‑compatible clients (e.g., Github Copilot, VS Code) with Junos.
FAQ from MCP Server Junos (Juniper Devices)
How do I configure device access?
Device access can be set in config.yml under the devices key, with host, user, passwd, and port. Alternatively, use environment variables like MCP_SERVER_JUNOS_ACCESS_DEFAULT_USER for default credentials.
What transport protocols are supported?
The server supports sse and streamable-http transport, configured via server_transport in the config or the MCP_SERVER_JUNOS_TRANSPORT environment variable.
Can I run this server without a configuration file?
Yes. When running as a Docker container, you can supply global access credentials via environment variables and omit the config file. Default credentials will be used for any device.
Which tools does the server expose?
Four tools: get_fact, show_command, apply_config, and list_devices. show_command can retrieve configuration and execute ping; apply_config accepts both set and junos formats.
What are the dependencies?
The server requires Python, junos-eznc, FastMCP,
More Other MCP servers
IDA Pro MCP
mrexodiaAI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
FastMCP v2 🚀
jlowin🚀 The fast, Pythonic way to build MCP servers and clients.
🚀 Model Context Protocol (MCP) Curriculum for Beginners
microsoftThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable,
Core Philosophy: Connect, Unify, Respond
mindsdbDelegate anything. It comes back done.
Awesome Mlops
visengerA curated list of references for MLOps
Comments