Conduktor MCP

Opera todo un ecosistema Apache Kafka desde un asistente de IA: temas y uso, grupos de consumidores y retraso, esquemas, conectores, linaje de flujos, ACLs, certificados y atribución de costos en cada clúster. Funciona a través de Conduktor Console bajo tu RBAC existente, con cada llamada auditada.

Documentación

Conduktor MCP

Pon un asistente de IA a cargo de tu infraestructura Kafka.

No es una ventana de chat hacia un clúster. Es una forma para que los agentes — los tuyos o los nuestros — vean lo que realmente está sucediendo en cada clúster que ejecutas, y actúen en consecuencia: recuperar los temas que nadie consume, atribuir costos a los equipos que los generan, detectar el certificado que expira el próximo mes, reiniciar el conector que falló a las 3 a. m., etiquetar los temas cuyo propietario dejó la empresa.

El endpoint MCP viene integrado en Conduktor Console. No hay nada que implementar ni nada nuevo que asegurar: el asistente hereda el RBAC, el registro de auditoría y el modelo de propiedad que ya utilizas.

One endpoint for your tools and for Console agents. Every call runs under the caller's own RBAC and is audited. Metadata reaches the model; your records stay in Kafka.

Pruébalo primero

¿No tienes Kafka a mano? demo/ levanta un clúster, Console y el endpoint MCP con docker compose up -d, sembrado con temas, tráfico y un grupo de consumidores que está deliberadamente rezagado.

Configuración

Crea un Token de Acceso Personal en Console y luego apunta tu cliente MCP a tu propia Console:

{
  "mcpServers": {
    "conduktor": {
      "command": "npx",
      "args": ["-y", "@conduktor/mcp"],
      "env": {
        "CONDUKTOR_CONSOLE_URL": "https://console.acme-corp.com",
        "CONDUKTOR_API_TOKEN": "your-personal-access-token"
      }
    }
  }
}

/api/mcp se agrega por ti. Pegar una URL que ya termine en ello también funciona.

Conexión sin el paquete

@conduktor/mcp envuelve mcp-remote. Llámalo tú mismo si lo prefieres:

{
  "mcpServers": {
    "conduktor": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://console.acme-corp.com/api/mcp",
        "--header",
        "Authorization: Bearer ${CONDUKTOR_API_TOKEN}"
      ],
      "env": { "CONDUKTOR_API_TOKEN": "your-personal-access-token" }
    }
  }
}

Lo que un asistente puede preguntar

Pregunta en inglés y obtén respuestas basadas en tu infraestructura real, no en documentación:

¿Qué temas no se han consumido en un mes y quién los creó? ¿Cuánto nos costó el equipo de pagos el último trimestre y qué lo impulsó? Este grupo de consumidores está atascado: ¿cuál es el mensaje bloqueante? ¿Qué certificados expiran antes de marzo y de quién son? Nadie es dueño de estos temas. ¿Puedes averiguar quién debería serlo, a partir del linaje?

Esos no son demos. Cada uno se corresponde con las herramientas a continuación y con tareas que un agente puede ejecutar sin supervisión.

De responder a operar

El mismo catálogo sirve a dos tipos de llamantes. Tus herramientas — Claude Code, Cursor, scripts, tu plataforma interna de desarrolladores — y agentes que se ejecutan dentro de Console, según un horario o ante un evento del registro de auditoría, bajo su propia identidad de máquina.

Ese segundo caso es donde esto deja de ser un chatbot. Un agente es una tarea más una identidad más un conjunto acotado de herramientas. Se despierta el lunes a las 9 a. m., o en el momento en que un conector falla, resuelve el problema y regresa con algo sobre lo que puedas actuar: un informe, una recomendación o una mutación que propone y tú apruebas.

Cada ejecución se rastrea de principio a fin: el prompt, cada llamada a herramienta, los tokens, el resultado. Eso es lo que adjuntas a un ticket o entregas a un auditor.

Herramientas

Treinta y una, en todo el plano de control. La mayoría leen; algunas escriben, y ese conjunto está creciendo.

Clústeres

HerramientaQué hace
list-clustersCada clúster Kafka que gestiona esta Console, con su Schema Registry, clústeres Connect y sabor
get-clusterEl registro de un clúster por slug
insights-clusterPuntaje de salud, conteos de temas y particiones, desglose de serialización: la forma de un clúster en una sola llamada

Temas

HerramientaQué hace
list-topicsCatálogo de temas: nombres, etiquetas, descripciones, particiones, replicación, configuraciones
get-topicUn tema por nombre exacto
list-topics-with-usageTemas con conteo de mensajes, tamaño y rendimiento
query-topicsFiltrar temas en un clúster
aggregate-topicsAgrupar temas y calcular una estadística por grupo: conteo, suma, promedio, mínimo, máximo
insights-topicsDesequilibrio de particiones, problemas de replicación y lo que está silenciosamente mal
set-topic-labels (escribe)Etiquetar temas: propiedad, entorno, lo que sea tu taxonomía

Mensajes

HerramientaQué hace
get-last-messagesLos últimos N mensajes de un tema
get-record-atUn registro específico, por partición y offset: el que bloquea a un consumidor

Grupos de consumidores

HerramientaQué hace
list-consumer-groupsGrupos con estado, rezago y número de miembros
get-consumer-groupUn grupo en detalle
list-consumer-groups-by-topicQuién lee realmente este tema

Esquemas

HerramientaQué hace
list-subjects · get-subject · list-subject-namesEl catálogo de sujetos
get-schema-versionUna versión específica
check-schema-compatibilitySi un cambio rompe a los consumidores, antes de que se publique

Connect, Gateway

HerramientaQué hace
list-connectors-detailed · get-connectorConectores y su estado
list-interceptorsInterceptores de Gateway configurados en un clúster

Acceso, identidad, gobernanza, costo

HerramientaQué hace
list-acl-bindingsQuién tiene permitido hacer qué
list-service-accounts · get-service-accountIdentidades no humanas
list-certificatesCertificados y su expiración
list-applicationsAplicaciones registradas en el catálogo
get-stream-lineageQué fluye hacia qué
query-audit-logQuién hizo qué, cuándo
get-chargeback-reportCosto atribuido por equipo

La seguridad es lo que hace esto posible

Darle a un agente acceso real a producción solo es razonable porque los límites ya existen y se aplican en cada llamada.

Eres tú. Cada llamada lleva un token de Console y se ejecuta bajo el RBAC de ese usuario. Un agente no puede ver un clúster que su propietario no puede ver. Revoca el acceso del propietario y el agente lo pierde en el mismo instante.

Plano de control, no plano de datos. Lo que llega al modelo es metadatos: temas, configuraciones, offsets, grupos, esquemas, linaje, costo. Tus registros permanecen en Kafka a menos que una tarea necesite explícitamente una herramienta que los lea.

Todo está auditado. Cada llamada aterriza en el registro de auditoría de Console, atribuible a la identidad que la hizo.

Documentación

Qué hay en este repositorio

El lanzador publicado como @conduktor/mcp, esta documentación y los metadatos del registro. El servidor en sí se ejecuta dentro de Console. Para errores en el servidor, usa el soporte de Conduktor; para el lanzador o estos documentos, abre un issue aquí.