MCP server for semantic spec indexing, governance analysis, and documentation drift detection
Pituitary defines 15 governance-focused tools with consistent naming (verb_noun pattern: search_specs, check_overlap, analyze_impact). All tools have descriptions (avg ~80 chars, within baseline 34-392). However, input schemas are partially visible: only 6 tools show explicit struct definitions (compareSpecsArgs, analyzeImpactArgs, etc.); the remaining 9 tools reference external types (index.SearchSpecRequest, analysis.OverlapRequest) that are not shown in source, making schema validation impossible. Output schemas are declared via mcpgo.WithOutputSchema but actual field definitions are opaque. Parameter descriptions exist but are terse (e.g., 'Indexed spec refs to compare' lacks format/constraint guidance). Error handling is not visible in the provided code snippet. No tool annotations (readOnlyHint, destructiveHint) despite all tools being READ_ONLY. Governance protocol guidance is well-structured but tool composition could be tighter, review_spec combines 4 operations, violating single-responsibility.
Analyze impacted specs, refs, and docs for an indexed spec. Per governance protocol: call AFTER accepting or modifying a spec.
Check whether code or a diff complies with accepted specs. Per governance protocol: call BEFORE committing.
Find documentation that contradicts accepted specs. Per governance protocol: call WHEN writing or updating documentation.
Detect overlapping indexed or draft specs.
Audit docs and specs for displaced or deprecated terminology.
Compare indexed specs and report tradeoffs.
Preview deterministic terminology edits without applying them.
Input schemas for 9 of 15 tools reference external types (index.SearchSpecRequest, analysis.OverlapRequest, etc.) not visible in source. Cannot verify parameter types, descriptions, or constraints. Violates schema documentation requirement.
Output schemas declared via mcpgo.WithOutputSchema but actual field definitions (mcpStatusResult, index.SearchSpecResult, etc.) are not fully visible. Cannot verify that responses include chaining IDs, pagination, or structured fields needed for downstream tool calls.
review_spec combines 4 operations (overlap, comparison, impact, doc drift) into one tool. Violates single-responsibility principle. Agents cannot compose these checks independently or retry individual steps on failure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2025-06-18+ | v2 |
Expand a chunk ID from get_intent_outline or review_spec outline_context into bounded local context. snapshot_fingerprint from the same prior result is required to detect stale handles.
Classify a file by its role in the workspace.
Preview deterministic doc-drift remediations without applying them.
Inspect a bounded outline for a spec or doc returned by search_specs. Intended sequence: search first, inspect outline, then call expand_intent_context for selected chunk IDs.
Return the accepted specs that govern a given file path via applies_to edges. Per governance protocol: call BEFORE modifying any file.
Run overlap, comparison, impact, and targeted doc drift as one workflow.
Search indexed spec sections semantically.
Get workspace status and governance protocol guidance.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all 15 tools being READ_ONLY. Agents cannot infer safety properties without explicit hints. Current MCP spec (2026-07-28) expects tool annotations.
Parameter descriptions are terse (avg ~40 chars) and lack format/constraint guidance. E.g., 'Indexed spec refs to compare' does not explain format, cardinality, or valid ref patterns. Descriptions should be 50-200 chars with actionable constraints.