Agentic test management over MCP: an AI assistant can author test cases, plan manual executions, link automation to the cases it covers, cut releases and read project health in M00N Report, an AI-native test management platform.
Critical failure: The server advertises a single tool named 'dynamic' with no visible schema, no input parameters documented, and no concrete tool definitions in the codebase. Tools are fetched at runtime from the M00N Report API via apiClient.fetchTools(), making the tool definitions opaque to static analysis. The description states 'Tools are fetched dynamically from the M00N Report API at runtime via apiClient.fetchTools()' which is a technical implementation note, not a user-facing tool description explaining what the tool does, when to use it, or what it returns. No input schema is visible in the provided source code. The server lacks any evidence of parameter descriptions, type information, or return value documentation. This violates fundamental MCP tool definition practices: tools must have statically-declared schemas so clients and LLMs can understand how to invoke them before runtime.
Tools are fetched dynamically from the M00N Report API at runtime via apiClient.fetchTools()
No visible input schema for the 'dynamic' tool. Tools are fetched from API at runtime, making their schemas opaque to static analysis and client discovery. MCP requires tool definitions to be inspectable before invocation.
Tool description is a technical implementation note ('Tools are fetched dynamically...') rather than a user-facing explanation of what the tool does and when to use it. Descriptions must tell LLMs what the tool does, when to call it, and what it returns.
Tool name 'dynamic' is generic and provides no semantic information about its purpose. The name does not start with an action verb (get_, create_, search_, list_, etc.) or convey what the tool actually does.
No documented return/output schema. LLMs cannot plan downstream tool calls or extract data when output structure is unknown. The server fetches real tools from the API, but this is not reflected in any static MCP tool listing.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 13 | 2026-07-28+ | v2 |
Tool existence is inferred from code (apiClient.fetchTools()) rather than explicitly registered via server.setRequestHandler(ListToolsRequestSchema, ...). No actual tool definitions are visible in source; tools are dynamically generated at runtime.