Cisco ACI MCP Server
Un servidor MCP completo para configurar y gestionar infraestructuras Cisco ACI (Application Centric Infrastructure) a través de la API REST de APIC.
Documentación
Servidor ACI Model Context Protocol (MCP)
Un servidor MCP integral para configurar y gestionar fabrics de Cisco ACI (Application Centric Infrastructure) a través de la API REST de APIC.
Descripción general
Este servidor MCP proporciona más de 35 herramientas para la gestión completa del fabric ACI, incluyendo:
- Gestión de Tenants: Crear, listar, obtener, actualizar y eliminar tenants
- Perfiles de Aplicación: Gestionar perfiles de aplicación dentro de los tenants
- Grupos de Endpoints (EPGs): Configurar y gestionar grupos de endpoints
- Dominios de Bridge: Crear y gestionar dominios de Capa 2
- VRFs: Gestionar instancias de Virtual Routing and Forwarding
- Contratos: Definir y gestionar políticas de seguridad
- Monitoreo de Salud: Monitorear la salud y fallos del fabric
- Gestión de Nodos: Gestionar nodos e interfaces del fabric
Instalación
Requisitos previos
- Node.js 18+ y npm
- Acceso a un controlador Cisco APIC
- Credenciales APIC válidas (usuario/contraseña o certificado)
Configuración
-
Clonar e Instalar:
cd aci-mcp-server npm install -
Configurar Autenticación:
Opción A: Variables de Entorno
cp .env.example .env # Edit .env with your APIC details export ACI_APIC_URL="https://your-apic.domain.com" export ACI_USERNAME="admin" export ACI_PASSWORD="your_password"Opción B: Archivos de Configuración
cp aci-config.json.example aci-config.json # Edit aci-config.json with your settingsOpción C: Autenticación con Certificado
export ACI_APIC_URL="https://your-apic.domain.com" export ACI_USERNAME="admin" export ACI_CERT_NAME="your-cert-name" export ACI_PRIVATE_KEY_PATH="/path/to/private.key" -
Compilar el Servidor:
npm run build -
Probar Conexión:
npm start # Should connect to APIC and display available tools
Configuración
Métodos de Autenticación
El servidor soporta dos métodos de autenticación:
- Usuario/Contraseña: Inicio de sesión APIC estándar
- Certificado: Autenticación basada en certificado X.509 (recomendado para producción)
Configuración de Herramientas
Configure qué herramientas están disponibles usando aci-mcp-config.json:
{
"serverConfig": {
"name": "aci",
"toolSelectionMode": "whitelist",
"enableAllTools": false,
"tenantFocus": "production"
},
"toolConfiguration": {
"enabledTools": ["list_tenants", "get_fabric_health", ...],
"disabledTools": []
}
}
Modos de Herramientas:
core: Herramientas esenciales (35 herramientas) - Predeterminadoall: Todas las herramientas disponibles (más de 50 herramientas)
Configuración de Variables de Entorno:
export ACI_TOOL_MODE=core # or 'all'
export ACI_TENANT_FOCUS=production # Focus on specific tenant
Herramientas Disponibles
Gestión de Tenants (5 herramientas)
list_tenants- Listar todos los tenantsget_tenant- Obtener detalles de un tenant específicocreate_tenant- Crear nuevo tenantupdate_tenant- Actualizar configuración del tenantdelete_tenant- Eliminar tenant
Gestión de Perfiles de Aplicación (5 herramientas)
list_application_profiles- Listar perfiles de aplicaciónget_application_profile- Obtener perfil de aplicación específicocreate_application_profile- Crear nuevo perfil de aplicaciónupdate_application_profile- Actualizar perfil de aplicacióndelete_application_profile- Eliminar perfil de aplicación
Gestión de Grupos de Endpoints (6 herramientas)
list_endpoint_groups- Listar grupos de endpointsget_endpoint_group- Obtener detalles de EPG específicocreate_endpoint_group- Crear nuevo EPGupdate_endpoint_group- Actualizar configuración del EPGdelete_endpoint_group- Eliminar EPGget_endpoint_group_stats- Obtener estadísticas del EPG
Gestión de Dominios de Bridge (5 herramientas)
list_bridge_domains- Listar dominios de bridgeget_bridge_domain- Obtener dominio de bridge específicocreate_bridge_domain- Crear nuevo dominio de bridgeupdate_bridge_domain- Actualizar dominio de bridgedelete_bridge_domain- Eliminar dominio de bridge
Gestión de VRF (5 herramientas)
list_vrfs- Listar VRFsget_vrf- Obtener detalles de VRF específicocreate_vrf- Crear nuevo VRFupdate_vrf- Actualizar configuración del VRFdelete_vrf- Eliminar VRF
Gestión de Contratos (8 herramientas)
list_contracts- Listar contratosget_contract- Obtener detalles del contratocreate_contract- Crear nuevo contratoupdate_contract- Actualizar contratodelete_contract- Eliminar contratolist_filters- Listar filtroscreate_filter- Crear nuevo filtrodelete_filter- Eliminar filtro
Salud y Monitoreo (8 herramientas)
get_fabric_health- Obtener salud general del fabriclist_faults- Listar fallos del fabricget_fault_summary- Obtener resumen de fallos por severidadlist_nodes- Listar nodos del fabricget_node_health- Obtener estado de salud del nodolist_interfaces- Listar interfaces del fabricget_interface_stats- Obtener estadísticas de interfazget_system_info- Obtener información del sistema APIC