Evidence-linked architecture claim and implementation drift analysis for MCP clients
Architecture Drift MCP demonstrates solid tool design with consistent naming (verb_noun pattern), comprehensive parameter descriptions, and proper JSON Schema definitions. All 10 tools have clear, actionable descriptions (avg ~120 chars). Parameters are well-typed with constraints (minLength, arrays). Tool annotations (readOnlyHint/destructiveHint) are correctly applied. However, output schemas lack explicit documentation in descriptions, error handling is minimal (no recovery guidance or categorization), and some parameter relationships (e.g., use_sampling dependency on extract_claims) could be clearer. No security concerns detected (no secrets in params, proper path validation via ensure_project_root). Composition is sound, tools form a logical workflow (discover → extract → compare → adjudicate → report).
Ask the host model to adjudicate drift using only cited, known claim and fact IDs.
Generate a traceable, redacted Markdown report of the audit snapshot.
Compare normalized claims and facts; absence remains suspected or unknown.
Create a bounded audit and persist its redacted architecture objective.
Refresh the bounded project inventory and invalidate derived stale records.
Extract claims and reject every host claim without a valid line citation.
Extract current implementation facts from discovered non-documentation files.
Output schemas not documented in tool descriptions. LLMs cannot infer what fields get_audit, discover_sources, or extract_claims return, forcing them to guess downstream field names and risk broken tool chains.
Error handling lacks recovery guidance. ValueError exceptions (e.g., 'run discover_sources before extracting claims') are raised but not caught with actionable next-step hints for the LLM.
Parameter relationship undocumented: use_sampling in extract_claims depends on the host model being available, but this dependency is not stated. LLMs may pass use_sampling=true without understanding the prerequisite.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Return the current source, claim, fact, comparison, and proposal snapshot.
List persisted audits without reading their project trees.
Generate review-only patch proposals for confirmed drift in documentation.
No pagination or result limits documented. discover_sources and extract_* tools may return unbounded lists (e.g., all sources, all claims). Large projects could exhaust context windows.
Dry-run or confirmation step missing for destructive operations. adjudicate_drift and propose_patches modify audit state but lack a preview/confirm pattern to prevent accidental overwrites.