Redash
Ejecuta consultas y recupera resultados usando la API de Redash.
Documentación
Servidor MCP de Redash
Servidor MCP para la API de Redash que proporciona funciones como la ejecución de consultas y la obtención de resultados.
Herramientas
-
execute_query_and_wait- Ejecuta una consulta SQL y espera hasta que el resultado esté disponible
- Parámetros de entrada:
query(cadena): Consulta SQL a ejecutardata_source_id(número, opcional): ID de la fuente de datos donde se ejecutará la consultamax_age(número, opcional): Tiempo de expiración de caché (segundos)
- Valor de retorno: Resultado de la consulta cuando esté disponible
-
list_data_sources- Lista todas las fuentes de datos disponibles
- Parámetros de entrada: Ninguno
- Valor de retorno: Matriz de fuentes de datos
-
get_data_source- Obtiene los detalles de una fuente de datos específica
- Parámetros de entrada:
data_source_id(número): ID de la fuente de datos
- Valor de retorno: Información detallada de la fuente de datos
-
get_query- Obtiene los detalles de una consulta guardada por su ID (incluye el texto SQL)
- Parámetros de entrada:
query_id(número): ID de la consulta
- Valor de retorno: Información detallada de la consulta guardada
-
search_queries- Busca consultas guardadas por palabra clave
- Parámetros de entrada:
q(cadena): Palabra clave de búsquedapage(número, opcional): Número de páginapage_size(número, opcional): Tamaño de página
- Valor de retorno: Lista de consultas guardadas que coinciden con la búsqueda
-
get_query_result- Obtiene un resultado de consulta existente por su ID (sin volver a ejecutarla)
- Parámetros de entrada:
query_result_id(número): ID del resultado de la consulta
- Valor de retorno: Resultado de la consulta
-
get_saved_query_result- Obtiene el último resultado en caché de una consulta guardada por su ID
- Parámetros de entrada:
query_id(número): ID de la consulta
- Valor de retorno: Último resultado en caché de la consulta guardada
Configuración
Clave API
Obtenga la clave API de Redash.
- Inicie sesión en Redash
- Haga clic en «Edit Profile»
- Copie la clave API
Variables de entorno
Se requieren las siguientes variables de entorno:
REDASH_API_KEY: Clave API de RedashREDASH_BASE_URL: URL de Redash (ejemplo: https://redash.example.com)DATA_SOURCE_ID(opcional): ID de fuente de datos predeterminado (se usa cuando se omitedata_source_idenexecute_query_and_wait)PORT(opcional): Número de puerto del servidor HTTP (predeterminado: 3000, usado con Streamable HTTP / SSE)
Instalación
git clone https://github.com/yuki9541134/mcp-redash.git
cd mcp-redash
npm install
npm run build
npm link
Modos de inicio
Se admiten 3 modos de inicio.
| stdio (predeterminado) | Streamable HTTP | SSE (obsoleto) | |
|---|---|---|---|
| Indicador de inicio | Ninguno | --streamable-http | --sse |
| Método de comunicación | Entrada/salida estándar | HTTP | HTTP (Server-Sent Events) |
| Puerto | No necesario | Predeterminado 3000 | Predeterminado 3000 |
| Punto final | - | POST/GET/DELETE /mcp | GET /sse, POST /messages |
| Uso principal | Uso local | Compartir remoto con múltiples clientes | Compatibilidad heredada |
stdio (predeterminado)
Modo que se comunica mediante entrada/salida estándar. Úselo para uso local desde un cliente MCP.
npm run build
node dist/index.js
Durante el desarrollo, puede ejecutar TypeScript directamente con
npm run dev.
Al usar con npx
Si npm link está instalado, puede ejecutarlo directamente con npx.
npx mcp-redash
Ejemplo de configuración de .mcp.json en Claude Code:
{
"mcpServers": {
"redash": {
"type": "stdio",
"command": "npx",
"args": ["mcp-redash"],
"env": {
"REDASH_API_KEY": "<YOUR_API_KEY>",
"REDASH_BASE_URL": "https://redash.example.com"
}
}
}
}
Al usar con Docker
docker build -t yuki9541134/mcp-redash .
Ejemplo de configuración de .mcp.json en Claude Code:
{
"mcpServers": {
"redash": {
"type": "stdio",
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "REDASH_API_KEY",
"-e", "REDASH_BASE_URL",
"yuki9541134/mcp-redash"
],
"env": {
"REDASH_API_KEY": "<YOUR_API_KEY>",
"REDASH_BASE_URL": "https://redash.example.com"
}
}
}
}
Streamable HTTP
Modo que se inicia como servidor HTTP y se comunica mediante el protocolo Streamable HTTP. Es adecuado para clientes web y conexiones remotas.
Configure PORT REDASH_BASE_URL REDASH_API_KEY con .env antes de iniciar.
Al iniciar con node
npm run build
node dist/index.js --streamable-http
Durante el desarrollo, puede ejecutar TypeScript directamente con
npm run dev -- --streamable-http.
Al iniciar con docker compose
docker compose up -d
Puede cambiar el puerto con
PORTde.env(predeterminado: 3000).
Puntos finales:
POST /mcp- Envío de solicitudesGET /mcp- Establecimiento del flujo SSE (para notificaciones de servidor a cliente)DELETE /mcp- Finalización de la sesión
Ejemplo de configuración de .mcp.json en Claude Code:
{
"mcpServers": {
"redash": {
"type": "http",
"url": "http://localhost:3000/mcp"
}
}
}
Ejemplo de configuración de config.toml en Codex
[mcp_servers.redash]
type = "url"
url = "http://localhost:3000/mcp"
SSE (obsoleto)
Obsoleto: El modo SSE se mantiene por compatibilidad heredada. Para nuevos usos, se recomienda el modo Streamable HTTP.
Modo que se inicia como servidor HTTP y se comunica mediante Server-Sent Events (SSE).
npm run build
node dist/index.js --sse
Durante el desarrollo, puede ejecutar TypeScript directamente con
npm run dev -- --sse.
Puntos finales:
GET /sse- Establecimiento de la conexión SSEPOST /messages- Envío de mensajes
Ejemplo de configuración de .mcp.json en Claude Code:
{
"mcpServers": {
"redash": {
"type": "sse",
"url": "http://localhost:3000/sse"
}
}
}