AI 에이전트가 실시간 대기열 분포와 상태를 조회하여 LLM 작업을 동기 방식으로 실행할지 또는 배치 대기열을 통해 실행할지 결정할 수 있게 합니다.
다른 이름 batchwatch/client
- 스타
- 0
- Tools
- 6
- 다운로드, 30일
- —
- 최신 버전
- 0.1.1
- 마지막 커밋
- 2026년 8월 31일
- 라이선스
- —
batchwatch MCP란?
batchwatch은(는) MCP server입니다. AI 에이전트가 실시간 대기열 분포와 상태를 조회하여 LLM 작업을 동기 방식으로 실행할지 또는 배치 대기열을 통해 실행할지 결정할 수 있게 합니다. 6개 도구를 제공합니다. 예: should_i_batch, estimate_batchtime, conditions.
프로젝트 README에서 생성된 요약
batchwatch MCP server 정보
batchwatch-mcp는 Claude, Cursor, Cline과 같은 AI 에이전트를 사용하는 개발자가 LLM 작업을 동기 방식으로 실행할지 또는 배치 대기열을 통해 실행할지 결정할 수 있도록 지원합니다. 에이전트는 추측하는 대신 실시간 대기열 분포와 현재 상태를 조회하여 정보에 기반한 라우팅 결정을 내릴 수 있습니다. 이 서버는 수치를 조작하거나 ETA를 지어내지 않고, 신뢰도(confidence), 근거(basis), 최신성(freshness)과 같은 메트릭을 포함하여 batchwatch API의 원시 JSON 데이터를 그대로 전달하는 충실한 프록시 역할을 합니다.
사용자는 stdio를 통해 MCP 호환 클라이언트에 서버를 연결합니다. 실시간 데이터를 사용하려면 BATCHWATCH_TOKEN이 필요하지만, 토큰을 제공하지 않아도 15분 지연된 공개 데이터를 사용할 수 있습니다. 서버에는 대기열이 최대 대기 시간을 준수하는지 확인하는 should_i_batch, 대기 분포를 확인하는 estimate_batchtime, 그리고 현재 상태를 최근 표준과 비교하는 conditions와 같은 특정 도구가 포함되어 있습니다. API 통신 관리를 위해 BATCHWATCH_URL 및 BATCHWATCH_TIMEOUT_MS 설정이 필요합니다.
활용 사례
- 1최적의 작업 라우팅 결정특정 모델 작업을 배치 대기열로 보낼지 또는 동기 방식으로 실행할지 에이전트가 결정하도록 요청합니다.
- 2잠재적 대기 시간 추정특정 작업이 대기열에서 얼마나 대기할 가능성이 있는지에 대한 분포를 요청합니다.
- 3대기열 상태 모니터링현재 대기열 상태가 최근 표준에서 벗어나고 있는지 확인합니다.
- 4제공업체 가용성 확인현재 사용 가능한 데이터를 보유한 제공업체 및 모델 조합을 식별합니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
batchwatch MCP 설치 방법
형식 확인: 2026년 11월 10일Cursor에 추가Goose에 추가Claude Code에 batchwatch MCP 설치
$ claude mcp add batchwatch-mcp -- npx -y batchwatch-mcpCursor에 batchwatch MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}VS Code에 batchwatch MCP 설치
.vscode/mcp.json
{
"servers": {
"batchwatch-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}VS Code CLI에 batchwatch MCP 설치
$ code --add-mcp '{"name":"batchwatch-mcp","type":"stdio","command":"npx","args":["-y","batchwatch-mcp"]}'Claude Desktop에 batchwatch MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}Codex에 batchwatch MCP 설치
$ codex mcp add batchwatch-mcp -- npx -y batchwatch-mcpCodex config.toml에 batchwatch MCP 설치
~/.codex/config.toml
[mcp_servers.batchwatch-mcp] command = "npx" args = ["-y", "batchwatch-mcp"]
Gemini CLI에 batchwatch MCP 설치
$ gemini mcp add -s user batchwatch-mcp npx -- -y batchwatch-mcpGemini settings.json에 batchwatch MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"batchwatch-mcp": {
"command": "npx",
"args": [
"-y",
"batchwatch-mcp"
]
}
}
}batchwatch MCP 도구 6
README에서 감지됨should_i_batchestimate_batchtimeconditionsdistributioncoveragewait
| should_i_batch | — | |
| estimate_batchtime | — | |
| conditions | — | |
| distribution | — | |
| coverage | — | |
| wait | — |
구성
BATCHWATCH_LIVEBATCHWATCH_TOKEN
| 이름 | 설명 | 유형 |
|---|---|---|
| BATCHWATCH_LIVE | — | |
| BATCHWATCH_TOKEN | — |
자동 검사
2026년 11월 14일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식 · 점수를 높이기 위해 수정할 항목
- 소스 저장소 연결 및 접근 가능batchwatch/client is public and reachablegithub.com/batchwatch/client ↗통과
- 패키지가 이 저장소를 소스로 명시batchwatch-mcp names batchwatch/client as sourcenpmjs.com/package/batchwatch-mcp ↗통과
- 빌드 출처(Sigstore 증명)No build attestation published for this release검사되지 않음
- 오픈 소스 라이선스 (OSI)No license결함 발견
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-08-31github.com/batchwatch/client ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from batchwatch-mcp통과
- 패키지 및 해당 종속성에 중요한 보안 권고 없음99 resolved dependencies checked; no critical advisoryosv.dev ↗통과
- 모델에 대한 숨겨진 지침 없음6 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨No tool named like delete, drop or exec통과
- 원격 엔드포인트가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기batchwatch 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.
batchwatch MCP 질문
batchwatch MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add batchwatch-mcp -- npx -y batchwatch-mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
batchwatch MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
batchwatch MCP는 어떤 도구를 제공하나요?
6개 도구를 제공합니다. 예: should_i_batch, estimate_batchtime, conditions, distribution, coverage.
batchwatch를 사용하려면 API 키가 필요한가요?
아니요, 토큰 없이도 공개 데이터를 읽을 수 있습니다. 다만 데이터는 15분 지연될 수 있습니다.
서버에서 작업 완료에 대한 구체적인 ETA를 제공하나요?
아니요, 정확성을 보장하기 위해 단일 시점의 ETA 대신 측정된 대기 분포와 현재 상태를 보고합니다.
batchwatch API를 사용할 수 없는 경우 어떻게 되나요?
도구는 임의의 수치를 추측하여 제공하는 대신 에러를 반환합니다.