hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Offers containerized deployment of the Illumio MCP server with configuration options for environment variables, volume mounting, and integration with Claude Desktop.
Creates diagram visualizations for Illumio project planning and implementation timelines.
Provides an interface to interact with Illumio PCE (Policy Compute Engine), enabling programmatic management of workloads, labels, and traffic flow analysis in Illumio's zero-trust segmentation platform.
Servidor MCP de Illumio
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona una interfaz para interactuar con Illumio PCE (Motor de Cómputo de Políticas). Este servidor permite el acceso programático a la gestión de cargas de trabajo de Illumio, las operaciones de etiquetado y el análisis del flujo de tráfico.
¿Qué puede hacer?
Utilice IA conversacional para hablar con su PCE:
- Crear, actualizar y eliminar cargas de trabajo
- Crear, actualizar y eliminar etiquetas
- Obtenga resúmenes de tráfico y realice análisis de seguridad sobre ellos
- Obtenga salud PCE
Prerrequisitos
- Python 3.8+
- Acceso a una instancia de Illumio PCE
- Credenciales API válidas para el PCE
Instalación
- Clonar el repositorio:
- Instalar dependencias:
Configuración
Debes ejecutarlo usando el comando uv
, que hace que sea más fácil pasar variables de entorno y ejecutarlo en segundo plano.
Uso de uv y Claude Desktop
En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
En Windows: %APPDATA%/Claude/claude_desktop_config.json
Agregue lo siguiente a la sección custom_settings
:
Características
Recursos
Los recursos aún no están terminados y lo revisaré más adelante.
illumio://workloads
- Obtener cargas de trabajo del PCEillumio://labels
- Obtener todas las etiquetas de PCE
Herramientas
Gestión de la carga de trabajo
get-workloads
- Recupera todas las cargas de trabajo de PCEcreate-workload
: crea una carga de trabajo no administrada con un nombre, direcciones IP y etiquetas especificadosupdate-workload
: actualiza las propiedades de una carga de trabajo existentedelete-workload
- Eliminar una carga de trabajo de PCE por nombre
Operaciones de etiquetas
create-label
- Crea una nueva etiqueta con un par clave-valordelete-label
: elimina una etiqueta existente por par clave-valorget-labels
- Recupera todas las etiquetas de PCE
Análisis de tráfico
get-traffic-flows
: obtenga datos detallados del flujo de tráfico con opciones de filtrado integrales:- Filtrado de rango de fechas
- Filtrado de origen/destino
- Filtrado de servicios (puertos/protocolos)
- Filtrado de decisiones políticas
- Opciones de consulta de lista de IP y carga de trabajo
- Resultados limitantes
get-traffic-flows-summary
: obtenga información resumida del flujo de tráfico con las mismas capacidades de filtrado que get-traffic-flows
Gestión de políticas
get-rulesets
- Obtener conjuntos de reglas del PCE con filtrado opcional:- Filtrar por nombre
- Filtrar por estado habilitado
Gestión de listas de IP
get-iplists
- Obtener listas de IP del PCE con filtrado opcional:- Filtrar por nombre
- Filtrar por descripción
- Filtrar por rangos de IP
Prueba de conexión
check-pce-connection
: verificar la conectividad y las credenciales del PCE
Gestión de eventos
get-events
- Obtener eventos del PCE con filtrado opcional:- Filtrar por tipo de evento (por ejemplo, 'system_task.expire_service_account_api_keys')
- Filtrar por gravedad (emergencia, alerta, crítica, error, advertencia, aviso, información, depuración)
- Filtrar por estado (éxito, fracaso)
- Limitar el número de resultados devueltos
Manejo de errores
El servidor implementa un manejo y registro de errores integral:
- Problemas de conexión de PCE
- Errores de autenticación de API
- Errores de creación/actualización de recursos
- Validación de entrada no válida
Todos los errores se registran con seguimientos de pila completos y se devuelven como mensajes de error formateados al cliente.
Desarrollo
Ejecución de pruebas
Las pruebas aún no están implementadas.
Modo de depuración
Establezca el nivel de registro en DEBUG en el código o entorno para obtener registros de operaciones detallados.
Contribuyendo
- Bifurcar el repositorio
- Crear una rama de características
- Confirme sus cambios
- Empujar hacia la rama
- Crear una solicitud de extracción
Licencia
Este proyecto está licenciado bajo la GPL-3.0. Consulte el archivo de LICENCIA para más detalles.
Apoyo
Para obtener ayuda, cree un problema .
Ejemplos
Ejemplos visuales
Todos los ejemplos a continuación fueron generados por Claude Desktop 3.5 Sonnet y con datos obtenidos a través de este servidor MCP. Descubrí que renderizar los datos a los componentes de React genera visualizaciones y resultados excelentes.
Análisis de aplicaciones
Vista detallada de los patrones de comunicación y dependencias de la aplicación
Análisis de patrones de tráfico entre diferentes niveles de aplicación
Perspectivas de infraestructura
Panel de descripción general que muestra las métricas y el estado clave de la infraestructura
Análisis detallado de las comunicaciones del servicio de infraestructura
Evaluación de seguridad
Informe de análisis de seguridad completo
Resultados de la evaluación de seguridad para vulnerabilidades de alto riesgo
Resultados de la evaluación de cumplimiento de PCI
Resultados de la evaluación de cumplimiento de SWIFT
Planificación de la remediación
Descripción general de la planificación de la remediación de seguridad
Pasos detallados para la implementación de la remediación de seguridad
Gestión de políticas
Interfaz de gestión para listas de IP
Descripción general de las categorías y la organización del conjunto de reglas
Configuración del ordenamiento de reglas de la aplicación
Gestión de la carga de trabajo
Análisis detallado de la carga de trabajo y métricas
Identificación y análisis de patrones de tráfico de carga de trabajo
Gestión de etiquetas
Organización de las etiquetas PCE por tipo y categoría
Análisis de servicios
Inferencia automática de roles de servicio según patrones de tráfico
Análisis de las 5 principales fuentes y destinos de tráfico
Planificación de proyectos
Cronograma y hitos de implementación del proyecto
Indicaciones disponibles
Aplicación Ringfence
El mensaje de ringfence-application
ayuda a crear políticas de seguridad para aislar y proteger las aplicaciones controlando el tráfico entrante y saliente.
Argumentos requeridos:
application_name
: Nombre de la aplicación a protegerapplication_environment
: Entorno de la aplicación a delimitar
Características:
- Crea reglas para la comunicación entre niveles dentro de la aplicación.
- Utiliza flujos de tráfico para identificar las conexiones externas necesarias
- Implementa restricciones de tráfico entrante según las aplicaciones de origen
- Crea reglas de tráfico saliente para las comunicaciones externas necesarias
- Maneja conexiones tanto dentro del ámbito (misma aplicación/entorno) como fuera del ámbito (externas)
- Crea conjuntos de reglas separados para conexiones de aplicaciones remotas
Analizar el tráfico de aplicaciones
El mensaje de solicitud analyze-application-traffic
proporciona un análisis detallado de los patrones de tráfico y la conectividad de las aplicaciones.
Argumentos requeridos:
application_name
: Nombre de la aplicación a analizarapplication_environment
: Entorno de la aplicación a analizar
Características del análisis:
- Ordena el tráfico por flujos entrantes y salientes
- Grupos por combinaciones de aplicación/entorno/rol
- Identifica tipos y patrones de etiquetas relevantes
- Muestra los resultados en un formato de componente React
- Muestra información del protocolo y del puerto.
- Intenta identificar patrones de servicio conocidos (por ejemplo, Nagios en el puerto 5666)
- Clasifica el tráfico en tipos de infraestructura y aplicaciones.
- Determina la exposición a Internet
- Muestra las etiquetas de roles, aplicaciones y entornos de Illumio
Cómo utilizar las indicaciones de MCP
Paso 1: Haga clic en el botón "Adjuntar desde MCP" en la interfaz
Paso 2: Elija entre los servidores MCP instalados
Paso 3: Complete los argumentos solicitados:
Paso 4: Haga clic en Enviar para enviar el mensaje configurado
Cómo funcionan las indicaciones
- El servidor MCP envía el mensaje configurado a Claude
- Claude recibe contexto a través del Protocolo de Contexto Modelo
- Permite el manejo especializado de tareas específicas de Illumio
Este flujo de trabajo permite compartir contexto automatizado entre los sistemas Illumio y Claude para el análisis del tráfico de aplicaciones y tareas de delimitación.
Estibador
La aplicación está disponible como un contenedor Docker desde el Registro de contenedores de GitHub.
Tire del contenedor
También puedes usar una versión específica reemplazando latest
con un número de versión:
Ejecutar con Claude Desktop
Para utilizar el contenedor con Claude Desktop, necesitarás:
- Cree un archivo de entorno (por ejemplo
~/.illumio-mcp.env
) con sus credenciales de PCE:
- Agregue la siguiente configuración a su archivo de configuración de Claude Desktop:
En MacOS ( ~/Library/Application Support/Claude/claude_desktop_config.json
):
Asegúrese de:
- Reemplace
YOUR_USERNAME
con su nombre de usuario real - Crea el directorio de registro (por ejemplo,
~/tmp
) - Ajuste las rutas según su sistema
Ejecutar de forma independiente
También puedes ejecutar el contenedor directamente:
Docker Compose
Para desarrollo o pruebas, puedes usar Docker Compose. Crea un archivo docker-compose.yml
:
Luego ejecuta:
Problemas conocidos
Al ejecutar el contenedor, es posible que vea advertencias de sintaxis de las expresiones regulares del SDK de Illumio. Estas advertencias no afectan la funcionalidad y se eliminan automáticamente del contenedor.
Si ve advertencias al ejecutar el contenedor, puede eliminarlas manualmente agregando:
O en docker-compose.yml:
Configuración del escritorio de Claude
Para los usuarios de Claude Desktop, agregue esta configuración a su archivo de configuración de Claude Desktop:
Asegúrese de:
- Reemplace
YOUR_USERNAME
con su nombre de usuario real - Cree un directorio de registro en
~/tmp
(o ajuste la ruta según sea necesario) - Cree un archivo de entorno en
~/.illumio-mcp.env
con sus credenciales de PCE:
La configuración:
- Utiliza Docker para ejecutar el contenedor
- Monta un directorio local para registros
- Suprime las advertencias de Python
- Carga las credenciales de PCE desde un archivo de entorno
- Permite la limpieza adecuada del contenedor con
--init
y--rm
You must be authenticated.
Tools
Un servidor de protocolo de contexto de modelo que permite la interacción de inteligencia artificial conversacional con Illumio PCE para la gestión de políticas de seguridad, operaciones de carga de trabajo, análisis del flujo de tráfico y evaluación de cumplimiento.
- What can it do?
- Prerequisites
- Installation
- Configuration
- Using uv and Claude Desktop
- Features
- Error Handling
- Development
- Contributing
- License
- Support
- Examples