sheridan-lab-jack
sheridan-lab-jack — Servidor MCP de red
Un servidor del Protocolo de Contexto de Modelo (MCP) que expone 6 herramientas de gestión de red para un dispositivo Nokia SR Linux ejecutándose en ContainerLab. Diseñado para ser utilizado con Claude Code como agente de IA.
Arquitectura
┌──────────────┐ MCP (stdio) ┌──────────────────┐ SSH ┌──────────────┐
│ Claude Code │ ◄──────────────────► │ sheridan-lab-jack │ ◄──────────► │ Nokia SR │
│ (AI Agent) │ │ (MCP Server) │ │ Linux │
└──────────────┘ └──────────────────┘ │ (ContainerLab)│
└──────────────┘Herramientas (6 en total)
Herramientas de lectura (5)
Herramienta | Descripción |
| Devuelve el nombre de host, la versión de software, el tipo de chasis y el tiempo de actividad |
| Enumera todas las interfaces con estado administrativo/operativo y direcciones IP |
| Muestra la tabla de enrutamiento completa |
| Recupera la configuración en ejecución (completa o por sección) |
| Enumera todas las VRF/instancias de red y sus interfaces |
Herramientas de escritura (1)
Herramienta | Descripción |
| Establece la dirección IP, el estado administrativo y la descripción en una interfaz |
Requisitos previos
Linux (se recomienda Ubuntu 20.04+)
Docker (20.10+)
ContainerLab (0.44+)
Python 3.10+
Claude Code CLI (requiere suscripción a Anthropic Pro)
sshpass (
sudo apt install sshpass)
Inicio rápido
1. Instalar ContainerLab
sudo bash -c "$(curl -sL https://get.containerlab.dev)"2. Iniciar el laboratorio
cd sheridan-lab-jack
sudo containerlab deploy --topo topology.ymlEspere unos 60 segundos a que SR Linux arranque por completo. Verifique con:
sudo docker ps # should show clab-sheridan-lab-jack-srl running3. Instalar dependencias de Python
pip install -r requirements.txt
sudo apt install sshpass -y4. Probar la conectividad SSH
sshpass -p 'NokiaSrl1!' ssh -o StrictHostKeyChecking=no admin@clab-sheridan-lab-jack-srl -- "info from state /system information"5. Conectar Claude Code
cd sheridan-lab-jack
claudeClaude Code lee automáticamente .mcp.json desde el directorio del proyecto. Una vez dentro de Claude Code, verifique con:
> use get_device_info to check the deviceVariables de entorno
Variable | Predeterminado | Descripción |
|
| Nombre de host o IP del contenedor SR Linux |
|
| Nombre de usuario SSH |
|
| Contraseña SSH |
Las credenciales nunca están codificadas en el código del servidor. Se leen de las variables de entorno en tiempo de ejecución y se pasan a través de .mcp.json.
Validación de entrada
Todas las herramientas de escritura validan las entradas antes de la ejecución:
Direcciones IP: Validación mediante expresión regular de decimales con puntos
Longitudes de prefijo: Verificación de rango (0-32)
Nombres de interfaz: Coincidencia de patrones para el formato de SR Linux (
ethernet-X/Y,lo0,mgmt0,system0)Nombres de host: Alfanuméricos + guiones que cumplen con RFC, 1-63 caracteres
Descripciones: Alfanuméricas con puntuación básica, máx. 80 caracteres
Nombres de sección de configuración: Solo alfanuméricos y guiones
Limpieza
sudo containerlab destroy --topo topology.ymlEjemplo de sesión de Claude Code
You: get device info
Claude: [calls get_device_info] The device is a Nokia SR Linux running version...
You: show me all interfaces
Claude: [calls get_interfaces] Here are the interfaces...
You: configure ethernet-1/1 with IP 192.168.50.1/24 and description "uplink"
Claude: [calls configure_interface] Successfully configured ethernet-1/1...
You: verify the change by showing interfaces again
Claude: [calls get_interfaces] Confirmed — ethernet-1/1 now has IP 192.168.50.1/24...Licencia
MIT
This server cannot be installed
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/JackG27/sheridan-lab-jack'
If you have feedback or need assistance with the MCP directory API, please join our Discord server