mcp-confluent
Una implementación de servidor MCP que permite a los asistentes de IA interactuar con las API REST de Confluent Cloud. Este servidor permite que herramientas de IA como Claude Desktop y Goose CLI gestionen temas, conectores y sentencias SQL de Flink de Kafka mediante interacciones en lenguaje natural.
Manifestación
Goose CLI
Escritorio de Claude
Tabla de contenido
Guía del usuario
Empezando
Cree un archivo copie la estructura de archivo
.env
de ejemplo (que se muestra a continuación) en un nuevo archivo llamado.env
en la raíz de su proyecto.Rellene el archivo Introduzca los valores necesarios para su entorno de Confluent Cloud. Consulte la sección "Configuración" para obtener más información sobre cada variable.
Instalar Node.js (si aún no está instalado)
Recomendamos utilizar NVM (Node Version Manager) para administrar las versiones de Node.js
Instalar y utilizar Node.js:
nvm install 22 nvm use 22
Configuración
Cree un archivo .env
en el directorio raíz de su proyecto con la siguiente configuración:
Referencia de variables de entorno
Variable | Descripción | Valor predeterminado | Requerido |
Host HTTP | Host al que vincular para el transporte HTTP (cadena) | "localhost" | Sí |
Puerto HTTP | Puerto a utilizar para el transporte HTTP (número (mín.: 0)) | 3000 | Sí |
SERVIDORES BOOTSTRAP | Lista de direcciones de agentes de Kafka en el formato host1:puerto1,host2:puerto2 utilizadas para establecer la conexión inicial con el clúster de Kafka (cadena) | No | |
CLAVE DE API DE CONFLUENT CLOUD | Clave API maestra para la administración de la plataforma Confluent Cloud, que permite la gestión de recursos en toda su organización (cadena (mín.: 1)) | No | |
SECRETO DE LA API DE CONFLUENT CLOUD | Secreto de API maestro emparejado con CONFLUENT_CLOUD_API_KEY para la administración integral de la plataforma Confluent Cloud (cadena (mín.: 1)) | No | |
PUNTO FINAL DE DESCANSO EN LA NUBE CONFLUENTE | URL base para los servicios de API REST de Confluent Cloud (predeterminada) | No | |
CLAVE DE API DE FLINK | Clave de autenticación para acceder a los servicios Flink de Confluent Cloud, incluidos los grupos de cómputo y la gestión de declaraciones SQL (cadena (mín.: 1)) | No | |
SECRETO DE LA API DE FLINK | Token secreto emparejado con FLINK_API_KEY para acceso autenticado a los servicios Flink de Confluent Cloud (cadena (mín.: 1)) | No | |
ID DE GRUPO DE COMPUTACIÓN DE FLINK | Identificador único para el grupo de cómputo de Flink, debe comenzar con el prefijo 'lfcp-' (cadena) | No | |
NOMBRE DE LA BASE DE DATOS FLINK | Nombre del clúster de Kafka asociado utilizado como referencia de base de datos en las operaciones SQL de Flink (cadena (mín.: 1)) | No | |
ID DE ENVÍO FLINK | Identificador único para el entorno Flink, debe comenzar con el prefijo 'env-' (cadena) | No | |
FLINK_ENV_NAME | Nombre legible para humanos para el entorno de Flink utilizado con fines de identificación y visualización (cadena (mín.: 1)) | No | |
ID DE ORGANIZACIÓN FLINK | Identificador de la organización dentro de Confluent Cloud para la gestión de recursos de Flink (cadena (mín.: 1)) | No | |
PUNTO FINAL DE DESCANSO DE FLINK | URL base para los puntos finales de la API REST de Flink de Confluent Cloud utilizados para la administración de declaraciones SQL y grupos de cómputo (cadena) | No | |
CLAVE DE API DE KAFKA | Credencial de autenticación (nombre de usuario) necesaria para establecer una conexión segura con el clúster de Kafka (cadena (mín.: 1)) | No | |
SECRETO DE LA API DE KAFKA | Credencial de autenticación (contraseña) emparejada con KAFKA_API_KEY para acceso seguro al clúster de Kafka (cadena (mín.: 1)) | No | |
ID DE CLÚSTER KAFKA | Identificador único para el clúster de Kafka dentro del ecosistema de Confluent Cloud (cadena (mín.: 1)) | No | |
ID DE ENV. KAFKA | Identificador de entorno para el clúster de Kafka, debe comenzar con el prefijo 'env-' (cadena) | No | |
PUNTO FINAL DE DESCANSO DE KAFKA | Punto final de la API REST para la gestión y administración de clústeres de Kafka (cadena) | No | |
CLAVE DE API DE REGISTRO DE ESQUEMA | Clave de autenticación para acceder a los servicios de Schema Registry para administrar y validar esquemas de datos (cadena (mín.: 1)) | No | |
SECRETO DE API DE REGISTRO DE ESQUEMA | Secreto de autenticación emparejado con SCHEMA_REGISTRY_API_KEY para acceso seguro al Registro de esquemas (cadena (mín.: 1)) | No | |
PUNTO FINAL DEL REGISTRO DE ESQUEMA | Punto final de URL para acceder a los servicios de registro de esquemas para administrar esquemas de datos (cadena) | No |
Uso
Este servidor MCP está diseñado para usarse con varios clientes MCP, como Claude Desktop o Goose CLI/Desktop. La configuración y la interacción específicas dependerán del cliente que utilice. Sin embargo, los pasos generales son:
Iniciar el servidor: puede ejecutar el servidor MCP de una de dos maneras:
Desde el código fuente: Siga las instrucciones de la Guía del desarrollador para compilar y ejecutar el servidor desde el código fuente. Esto suele implicar:
Instalación de dependencias (
npm install
)Construyendo el proyecto (
npm run build
onpm run dev
)
Con npx: puedes iniciar el servidor directamente usando npx (no se requiere compilación):
npx -y @confluentinc/mcp-confluent -e /path/to/confluent-mcp-server/.env
Configura tu cliente MCP: Cada cliente tiene su propia forma de especificar la dirección del servidor MCP y las credenciales requeridas. Deberás configurar tu cliente (p. ej., Claude, Goose) para que se conecte a la dirección donde se ejecuta este servidor (probablemente
localhost
con un puerto específico). El puerto en el que se ejecuta el servidor puede configurarse mediante una variable de entorno.Iniciar el cliente MCP: Una vez configurado el cliente para conectarse al servidor MCP, puede iniciarlo. Al iniciarse, se creará una instancia de este servidor MCP localmente. Esta instancia se encargará de administrar los esquemas de datos e interactuar con Confluent Cloud en su nombre.
Interactúe con Confluent a través del cliente: Una vez conectado el cliente, puede usar su interfaz para interactuar con los recursos de Confluent Cloud. El cliente enviará solicitudes a este servidor MCP, que interactuará con Confluent Cloud en su nombre.
Configuración de Claude Desktop
Consulte aquí para obtener más detalles sobre la instalación de Claude Desktop y los servidores MCP.
Para configurar Claude Desktop para utilizar este servidor MCP:
Abrir la configuración del escritorio de Claude
En Mac:
~/Library/Application Support/Claude/claude_desktop_config.json
En Windows:
%APPDATA%\Claude\claude_desktop_config.json
Editar archivo de configuración
Abra el archivo de configuración en su editor de texto preferido
Agregue o modifique la configuración utilizando uno de los siguientes métodos:
{ "mcpServers": { "confluent": { "command": "node", "args": [ "/path/to/confluent-mcp-server/dist/index.js", "--env-file", "/path/to/confluent-mcp-server/.env", ] } } }{ "mcpServers": { "confluent": { "command": "npx", "args": [ "-y" "@confluentinc/mcp-confluent", "-e", "/path/to/confluent-mcp-server/.env" ] } } }Reemplace
/path/to/confluent-mcp-server/
con la ruta real donde ha instalado este servidor MCP.Reiniciar Claude Desktop
Cierre y vuelva a abrir Claude Desktop para que los cambios surtan efecto.
El servidor MCP se iniciará automáticamente cuando se inicie Claude Desktop
Ahora Claude Desktop estará configurado para utilizar su servidor MCP local para las interacciones de Confluent.
Configuración de Goose CLI
Consulte aquí para obtener instrucciones detalladas sobre cómo instalar Goose CLI.
Una vez instalado, siga estos pasos:
Ejecute el comando de configuración:
goose configureSiga las indicaciones interactivas:
Seleccione
Add extension
Elija
Command-line Extension
Introduzca
mcp-confluent
como nombre de la extensiónElija uno de los siguientes métodos de configuración:
node /path/to/confluent-mcp-server/dist/index.js --env-file /path/to/confluent-mcp-server/.envnpx -y @confluentinc/mcp-confluent -e /path/to/confluent-mcp-server/.env
Reemplace /path/to/confluent-mcp-server/
con la ruta real donde ha instalado este servidor MCP.
Uso de la CLI de mcp-confluent
El servidor MCP proporciona una interfaz de línea de comandos (CLI) flexible para una configuración y un control avanzados. La CLI permite especificar archivos de entorno y transportes, y ajustar las herramientas que se habilitan o bloquean.
Uso básico
Puede ver todas las opciones de CLI y obtener ayuda con:
Ejemplo: Implementar utilizando todos los transportes
Ejemplo: Permitir solo herramientas específicas
Ejemplo: Bloquear ciertas herramientas
Ejemplo: utilizar listas de herramientas desde archivos
Ejemplo: enumerar todas las herramientas disponibles
Consejo: La lista de permitidos se aplica antes que la de bloqueados. Si no se proporciona ninguna, todas las herramientas estarán habilitadas por defecto.
Guía para desarrolladores
Estructura del proyecto
Construyendo y funcionando
Dependencias de instalación:
npm installModo de desarrollo (esté atento a los cambios):
npm run devEste comando compila el código TypeScript a JavaScript y lo reconstruye automáticamente cuando se detectan cambios en el directorio
src/
.Versión de producción (compilación única):
npm run buildIniciar el servidor:
npm run start
Pruebas
Inspector de MCP
Para probar servidores MCP, puede utilizar MCP Inspector , que es una herramienta de desarrollo interactiva para probar y depurar servidores MCP.
Agregar una nueva herramienta
Agregue una nueva enumeración a la clase de enumeración
ToolName
.Agregue su nueva herramienta al mapa de controladores en la clase
ToolFactory
.Crea un nuevo archivo, exportando la clase que extiende
BaseToolHandler
.Implementar el método
handle
de la clase base.Implementar el método
getToolConfig
de la clase base.
Una vez satisfecho, agréguelo al conjunto de
enabledTools
enindex.ts
.
Generando tipos
Contribuyendo
Se agradecen los informes de errores y los comentarios en forma de problemas de Github. Para obtener instrucciones sobre cómo contribuir, consulte CONTRIBUTING.md.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Una implementación de servidor MCP creada para interactuar con las API REST de Confluent Kafka y Confluent Cloud.
Related Resources
Related MCP Servers
- -securityAlicense-qualityMCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.Last updated -34MIT License
- -securityAlicense-qualityMCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.Last updated -63MIT License
- -securityAlicense-qualityAn MCP server that exposes HTTP methods defined in an OpenAPI specification as tools, enabling interaction with APIs via the Model Context Protocol.Last updated -8MIT License
- AsecurityFlicenseAqualityAn MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.Last updated -3935