POX MCP Server
Un servidor MCP para el controlador SDN POX, que permite el control, la gestión y el análisis de redes utilizando Python y OpenFlow.
Documentación
POX MCP Server
Resumen
Una implementación de servidor de Model Context Protocol (MCP) que proporciona capacidades de control y gestión de red a través del controlador POX SDN. Este servidor permite la programación de red basada en Python, la gestión de dispositivos OpenFlow y el análisis de red automatizado a través de la arquitectura modular de POX. Perfecto para entornos educativos, prototipado de redes e investigación en SDN.
Componentes
Recursos
El servidor expone dos recursos dinámicos:
pox://network-config: Una nota completa de configuración del controlador POX- Realiza un seguimiento de los componentes POX activos y sus configuraciones
- Registra la topología de red y las reglas de flujo
- Mantiene la información de red descubierta
pox://topology: Vista de topología de red en tiempo real- Muestra los datapaths OpenFlow activos (conmutadores)
- Mapea ubicaciones y conexiones de hosts
- Muestra el estado de los enlaces y los mapeos de puertos
Prompts
El servidor proporciona tres prompts especializados:
-
pox-network-manager: Prompt interactivo para la gestión del controlador POX- Argumento requerido:
topic- El aspecto de control de red en el que centrarse - Ayuda a configurar componentes y módulos de POX
- Guía a través de la implementación de políticas de red
- Se integra con la nota de configuración de red
- Argumento requerido:
-
simple-hub: Implementación básica de hub L2 usando POX- Argumento requerido:
dpid- El identificador de datapath - Demuestra la programación basada en eventos de POX
- Muestra el manejo básico de paquetes y la inundación
- Explica los mecanismos centrales de POX
- Argumento requerido:
-
learning-switch: Implementación de conmutador de aprendizaje L2- Argumento requerido:
dpid- El identificador de datapath - Muestra la gestión de tablas de POX
- Implementa el aprendizaje y reenvío MAC
- Demuestra las capacidades de manejo de paquetes de POX
- Argumento requerido:
Herramientas
El servidor ofrece cinco herramientas principales:
Herramientas de Gestión de Datapath
-
get_switches- Listar todos los datapaths OpenFlow conectados
- No se requiere entrada
- Devuelve: Arreglo de conmutadores activos controlados por POX
- Incluye estado de conexión y capacidades
-
get_switch_desc- Obtener información detallada del datapath
- Entrada:
dpid(string): Identificador de datapath
- Devuelve: Detalles y características del conmutador gestionado por POX
Herramientas de Gestión de Flujo
-
get_flow_stats- Recuperar estadísticas de flujo de POX
- Entrada:
dpid(string): Identificador de datapathmatch(object, opcional): Estructura de coincidencia de POXtable_id(string, opcional): ID de tabla OpenFlowout_port(string, opcional): Filtro de puerto de salida
- Devuelve: Estadísticas de flujo de POX incluyendo contadores de paquetes
-
set_table- Configurar tablas de flujo de POX
- Entrada:
dpid(string): Identificador de datapathflows(array): Especificaciones de flujo de POX
- Devuelve: Confirmación de actualización de la tabla de flujo
Herramientas de Análisis
append_insight- Agregar información de red a la nota de configuración de POX
- Entrada:
insight(string): Observación o análisis de red
- Devuelve: Confirmación de adición de información
- Actualiza el recurso pox://network-config
Uso con Claude Desktop
uv
{
"mcpServers": {
"pox": {
"command": "uv",
"args": [
"--directory",
"parent_of_servers_repo/servers/src/mcp_server_pox",
"run",
"server.py"
],
"env": {
"POX_SERVER_URL": "http://localhost:8000"
}
}
}
}
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar pull requests, reportar errores o sugerir nuevas funciones.