Skip to main content
Glama

ci-watch-mcp

An MCP server with a single watch_ci tool — it waits for GitHub Actions CI to complete for a commit in a local git repository and, in one call, returns a summary along with the error log if something failed.

Why

Without it, checking whether CI passed after a push is done manually:
push one → sleep → gh run list → if the status is "in_progress", sleep again → gh run list again → if conclusion: failure, work through a separate gh run view <id> --log-failed call to see what broke. watch_ci does all this in a single call and immediately returns the failure log, without a manual wait loop.

Related MCP server: claude-beacon

Tool

watch_ci

Parameter

Type

Default name

Description

cwd

string

— (required)

Path to the local clone of the repository with origin on GitHub

ref

string

HEAD

SHA (full or short) or any git-ref

workflow

string

—

Filter by workflow name if the repo has several

timeout_ms

number

300000 (5 min)

Ceiling: 1200000 (20 min)

poll_interval_ms

number

5000

Polling interval for gh run list

Returns:

  • { ok: true, conclusion: "success", url, sha, workflowName } — CI passed;

  • { ok: false, conclusion: "failure", url, sha, workflowName, failedLogs } — CI failed; failedLogs contains the tail of gh run view --log-failed (truncated to 8000 chars, from the end — that is the most informative part);

  • { ok: false, timedOut: true, status, url, message } — did not finish/start within the allotted time.

If ref does not resolve to an actual commit (i.e. a typo in the SHA), the tool immediately throws an error instead of silently disposing until the timeout.

Installation

cd ci-watch-mcp
npm install

Connect to Claude Code:

claude mcp add ci-watch -s user -- node /шлях/до/ci-watch-mcp/src/server.js

Requires an installed and authenticated gh CLI (gh auth status).

Tests

npm test

The tests run against already finished real runs in the secretscan repository (successful, failed, and a commit with none of the CI runs) — no need to wait for a live push.

License

MIT — Faneraiy14.

Available Tools

1 tool
watch_ciДочекатись завершення GitHub Actions CIA

Чекає, поки GitHub Actions CI завершиться для поточного (або заданого) коміту в локальному git-репозиторії, і повертає підсумок ОДНИМ викликом: ok/conclusion/url, а за провалу - одразу хвіст логу невдалих кроків (--log-failed), без окремого запиту. Заміняє ручний цикл "push -> sleep -> gh run list -> (якщо впало) gh run view --log-failed".

Inputs: cwd (required), ref, workflow, timeout_ms, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 1 tool

    Disambiguation5/5

    Only one tool exists, so there is zero ambiguity in tool selection. The tool's purpose is clearly defined and distinct.

    Naming Consistency4/5

    With a single tool, naming consistency is trivially maintained. The name 'watch_ci' is descriptive and follows a verb_noun pattern, though no comparison set exists to evaluate full consistency.

    Tool Count5/5

    A single-purpose server with one tool is well-scoped. The tool encapsulates a complete workflow (waiting for CI and returning results), avoiding unnecessary fragmentation.

    Completeness4/5

    The tool covers the core CI-watching workflow effectively, including failure log retrieval. Minor gaps exist (e.g., no explicit cancel or list operations), but they are outside the tool's stated purpose and do not hinder its primary function.

    Maintenance

    ActivitySlowing
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers