junos-mcp-server
Click on "Deploy 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-server show 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: netmiko-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).
Available Tools
2 toolslist_devicesA
List JUNOS device names discovered from the orchestrator gNMI targets endpoint.
Inputs: no named parameters. Returns: result
run_show_commandA
Run a read-only JUNOS 'show' command on a device and return its text output.
Inputs: device (required), command (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one lists devices, the other runs a show command. There is no ambiguity or overlap between them.
Both tools follow the verb_noun pattern consistently: 'list_devices' and 'run_show_command'.
With only two tools, the server feels very minimal for managing JUNOS devices. It lacks essential operations like configuration or detailed device status beyond show commands.
The server covers only listing devices and running show commands. There are no CRUD operations, configuration management, or filtering capabilities, leaving significant gaps for typical device management tasks.
Maintenance
Related MCP Connectors
Read-only MCP access to a documented IT fleet: state, changes, posture. 15 tools.
Remote MCP for 1,500+ APIs. Vault-managed credentials; OAuth or API key. Search, load, and execute.
Read-only server insight: why a Linux server or K8s cluster is slow, failing or changed.
Cloud cost, inventory and governance on AWS/Azure/GCP. Read-only by default, optional scoped writes
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceEnables LLM interactions with Juniper Junos network devices, allowing natural language access to device configuration, monitoring, and management operations through secure SSH connections.112Apache 2.0- AlicenseAqualityDmaintenanceProvides read-only SSH access to network devices (routers, switches, firewalls) with command allow/deny policies, nt-templates output parsing, and an audit trail, enabling an AI agent to query device state securely.10MIT
- FlicenseNot gradedqualityDmaintenanceEnables read-only access to managed network devices over SSH or Telnet via MCP, allowing users to probe devices, retrieve redacted running or startup configs, gather facts and interfaces, back up multiple devices, and compare configs for drift or unsaved changes.-
- AlicenseNot gradedqualityBmaintenanceProvides read-only, multi-vendor network device interaction, configuration auditing against vendor-guide rules, and safe diffing of proposed changes for AI agents to inspect and analyze network infrastructure without any commit or write capability.1Apache 2.0