Permite que un agente de IA consulte las distribuciones de tiempo de espera y las condiciones de las colas en tiempo real para decidir si debe ejecutar trabajos de LLM de forma síncrona o mediante colas de procesamiento por lotes (batch).
También conocido como batchwatch/client
- Stars
- 0
- Herramientas
- 6
- Descargas, 30 días
- —
- Última versión
- 0.1.1
- Último commit
- 31 ago 2026
- Licencia
- —
¿Qué es batchwatch MCP?
batchwatch es un MCP server. Permite que un agente de IA consulte las distribuciones de tiempo de espera y las condiciones de las colas en tiempo real para decidir si debe ejecutar trabajos de LLM de forma síncrona o mediante colas de procesamiento por lotes (batch). Expone 6 herramientas, como should_i_batch, estimate_batchtime, conditions.
Resumen generado a partir del README del proyecto
Acerca del MCP server de batchwatch
Decidir si ejecutar trabajos de LLM de forma síncrona o mediante colas de procesamiento por lotes es lo que batchwatch-mcp permite a los desarrolladores que utilizan agentes de IA como Claude, Cursor o Cline. En lugar de adivinar, un agente puede consultar las distribuciones de tiempo de espera de las colas en tiempo real y las condiciones actuales para tomar decisiones de enrutamiento informadas. El servidor actúa como un proxy fiel que transmite los datos JSON sin procesar de la API de batchwatch, incluyendo métricas como confianza, base y frescura, sin inventar números ni fabricar ETAs.
Los usuarios conectan el servidor a su cliente compatible con MCP a través de stdio. Requiere un BATCHWATCH_TOKEN para obtener datos en vivo, aunque sigue proporcionando datos públicos con un retraso de 15 minutos si no se proporciona un token. El servidor incluye herramientas específicas como should_i_batch para verificar si una cola respeta un tiempo máximo de espera, estimate_batchtime para ver las distribuciones de espera, y conditions para comparar los estados actuales con las normas recientes. Depende de una configuración de BATCHWATCH_URL y BATCHWATCH_TIMEOUT_MS para gestionar la comunicación con la API.
Qué puedes hacer con él
- 1Determinar el enrutamiento óptimo de trabajosPide a un agente que decida si un trabajo de modelo específico debe enviarse a una cola de procesamiento por lotes o ejecutarse de forma síncrona.
- 2Estimar tiempos de espera potencialesSolicita una distribución de cuánto tiempo es probable que un trabajo específico espere en la cola.
- 3Monitorear la salud de la colaComprueba si las condiciones actuales de la cola se están desviando de la norma reciente.
- 4Verificar la disponibilidad del proveedorIdentifica qué combinaciones de proveedor y modelo tienen datos disponibles actualmente.
Escrito a partir del README del proyecto. Cada caso de uso se verifica con una cita del mismo.
Cómo instalar batchwatch MCP
Formatos verificados el 10 nov 2026Añadir a CursorAñadir a GooseInstalar batchwatch MCP en Claude Code
$ claude mcp add batchwatch-mcp -- npx -y batchwatch-mcpInstalar batchwatch MCP en Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Instalar batchwatch MCP en VS Code
.vscode/mcp.json
{
"servers": {
"batchwatch-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Instalar batchwatch MCP en VS Code CLI
$ code --add-mcp '{"name":"batchwatch-mcp","type":"stdio","command":"npx","args":["-y","batchwatch-mcp"]}'Instalar batchwatch MCP en Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Instalar batchwatch MCP en Codex
$ codex mcp add batchwatch-mcp -- npx -y batchwatch-mcpInstalar batchwatch MCP en Codex config.toml
~/.codex/config.toml
[mcp_servers.batchwatch-mcp] command = "npx" args = ["-y", "batchwatch-mcp"]
Instalar batchwatch MCP en Gemini CLI
$ gemini mcp add -s user batchwatch-mcp npx -- -y batchwatch-mcpInstalar batchwatch MCP en Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Herramientas de batchwatch MCP 6
Detectado desde el READMEshould_i_batchestimate_batchtimeconditionsdistributioncoveragewait
| should_i_batch | — | |
| estimate_batchtime | — | |
| conditions | — | |
| distribution | — | |
| coverage | — | |
| wait | — |
Configuración
BATCHWATCH_LIVEBATCHWATCH_TOKEN
| Nombre | Descripción | Tipo |
|---|---|---|
| BATCHWATCH_LIVE | — | |
| BATCHWATCH_TOKEN | — |
Verificaciones automáticas
Ejecutado 14 nov 2026Informe completo →Pasó nuestras verificaciones automáticas. Esto no es una auditoría de seguridad: lee el código y dale al servidor el acceso más limitado que necesite. Cómo funcionan las verificaciones · Qué corregir para obtener más puntos
- Repositorio de origen vinculado y accesiblebatchwatch/client is public and reachablegithub.com/batchwatch/client ↗Aprobado
- El paquete indica este repositorio como su origenbatchwatch-mcp names batchwatch/client as sourcenpmjs.com/package/batchwatch-mcp ↗Aprobado
- Procedencia de la compilación (atestación de Sigstore)No build attestation published for this releaseNo verificado
- Licencia de código abierto (OSI)No licenseHallazgo
- Commit o lanzamiento en el último añoLast commit or release 2026-08-31github.com/batchwatch/client ↗Aprobado
- OpenSSF ScorecardNo verificado
- El nombre del paquete no es similar a un paquete popularNo popular package one edit away from batchwatch-mcpAprobado
- No hay avisos críticos en el paquete ni en sus dependencias99 resolved dependencies checked; no critical advisoryosv.dev ↗Aprobado
- Sin instrucciones ocultas para el modelo6 tool descriptions and the README read; no override phrases, credential paths or hidden charactersAprobado
- Las herramientas destructivas están etiquetadasNo tool named like delete, drop or execAprobado
- El endpoint remoto responde al handshake de MCPNo verificado
README
Ver en GitHubbatchwatch MCP server
Let an AI agent ask batchwatch "should I batch this job?" instead of guessing.
When a developer asks Claude, Cursor, Cline or any MCP-speaking agent "should I send this to the batch queue or run it synchronously?", this server lets the agent call batchwatch and get the real queue evidence — the measured wait distribution, the current conditions, a graded confidence, and how fresh the data is.
It wraps batchwatch's existing read routes as MCP tools. It is a thin,
faithful proxy: it makes no decision and invents no numbers. Every answer
is the provider's own JSON, passed through verbatim, carrying the n,
confidence, why, basis and freshness the API already returns. If the API
is down or slow, the tool returns an error — never a fabricated figure.
Access & tiers — the same gate as the rest of batchwatch
Because it is a faithful proxy, the server runs on the same tiers as the
batchwatch API — there is no separate MCP plan and no MCP fast lane. Each
tool carries your BATCHWATCH_TOKEN and earns exactly the tier that key earns
anywhere else:
- No token → you read the public data, delayed 15 minutes. You still get every answer — the distribution, the conditions, the verdict — as fresh as the open API serves them.
- A token → the agent earns that key's tier and its freshness, volume and
livebehaviour. Live figures are what let an agent route real traffic on the answer, and they are bought here the same way they are bought at the API.
One access model, gated in one place — the batchwatch tier system (see the
Tiers, delay, quota and the free trial reference in the batchwatch API docs).
Tools
Each tool maps to a real route in src/index.js (there is deliberately no
tradeoff tool — /v1/tradeoff is named in the KRAVSPEC but not built yet, and
a tool for a route that does not answer would be exactly the fabricated
capability this project refuses to ship).
| Tool | Route | What it answers |
|---|---|---|
should_i_batch |
GET /v1/should-i-batch |
Given a model and your own max_wait, does the batch queue currently honour it? The verdict. |
estimate_batchtime |
GET /v1/estimate-batchtime |
How long is my job likely to wait? A distribution, never a single ETA. |
conditions |
GET /v1/conditions |
Current conditions vs the recent norm — "is it me or them?" |
distribution |
GET /v1/distribution |
The full measured wait distribution (the raw evidence). |
coverage |
GET /v1/coverage |
Which provider+model combos have data, and how answerable each is. |
wait |
GET /v1/wait |
The public "is the queue moving now?" reading (delayed without a key). |
batchwatch reports distributions and current conditions, not point ETAs. A personal history of 3-minute medians once produced a 480-minute job; "your job finishes at 14:32" is a lie the one time it matters. The tools' descriptions say so, so the calling model uses the answer correctly.
Install & run
cd mcp
npm install
node index.js # speaks MCP over stdio
Requires Node ≥ 18 (uses the built-in fetch).
Configuration (environment)
| Var | Default | Meaning |
|---|---|---|
BATCHWATCH_URL |
https://batchwatch.dev |
API base. |
BATCHWATCH_TOKEN |
(unset) | Optional API key. Without it the data is delayed, not absent — you still get answers, just older ones. |
BATCHWATCH_TIMEOUT_MS |
8000 |
Per-call timeout. On timeout the tool errors; it never guesses. |
Wiring into a client
Claude Desktop / Cursor / Cline mcpServers entry:
{
"mcpServers": {
"batchwatch": {
"command": "node",
"args": ["/absolute/path/to/batchwatch/mcp/index.js"],
"env": { "BATCHWATCH_TOKEN": "tk_your_key_optional" }
}
}
}
Tests
npm test # offline unit tests (mocked fetch) — deterministic
BATCHWATCH_LIVE=1 npm test # also runs the live smoke against BATCHWATCH_URL
The unit tests assert the load-bearing properties: omitted numeric fields are
never sent as 0; the provider JSON is passed through unchanged; only the real
routes are exposed (no tradeoff); and an API error yields an error, never a
number.
Publishing (registry reach — the point of #57)
The highest-leverage distribution channel for a 2026 dev tool is being the
answer an agent reaches for by default. Once this is published so agents can
install it, batchwatch wins the call instead of merely being mentioned. Targets:
the Anthropic MCP registry, Smithery, and
mcp.so. The package is publish-ready (bin: batchwatch-mcp,
zero build step); registry submission is tracked on Vikunja task #57.
Why this exists
batchwatch measures how long jobs actually wait in LLM providers' async batch queues. Batch is half price, but "done within 24 hours" cannot be planned around, so most callers pay full price out of habit. This server puts the queue evidence one tool-call away from the agent that is about to make that choice.
Preguntas sobre batchwatch MCP
¿Cómo agrego batchwatch MCP a Claude Code?
Ejecuta claude mcp add batchwatch-mcp -- npx -y batchwatch-mcp en tu terminal. Añade --scope user para que esté disponible en todos los proyectos.
¿Cómo agrego batchwatch MCP a Cursor?
Abre ~/.cursor/mcp.json y añade el servidor en mcpServers, usando la configuración de Cursor que se muestra en la sección de instalación de arriba.
¿Qué herramientas proporciona batchwatch MCP?
Expone 6 herramientas, incluidas should_i_batch, estimate_batchtime, conditions, distribution, coverage.
¿Necesito una clave de API para usar batchwatch?
No, puedes usarlo sin un token para leer datos públicos, aunque los datos tendrán un retraso de 15 minutos.
¿El servidor proporciona ETAs específicos para la finalización de los trabajos?
No, el servidor reporta las distribuciones de espera medidas y las condiciones actuales en lugar de un único ETA para garantizar la precisión.
¿Qué sucede si la API de batchwatch no está disponible?
La herramienta devolverá un error en lugar de proporcionar una cifra inventada o estimada.