Permet à un agent IA d'interroger les distributions d'attente et les conditions des files d'attente en temps réel pour décider s'il doit exécuter des tâches LLM de manière synchrone ou via des files d'attente batch.
Aussi connu sous batchwatch/client
- Étoiles
- 0
- Outils
- 6
- Téléchargements, 30 jours
- —
- Dernière version
- 0.1.1
- Dernier commit
- 31 août 2026
- Licence
- —
Qu'est-ce que batchwatch MCP ?
batchwatch est un serveur MCP. Permet à un agent IA d'interroger les distributions d'attente et les conditions des files d'attente en temps réel pour décider s'il doit exécuter des tâches LLM de manière synchrone ou via des files d'attente batch. Il expose 6 outils, comme should_i_batch, estimate_batchtime, conditions.
Résumé généré à partir du README du projet
À propos du MCP server batchwatch
Décider s'il faut exécuter des tâches LLM de manière synchrone ou via des files d'attente batch est ce que permet batchwatch-mcp pour les développeurs utilisant des agents IA comme Claude, Cursor ou Cline. Au lieu de deviner, un agent peut interroger les distributions d'attente des files d'attente en temps réel et les conditions actuelles pour prendre des décisions de routage éclairées. Le serveur agit comme un proxy fidèle qui transmet les données JSON brutes de l'API batchwatch, incluant des métriques telles que la confiance, la base et la fraîcheur, sans inventer de chiffres ni fabriquer d'ETA.
Les utilisateurs connectent le serveur à leur client compatible MCP via stdio. Il nécessite un BATCHWATCH_TOKEN pour les données en direct, bien qu'il fournisse toujours les données publiques avec un délai de 15 minutes si aucun jeton n'est fourni. Le serveur inclut des outils spécifiques tels que should_i_batch pour vérifier si une file d'attente respecte un temps d'attente maximum, estimate_batchtime pour consulter les distributions d'attente, et conditions pour comparer les états actuels aux normes récentes. Il s'appuie sur un réglage BATCHWATCH_URL et BATCHWATCH_TIMEOUT_MS pour gérer la communication avec l'API.
Ce que vous pouvez faire avec
- 1Déterminer le routage optimal des tâchesDemandez à un agent de décider si une tâche de modèle spécifique doit être envoyée vers une file d'attente batch ou exécutée de manière synchrone.
- 2Estimer les temps d'attente potentielsDemandez une distribution de la durée probable d'attente d'une tâche spécifique dans la file d'attente.
- 3Surveiller la santé des files d'attenteVérifiez si les conditions actuelles de la file d'attente s'écartent de la norme récente.
- 4Vérifier la disponibilité des fournisseursIdentifiez quelles combinaisons de fournisseurs et de modèles disposent actuellement de données disponibles.
Extrait du README du projet. Chaque cas d'utilisation est vérifié par rapport à une citation du document.
Comment installer batchwatch MCP
Formats vérifiés le 10 nov. 2026Ajouter à CursorAjouter à GooseInstaller batchwatch MCP dans Claude Code
$ claude mcp add batchwatch-mcp -- npx -y batchwatch-mcpInstaller batchwatch MCP dans Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Installer batchwatch MCP dans VS Code
.vscode/mcp.json
{
"servers": {
"batchwatch-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Installer batchwatch MCP dans VS Code CLI
$ code --add-mcp '{"name":"batchwatch-mcp","type":"stdio","command":"npx","args":["-y","batchwatch-mcp"]}'Installer batchwatch MCP dans Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Installer batchwatch MCP dans Codex
$ codex mcp add batchwatch-mcp -- npx -y batchwatch-mcpInstaller batchwatch MCP dans Codex config.toml
~/.codex/config.toml
[mcp_servers.batchwatch-mcp] command = "npx" args = ["-y", "batchwatch-mcp"]
Installer batchwatch MCP dans Gemini CLI
$ gemini mcp add -s user batchwatch-mcp npx -- -y batchwatch-mcpInstaller batchwatch MCP dans Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Outils MCP batchwatch 6
Détectés depuis le READMEshould_i_batchestimate_batchtimeconditionsdistributioncoveragewait
| should_i_batch | — | |
| estimate_batchtime | — | |
| conditions | — | |
| distribution | — | |
| coverage | — | |
| wait | — |
Configuration
BATCHWATCH_LIVEBATCHWATCH_TOKEN
| Nom | Description | Type |
|---|---|---|
| BATCHWATCH_LIVE | — | |
| BATCHWATCH_TOKEN | — |
Vérifications automatisées
Exécuté le 14 nov. 2026Rapport complet →A passé nos vérifications automatisées. Il ne s'agit pas d'un audit de sécurité : lisez le code et donnez au serveur l'accès le plus restreint dont il a besoin. Fonctionnement des vérifications · Ce qu'il faut corriger pour gagner des points
- Dépôt source lié et accessiblebatchwatch/client is public and reachablegithub.com/batchwatch/client ↗Réussi
- Le nom du package correspond au dépôt sourcebatchwatch-mcp names batchwatch/client as sourcenpmjs.com/package/batchwatch-mcp ↗Réussi
- Provenance du build (attestation Sigstore)No build attestation published for this releaseNon vérifié
- Licence open source (OSI)No licenseFaille
- Commit ou version publiée au cours de l'année écouléeLast commit or release 2026-08-31github.com/batchwatch/client ↗Réussi
- OpenSSF ScorecardNon vérifié
- Nom du package non proche d'un package populaireNo popular package one edit away from batchwatch-mcpRéussi
- Aucun avis critique dans le package ou ses dépendances99 resolved dependencies checked; no critical advisoryosv.dev ↗Réussi
- Aucune instruction cachée destinée au modèle6 tool descriptions and the README read; no override phrases, credential paths or hidden charactersRéussi
- Les outils destructifs sont étiquetésNo tool named like delete, drop or execRéussi
- Le point de terminaison distant répond à la poignée de main MCPNon vérifié
README
Voir sur 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.
Questions sur batchwatch MCP
Comment ajouter batchwatch MCP à Claude Code ?
Exécutez claude mcp add batchwatch-mcp -- npx -y batchwatch-mcp dans votre terminal. Ajoutez --scope user pour le rendre disponible dans tous les projets.
Comment ajouter batchwatch MCP à Cursor ?
Ouvrez ~/.cursor/mcp.json et ajoutez le serveur sous mcpServers, avec la configuration Cursor indiquée dans la section d'installation ci-dessus.
Quels outils batchwatch MCP fournit-il ?
Il expose 6 outils, dont should_i_batch, estimate_batchtime, conditions, distribution, coverage.
Ai-je besoin d'une clé API pour utiliser batchwatch ?
Non, vous pouvez l'utiliser sans jeton pour lire les données publiques, bien que ces données soient différées de 15 minutes.
Le serveur fournit-il des ETA spécifiques pour la fin des tâches ?
Non, le serveur rapporte les distributions d'attente mesurées et les conditions actuelles plutôt que des ETA ponctuels afin de garantir l'exactitude des informations.
Que se passe-t-il si l'API batchwatch est indisponible ?
L'outil renverra une erreur au lieu de fournir un chiffre inventé ou estimé.