En esta guía se explica cómo combinar el potente framework de interfaz de chat de Chainlit con el servidor Model Context Protocol (MCP) de ClickHouse para crear aplicaciones de datos interactivas. Chainlit te permite crear interfaces conversacionales para aplicaciones de IA con muy poco código, mientras que el servidor MCP de ClickHouse ofrece una integración fluida con la base de datos columnar de alto rendimiento de ClickHouse.
Prerrequisitos
- Necesitarás una clave de API de Anthropic
- Necesitarás tener instalado
uv
Aplicación básica de Chainlit
Puedes ver un ejemplo de una aplicación básica de chat ejecutando lo siguiente:
uv run --with anthropic --with chainlit chainlit run chat_basic.py -w -hLuego, ve a http://localhost:8000
Añadir el servidor MCP de ClickHouse
La cosa se pone más interesante si añadimos el servidor MCP de ClickHouse.
Tendrás que actualizar tu archivo .chainlit/config.toml para permitir el uso del comando uv:
[features.mcp.stdio]
enabled = true
# Solo los ejecutables en la lista de permitidos pueden usarse para el servidor MCP stdio.
# Solo se necesita el nombre base del ejecutable, p. ej. "npx", no "/usr/bin/npx".
# Por favor, no comente esta línea por ahora, es necesaria para analizar el nombre del ejecutable.
allowed_executables = [ "npx", "uvx", "uv" ]Hay código de integración para que los MCP servers funcionen con Chainlit, así que tendremos que ejecutar este comando para iniciar Chainlit en su lugar:
uv run --with anthropic --with chainlit chainlit run chat_mcp.py -w -hPara añadir el servidor MCP, haz clic en el icono de enchufe de la interfaz de chat y, a continuación, añade el siguiente comando para conectarte y usar el Playground de SQL de ClickHouse:
CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com CLICKHOUSE_USER=demo CLICKHOUSE_PASSWORD= CLICKHOUSE_SECURE=true uv run --with mcp-clickhouse --python 3.13 mcp-clickhouseSi quieres usar tu propia instancia de ClickHouse, puedes ajustar los valores de las variables de entorno.
Luego puedes hacerle preguntas como estas:
- Háblame de las tablas que puedes consultar
- ¿Qué tienen de interesante los taxis de Nueva York?