Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

MCP Tools

Coding agents talk to nitpin through the nitpin MCP server — wired in by nitpin init (per repo) or nitpin install (user-global) and started automatically by the agent. This page is the tool surface, for the curious and for anyone building their own agent integration.

The server resolves its project from the directory the agent runs in — the repo’s .nitpin/ store, its nitpin.yaml link, or the app’s active project — so the same tools work in any wired repo.

Reading issues

ToolWhat it does
list_issues(state?, unclaimed?, tag?)The backlog: number, title, state, tags, priority, sub-issue counts, any active claim, split lineage. Filters compose — by state (unresolved, in_progress, resolved, wont_fix, split), hiding claimed issues, or by #word tag.
peek_issues(numbers)A token-lean, text-only view of specific issues — notes, statuses, anchors — without images. The cheap way to survey.
get_issue(number, image?)One issue in full: body, sub-issues with anchor geometry and (for Live captures) CSS selectors, the comment thread, and imagery. image is focused (default — a crop per anchored sub-issue plus a downscaled overview), full (the whole clean frame), or none. Pasted reference images ride along, labeled.
get_issue_rendered(number)The same issue with the whole annotated frame — every badge drawn — for when one view of everything beats crops.

Resolving

ToolWhat it does
resolve_sub_issue(issue, sub_issue, resolution, note?, commit?, confidence?, …)Mark one sub-issue fixed or wont_fix, with a short note for the thread, the commit that carried the fix, a self-rated confidence (high/medium/low), a machine-readable revert hint, and optional model/token receipts. Releases the caller’s claim; returns the issue’s new rolled-up state.
reopen_sub_issue(issue, sub_issue, note?)Return a reverted sub-issue to the open backlog, clearing its stale fix metadata. The last step of a revert — the code must already be reverted.
add_comment(issue, text, sub_issue?)Join the discussion thread — the agent’s voice for questions and context (your captured words are never edited).
suggest_issues(issue, suggestions)File out-of-scope improvements as pending suggested issues against the issue being worked — each with a title, notes, and optional pins/regions on the source capture. Pending until you accept them in the Cockpit.

Claims & progress

ToolWhat it does
claim_issue(number)Claim every free unresolved sub-issue of an issue. Partial by design: returns what was granted and what another agent alreadyClaimed.
claim_sub_issue(issue, sub_issue)Claim a single sub-issue — for genuinely independent work split across agents.
claim_cluster(id)Claim a whole triage cluster in one call.
release_issue / release_sub_issue / release_clusterHand work back (idempotent; an agent can only release its own claims).
post_progress(issue, sub_issue, text)The one-line, present-tense status you see live in the Cockpit — overwritten on every call, tied to the claim, gone when the work is done.

Claims renew themselves server-side — agents never heartbeat — and expire on their own if an agent dies. In a one-at-a-time project, the server grants nothing while any other agent holds a claim. See Claims & Parallel Agents.

Triage

ToolWhat it does
list_clusters()The current triage: clusters with labels, summaries and members, the ungrouped issues, your drag-corrections, and whether a re-triage is recommended.
set_clusters({clusters, overrides?, briefs?, scope?})Write a triage pass: the clusters (in priority order), your surviving corrections, and per-sub-issue briefs (size S/M/L/XL + optional code hints). scope limits a partial re-triage that merges instead of replacing.
split_issue(issue, groups)Split an issue whose sub-issues are unrelated into focused new issues; the original remains as a linked breadcrumb.

Tune

propose_kit(suggestions) and record_kit(artifacts, failed?) are the write channel of the Tune wizard’s analyze and apply passes. They’re bound to the app’s running Tune session — an agent can only call them when the wizard dispatched it — so they’re not part of the general agent surface.

Guides

ToolWhat it does
get_guide(topic)The full playbook for a job, served by the server itself so it’s always current: fix (work the backlog), triage (reshape it), revert (undo one landed fix), tune-analyze / tune-apply (the Tune passes). Agents read the guide before acting — it’s the authoritative version of the loops described in this book.