junos-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@junos-mcp-servershow interfaces brief on router01"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
junos-mcp-server
Read-only JUNOS troubleshooting MCP server. Discovers devices dynamically from
the SURF orchestrator's gNMI-targets endpoint and runs show commands only
over NETCONF (PyEZ). It has no configuration/write capability by design.
Tools
list_devices()— device names from the orchestrator.run_show_command(device, command)— runs ashowcommand; rejects anything else.
Related MCP server: network-mcp
Environment
Var | Required | Default | Purpose |
| yes¹ | — | orchestrator base URL, e.g. |
| yes¹ | — | Basic Auth user for the targets endpoint |
| yes¹ | — | Basic Auth password for the targets endpoint |
| yes | — | read-only device login user |
| yes | — | device login password |
| no |
| NETCONF port |
| no |
| development mode — serve |
| dev² |
| JSON list of node hostnames, e.g. |
¹ Not required when JUNOS_DEV_MODE is set. ² Required (non-empty) when JUNOS_DEV_MODE is set.
Development mode
Set JUNOS_DEV_MODE=1 and JUNOS_DEV_TARGETS to a JSON list of your own nodes
to bypass the orchestrator entirely — list_devices() then returns exactly that
list and run_show_command connects to those hostnames. SSH credentials are
still required; orchestrator/Basic-Auth vars are not.
JUNOS_DEV_MODE=1 JUNOS_DEV_TARGETS='["r1.lab.net","r2.lab.net"]' \
JUNOS_SSH_USER=ro JUNOS_SSH_PASSWORD=... uvx --from . junos-mcp-serverRun
uvx --from . junos-mcp-server # from a local checkout
uvx --from git+<repo-url> junos-mcp-server # from gitMCP client config (stdio)
{
"mcpServers": {
"junos": {
"command": "uvx",
"args": ["--from", "git+<repo-url>", "junos-mcp-server"],
"env": {
"ORCHESTRATOR_URL": "https://api.automation.surf.net",
"GNMIC_HTTP_BASIC_USER": "gnmic",
"GNMIC_HTTP_BASIC_PASSWORD": "...",
"JUNOS_SSH_USER": "...",
"JUNOS_SSH_PASSWORD": "..."
}
}
}
}Requires NETCONF enabled on devices (set system services netconf ssh).
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/workfloworchestrator/junos-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server