skip to content

MCP tools

Every tool the run-scoped MCP server advertises, its arguments, and whether it reads the run or acts on it.

MCP server tools — 12 rows exported from src/mcp/tools.rs

The read tools

read

run_status

The resolved run's title, lifecycle state, state-unit progress, and display progress.

Takes no arguments.

Any argument not listed above is rejected.

read

list_runs

Every gantry run visible in the repo, with name, state, and display progress. Defaults to the full verbose set; pass scope="active" for the non-finished set shown by ordinary `gantry list`.

argument accepts what it is
scope
optional
string · one of all, active `all` (default) returns the full verbose run set; `active` returns every non-finished run, matching ordinary `gantry list`.

Any argument not listed above is rejected.

read

read_ledger

The run's PROGRESS.md ledger: each sprint's id, slug, and verdict.

Takes no arguments.

Any argument not listed above is rejected.

read

read_plan

The run's plan / spec content.

Takes no arguments.

Any argument not listed above is rejected.

read

list_tasks

The run's tasks as the pattern declares them: a task tree at the run's own depth, each node carrying the pattern-supplied level noun (a flat run's sprints, a milestone run's milestones and their sprints, a user-authored pattern's own units).

Takes no arguments.

Any argument not listed above is rejected.

read

read_report

A named diagnosis report under the run's reports/ directory.

argument accepts what it is
name
required
string The report file name under reports/.

Any argument not listed above is rejected.

read

tail_history

Recent records from the run's history.jsonl activity journal, with line/byte bounds.

argument accepts what it is
lines
optional
integer · at least 0 Trailing line count to return.
max_bytes
optional
integer · at least 0 Maximum bytes to return.

Any argument not listed above is rejected.

read

tail_log

A named stage log with line/byte bounds. `task_path` addresses the log by a task's position in the run tree — its enclosing sub-orchestration ids, outermost first — so a log at any depth is reachable; omit it for a run-root log.

argument accepts what it is
lines
optional
integer · at least 0 Trailing line count to return.
max_bytes
optional
integer · at least 0 Maximum bytes to return.
name
required
string The log file name under the selected task's logs/.
task_path
optional
array of string The task's position in the run tree — its enclosing sub-orchestration ids, outermost first. Omit or empty for a run-root log.

Any argument not listed above is rejected.

read

worktree_info

The run's worktree git state: branch, status, recent commits, and the diff against main.

Takes no arguments.

Any argument not listed above is rejected.

read

list_processes

Every process group the run recorded, from the same process model `gantry ps` and the build-run processes overlay render: the owning engine, and per group its state (live, stray, reaped, exited, stale), its process-group id, what it was spawned for, and its recorded and sampled fields. Read-only: it takes no arguments, signals nothing, and reports a stray group's remedy only as the `gantry stop <name>` command string.

Takes no arguments.

Any argument not listed above is rejected.

The action tools

action

run_bash

Run a shell command in the run's worktree, wrapped in the same containment gantry uses for its coding agents; returns stdout, stderr, and the exit status.

argument accepts what it is
command
required
string The shell command to run in the run's worktree.
timeout_secs
optional
integer · at least 1 Per-call wall-clock timeout in seconds (default 120, capped at 3600).

Any argument not listed above is rejected.

action

answer_prompt

Answer a pending prompt on the run's live engine, correlated by its prompt id — a run-control action over gantry's command channel. Fails cleanly when no live engine is attached.

argument accepts what it is
choice
optional
string The chosen option for a choice prompt. Provide exactly one of confirm, text, or choice.
confirm
optional
boolean The y/N answer to a confirm prompt. Provide exactly one of confirm, text, or choice.
prompt_id
required
integer · at least 0 The correlation id from the PromptNeeded event identifying the pending prompt to answer.
text
optional
string The free-text answer to a text prompt. Provide exactly one of confirm, text, or choice.

Any argument not listed above is rejected.