Effect-native Model Context Protocol SDK for TypeScript, targeting MCP 2026-07-28
This server exhibits significant definition quality gaps. Of 23 tools, most lack proper parameter descriptions and have minimal documentation. Tools like 'test_simple_text', 'test_image_content', 'test_audio_content' have empty input schemas ({}), violating the requirement that every parameter needs a description. Many tool names are generic ('test_*', 'process') rather than action-verb patterns. Descriptions are present but often trivial (e.g., 'Tests simple text content response'). The server appears to be a test/demo fixture rather than production-grade tooling. Only 'read_file', 'header_probe', and a few agent-facing tools show reasonable parameter documentation. No output schemas are documented anywhere in the visible code.
Approves a deployment window only when called with the policy version
Archives a paid invoice only after the caller confirms its paid status
Calculates the SLA deadline from start time and duration
Creates the required launch checklist from a project name
Creates a user-facing incident update draft from incident facts
Drafts a support reply. ticketId must use TCK-<number> and tone must be calm
Tests HTTP custom header parameter handling
13 of 23 tools have empty input schemas ({}), violating the requirement that every parameter needs a description and type. Tools: test_simple_text, test_image_content, test_audio_content, test_embedded_resource, test_multiple_content_types, test_error_response, test_error_handling, test_missing_capability, test_trigger_prompt_change, test_trigger_tool_change, test_logging_tool, test_streaming_elicitation.
Generic, non-action-verb tool names ('test_*', 'process') do not follow verb_noun convention. LLMs cannot infer intent from names like 'test_simple_text' or 'process'. Rename to action-oriented names (e.g., 'generate_text', 'validate_response').
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Processes a thing
Read a file from the workspace
Tests audio content response
Tests embedded resource content response
Tests thrown tool errors
Tests tool error responses
Tests image content response
Completes without logging when no log level is supplied
Tests missing sampling capability handling
Tests response with multiple content types
Tests simple text content response
Tests a request-state-only incomplete result
Tests tool invocation while logging is enabled
Tests progress-token compatible tool invocation
Triggers a prompt list changed notification
Triggers a tool list changed notification
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields without knowing what each tool returns. Add explicit return type documentation.
Tool 'header_probe' uses non-standard parameter annotation 'x-mcp-header' without explanation. This is not part of the MCP 2026-07-28 spec. Clarify the purpose and document how this parameter differs from standard inputs.
No error handling guidance documented. Tools do not indicate what errors are retryable, user-fixable, or fatal. No recovery suggestions provided (e.g., 'If file not found, try list_files() first').