| title | MCP Reference |
|---|---|
| generated_at | 2026-04-08 21:17:50 UTC |
| generator | method sync refs |
| generated_from_commit | ecde6ac00e798d68bf69b2c2bfb9044ad44d47e9 |
| provenance_level | artifact_history |
METHOD exposes its workspace operations through a Model Context
Protocol (MCP) server. Start it with method mcp — it communicates
over stdio using JSON-RPC.
Every tool requires a workspace parameter: the absolute path to the
METHOD workspace root directory. This makes the server
workspace-agnostic — a single instance can serve multiple projects.
Inspect METHOD workspace health and report concrete problems with suggested fixes, even when the workspace is partially broken.
Generate a SHA-locked doctor health receipt anchored to the current commit, for release gate verification.
Plan or apply bounded doctor-guided repairs for missing directories, missing scaffold files, and frontmatter stubs.
Parameters:
mode(required)string(plan, apply) — Whether to return a repair plan or apply the same bounded repair set.
Run doctor, apply the bounded repair set, then re-check the workspace so callers can normalize a repo in one step.
Get PR review / merge-readiness state for the current branch or an explicit PR. pr and currentBranch are mutually exclusive; when pr is omitted, current-branch resolution is the default behavior.
Parameters:
pr(optional)integer— Explicit PR number to inspectcurrentBranch(optional)boolean— Resolve the PR from the current branch (default when pr is omitted)
Get the current status of the METHOD workspace (backlog lanes, active cycles, legend health)
Parameters:
summary(optional)boolean— Return a compact structured summary instead of the fully expanded workspace status (default: false)
Capture a new raw idea into the inbox
Parameters:
idea(required)stringlegend(optional)stringtitle(optional)stringbody(optional)string— Optional markdown body. Defaults to the idea text when omitted.source(optional)string— Optional source such as a reviewer, channel, or system.capturedAt(optional)string— Optional capture date in YYYY-MM-DD format.
Create a shaped backlog note directly in the requested backlog lane.
Parameters:
lane(required)string— Destination backlog lane such asbad-codeorv1.1.0.title(required)string— Backlog note title used for frontmatter, heading, and slug derivation.legend(optional)string— Optional legend code prefix such as PROCESS.body(optional)string— Optional markdown body to place under the heading.
Move a live backlog note into another backlog lane.
Parameters:
item(required)string— Backlog path, stem, or slug that resolves to exactly one live backlog note.to(required)string— Destination backlog lane such asasap,bad-code, orv1.1.0.
Update explicit schema-backed metadata on a live backlog note without opening arbitrary frontmatter editing.
Parameters:
item(required)string— Backlog path, stem, or slug that resolves to exactly one live backlog note.owner(optional)string— Optional owner role to set.clearOwner(optional)boolean— When true, remove the owner field.priority(optional)string— Optional priority to set, such ashighormedium.clearPriority(optional)boolean— When true, remove the priority field.keywords(optional)array— Optional replacement keyword list.clearKeywords(optional)boolean— When true, remove the keywords field.blockedBy(optional)array— Optional replacementblocked_byreference list.clearBlockedBy(optional)boolean— When true, remove theblocked_byfield.blocks(optional)array— Optional replacementblocksreference list.clearBlocks(optional)boolean— When true, remove theblocksfield.
Enumerate live backlog items as structured data with explicit frontmatter metadata such as owner, priority, keywords, and declared dependency refs.
Parameters:
lane(optional)string— Optional backlog lane filter such asbad-codeorv1.1.0.legend(optional)string— Optional legend filter such as PROCESS.priority(optional)string— Optional priority filter such asmedium.keyword(optional)string— Optional explicit frontmatter keyword filter.owner(optional)string— Optional explicit frontmatter owner filter.ready(optional)boolean— Optional readiness filter.truereturns items without declaredblocked_byrefs;falsereturns blocked items.hasAcceptanceCriteria(optional)boolean— Optional acceptance-criteria presence filter.blockedBy(optional)string— Optional declaredblocked_byreference filter.blocks(optional)string— Optional declaredblocksreference filter.sort(optional)string— Optional backlog query sort mode:lane,priority, orpath. Defaults tolane.limit(optional)integer— Maximum number of returned items. Defaults to 50 and may not exceed 100.
Return the live backlog dependency graph from blocked_by / blocks frontmatter, optionally focusing on one item, ready work, or the critical path.
Parameters:
item(optional)string— Optional backlog path, stem, or slug to focus on.readyOnly(optional)boolean— When true, request the unblocked layer-0 backlog items.criticalPath(optional)boolean— When true, include the longest blocker chain to the focused item. Requiresitem.
Return a bounded advisory menu of sensible next backlog items using lane order, declared frontmatter, dependency readiness, current status, and literal BEARING mentions.
Parameters:
lane(optional)string— Optional backlog lane filter such asasaporv1.1.0.legend(optional)string— Optional legend filter such as PROCESS.priority(optional)string— Optional priority filter such ashigh.keyword(optional)string— Optional explicit frontmatter keyword filter.owner(optional)string— Optional explicit frontmatter owner filter.includeBlocked(optional)boolean— When true, keep blocked items in the candidate set even when ready work exists.limit(optional)integer— Maximum number of recommendations. Defaults to 3 and may not exceed 10.
Report which expected repo signposts exist, which are missing, and which can be initialized by helper commands.
Initialize a narrowly supported missing canonical signpost such as BEARING, GUIDE, or ARCHITECTURE when supported by the workspace.
Parameters:
name(required)string— Canonical signpost name or path, such as BEARING or docs/GUIDE.md.
Retire a live backlog note into the graveyard with an explicit disposition note instead of silently deleting it.
Parameters:
item(required)string— Live backlog path, stem, or slug that resolves to exactly one backlog note.reason(required)string— Required retirement reason recorded under a graveyard Disposition section.replacement(optional)string— Optional replacement path or successor reference to record in the tombstone.dryRun(optional)boolean— When true, return the planned graveyard move without mutating the repo.
Capture a behavior spike into the inbox with SPIKE legend and structured scaffolding.
Parameters:
goal(required)string— What the spike is trying to prove or learntitle(optional)string— Optional override for the item titleconstraints(optional)string— Stack constraints or scope notes
Promote a backlog item into a new cycle packet, using release-scoped paths when the backlog item carries release metadata.
Parameters:
item(required)string
Check active cycle playback questions against tests
Parameters:
cycle(optional)string
Close an active cycle into its retro packet. Requires witnessVerified=true to confirm human witness verification.
Parameters:
cycle(optional)stringdriftCheck(required)booleanoutcome(required)string(hill-met, partial, not-met)witnessVerified(required)boolean— Human attestation that the witness and human playback questions have been verified.summary(optional)string— Retro summary.
Perform the Ship Sync maneuver (update CHANGELOG.md and BEARING.md)
Refresh generated reference docs without mutating ship-only artifacts such as CHANGELOG.md or docs/BEARING.md.
Synchronize backlog with GitHub Issues
Parameters:
push(optional)boolean— Update GitHub issues with local changes (default: true)pull(optional)boolean— Update local backlog with GitHub changes
Automate terminal evidence capture for a cycle
Parameters:
cycle(optional)string
All tools return a human-readable text message in content.
Machine-readable callers should consume structuredContent.
On success, structuredContent includes:
toolok: trueresult
On failure, tools set isError: true and structuredContent includes:
toolok: falseerror.message
Common errors: workspace is required, not a METHOD workspace,
No active cycles found.