MCP server wrapping the Spec-Driven Development lifecycle. One atomic MCP call replaces ~15 hand-edits per spec claim / close cycle. Built for Bastion, Citadel operators, Citadel customers, and public agent workflows.
- 19 MCP tools + 1 diagnostic, covering every lifecycle event from DRAFT through DONE — and back via
spec_reopen(DONE → IN_PROGRESS),spec_unblock(BLOCKED → IN_PROGRESS), andspec_unpark(PARKED → IN_PROGRESS). - Three shipped profiles with inheritance:
default → bastion → citadel. - Atomic by default — all-or-nothing edits; failed mid-operation tools restore pre-call state.
- Drift-impossible invariants —
spec.mdstatus,tasks.mdstatus, on-disk path, andspecs/README.mdindex always agree after any tool's success. - Local-only — no telemetry, no remote API, runs over MCP stdio.
- MIT licensed, public OSS.
| You are… | Start here |
|---|---|
| An agent / LLM working in this repo | AGENTS.md |
| Installing as a user | HUMANS.md → docs/install.md |
| Looking up a tool's schema | docs/mcp-tools.md |
| Looking up file layout, state machine, FS contract | docs/architecture.md |
| Looking up profile config | docs/profile-system.md |
| Reading architectural decisions | docs/decisions.md |
| Contributing | CONTRIBUTING.md |
| Reporting a vulnerability | SECURITY.md |