SSR/128T 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., "@SSR/128T MCP Servershow me all active alarms"
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.
SSR/128T MCP Server
A Model Context Protocol (MCP) server for the Juniper SSR/128T Networking Platform, enabling AI-powered AIOps management through LLM clients like Claude Desktop and VSCode.
This server provides a bridge between MCP-compatible clients and the SSR Conductor REST API, allowing natural language driven monitoring, visualization, and troubleshooting of your SSR network.
Features
š 22 MCP Tools covering router management, alarms, traffic analysis, routing tables, interfaces, metrics, and audit logs
š Automatic Authentication with token management and auto-refresh
š Dual Transport ā stdio (local) and streamable-http (remote/deployment)
š³ Docker Support ā ready for containerized deployment on any Linux platform
ā” Async HTTP client based on
httpxfor high-performance concurrent requestsš”ļø Self-Signed Certificate Support for lab and testing environments
Related MCP server: network-mcp
Quick Start
Prerequisites
Python 3.10+ and pip
Access to an SSR Conductor (v6.x+)
Installation
git clone https://github.com/lotsonlu/ssr-mcp-server.git
cd ssr-mcp-server
pip install -r requirements.txtConfiguration
Set environment variables:
export SSR_BASE_URL="https://<your-conductor-ip>"
export SSR_USERNAME="admin"
export SSR_PASSWORD="your-password"Or create a config.json file (copy from config-template.json):
{
"conductor": {
"base_url": "https://172.27.69.57",
"username": "admin",
"password": "your-password",
"timeout": 120,
"verify_ssl": false
}
}Run with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"ssr-mcp": {
"type": "stdio",
"command": "python3",
"args": ["/path/to/ssr_mcp.py", "-f", "/path/to/config.json", "-t", "stdio"]
}
}
}Run with VSCode
Add to your .mcp.json:
{
"mcpServers": {
"ssr-mcp": {
"command": "python3",
"args": ["/path/to/ssr_mcp.py", "-f", "/path/to/config.json", "-t", "stdio"]
}
}
}Run Standalone (HTTP mode)
python ssr_mcp.py -H 0.0.0.0 -p 8080 -t streamable-httpDocker
docker build -t ssr-mcp-server .
docker run --rm -i \
-e SSR_BASE_URL="https://<conductor-ip>" \
-e SSR_USERNAME="admin" \
-e SSR_PASSWORD="your-password" \
ssr-mcp-server -t stdioAvailable Tools
Router & System (4)
Tool | Description |
| List all routers, status, and basic info |
| Detailed info for a specific router |
| List all nodes for a router |
| Conductor system info, version, uptime |
Alarms & Status (4)
Tool | Description |
| All current alarms (with filters) |
| Router-specific alarms |
| Node-specific alarms |
| Node operational status & process health |
Traffic & Routing (7)
Tool | Description |
| Active flow/session table |
| Forwarding Information Base (FIB) |
| Routing Information Base (RIB) |
| Top N sessions by bandwidth |
| Top N traffic sources |
| Network adjacencies/peers |
| FIB lookup by packet headers |
Interfaces & Services (3)
Tool | Description |
| Physical device interfaces |
| Logical/L3 network interfaces |
| Configured services & service classes |
Metrics & Analytics (3)
Tool | Description |
| Timeseries performance metrics |
| Aggregated analytics queries |
| Historical audit & configuration logs |
Version (1)
Tool | Description |
| SSR software version per node |
Architecture
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Claude Desktop / VSCode / Other MCP Clients ā
āāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā stdio / streamable-http
āāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā SSR MCP Server (ssr_mcp_server) ā
ā āāā server.py MCP Server & Tool Defs ā
ā āāā ssr_client.py REST API Client ā
ā āāā tools/ 22 Tool Handlers ā
ā āāā utils/ Config Management ā
āāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā REST API (HTTPS)
āāāāāāāāāāāāāāāāāāāā¼āāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā SSR Conductor ā
ā /router, /alarm, /traffic, /stats, etc. ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāProject Structure
ssr-mcp-server/
āāā ssr_mcp.py # CLI entry point
āāā ssr_mcp_server/ # Core package
ā āāā server.py # MCP server & 22 tool definitions
ā āāā ssr_client.py # REST API client (auth, HTTP, retry)
ā āāā tools/ # Tool handler modules
ā ā āāā router_tools.py # Router & system tools
ā ā āāā alarm_tools.py # Alarm & status tools
ā ā āāā traffic_tools.py # Traffic & routing tools
ā ā āāā interface_tools.py # Interface & service tools
ā ā āāā metrics_tools.py # Metrics & analytics tools
ā ā āāā audit_tools.py # Audit & version tools
ā āāā utils/
ā āāā config.py # Configuration management
āāā pyproject.toml # Project metadata & dependencies
āāā requirements.txt # Pip dependencies
āāā Dockerfile # Docker build
āāā Makefile # Dev/build helpers
āāā config-template.json # Configuration template
āāā LICENSEEnvironment Variables
Variable | Default | Description |
|
| SSR Conductor URL |
|
| API username |
| ā | API password (required) |
|
| API timeout in seconds |
|
| Enable SSL verification |
Development
# Install dependencies
pip install -r requirements.txt
# Run with stdio transport
python ssr_mcp.py -t stdio
# Run tests
python -m pytest tests/
# Build Docker image
docker build -t ssr-mcp-server .License
Acknowledgments
This project is inspired by and follows patterns from the official Juniper Junos MCP Server.
This server cannot be deployed
Maintenance
Related MCP Connectors
- mcpOAuthcom.vibgrate
Query your team's drift, vulnerability, and upgrade data from any AI assistant. OAuth 2.1, 51 tools.
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
Agent-native security, trust, reliability, data and procurement tools for AI workflows.
16 AI-native tools with dual SSE + streamable-http transport. Free tier available.
Related MCP Servers
AlicenseNot gradedqualityAmaintenanceEnables LLM interactions with Juniper Junos network devices, allowing natural language access to device configuration, monitoring, and management operations through secure SSH connections.108Apache 2.0- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with direct access to multi-vendor network devices for tasks like configuration management, health checks, and topology discovery through 35 specialized tools. It enables natural language control over platforms including Cisco, Juniper, and Nokia using SSH, NETCONF, and SNMP protocols.11MIT
- FlicenseNot gradedqualityDmaintenanceEnables natural language management of Juniper Apstra datacenter networks, including blueprints, virtual networks, connectivity templates, and deployment.2-
- AlicenseAqualityCmaintenanceEnables AI agents to securely access and query Prisma SD-WAN operational data for inventory, health checks, topology analysis, and policy verification through natural language.275MIT