MCP server for human-in-the-loop interactive feedback in AI-assisted development.
Single tool with complete schema and detailed descriptions. Tool name 'interactive_feedback' uses verb_noun pattern appropriately. All three parameters have type definitions and descriptions (72-180 chars each). Output is structured (TextContent | ImageContent list). However, descriptions are prescriptive/restrictive rather than LLM-optimized, and lack guidance on when/why to use the tool. No error handling documentation or recovery paths. Parameter descriptions focus on format constraints rather than intent. Missing output schema documentation.
Request interactive feedback for a given project directory and summary. The user may attach images which will be returned as ImageContent alongside the text feedback. IMPORTANT - rules for AI agents calling this tool: 1. `request_name` MUST always be provided with a meaningful task title. Never omit it or leave it blank. 2. `summary` MUST be written in standard Markdown format using headings, lists, bold, or code blocks.
Tool description lacks LLM-optimized guidance. Currently reads as UI documentation ('The user may attach images') rather than agent decision logic ('Call this when you need human review of code changes before proceeding'). Descriptions should answer WHEN to use the tool, not just WHAT it does.
Parameter descriptions are overly prescriptive about format (Markdown syntax rules, title length 5-10 words) rather than explaining intent. 'request_name' description should be: 'A concise title for the task (5-10 words). Used in the window title bar to help the user understand what feedback is being requested.' Current version reads like a constraint list, not guidance.
No error handling documentation. Tool can fail if UI subprocess crashes, output file is unreadable, or images cannot be loaded. No guidance for LLM on recovery: should it retry? Ask user? What does 'Failed to launch feedback UI' mean? Missing pattern:recovery-guide.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
Output schema not documented. Tool returns List[TextContent | ImageContent] but LLM has no schema reference. What fields does TextContent have? What mimeType values are possible? Undocumented output forces LLM to infer structure, risking parsing errors.
Tool description includes example values ('Refactor auth module', 'Add dark mode support') in the request_name parameter description. LLMs tend to reuse examples literally rather than adapt to context. Replace with format constraints (length, character set) instead.