MCP server that turns messy goals into structured execution plans
Server has 4 tools with explicit schemas and descriptions, but quality is uneven. All tools have descriptions (10-100 chars) and input schemas with typed properties. However, descriptions are terse (avg 95 chars vs baseline 194), lack WHEN/WHY context, and omit error recovery guidance. Parameter descriptions are minimal. Output schemas are undocumented, LLMs cannot predict response structure. No tool annotations (readOnlyHint/destructiveHint). Error handling returns generic text without actionable recovery steps. Naming is clear (verb_noun pattern) but tools lack composition guidance.
Add information to a session bucket. Buckets: reality, people, strategy, operations, risk, metric.
Commit the execution plan and generate outputs (Markdown + ICS files).
Generate execution plan prompt. Returns a prompt for Claude to analyze session data and create a structured plan.
Start a new execution review session. Creates a session and provides guided questions.
Output schemas undocumented. LLMs cannot predict response structure (fields, types, pagination). All 4 tools return TextContent but downstream tool chaining requires structured data.
Descriptions lack WHEN/WHY context. 'Add information to a session bucket' does not explain when to call this vs propose_plan, or what happens if bucket is invalid. Baseline: 194 chars; actual avg: 95 chars.
Error handling returns generic text ('Error: ...') without recovery guidance. No categorization of retryable vs user-fixable errors. Pattern: recovery-guide missing.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | <=2025-11-25 | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). propose_plan is read-only; add_fact and commit_next_steps are destructive writes. LLMs cannot infer safety/retry semantics.
Parameter descriptions are minimal or absent. 'session_id' appears in 3 tools but has no description of format, lifetime, or how to obtain one. 'plan_json' expects JSON string but no schema or example provided.