MCP tool specification analyzer and auto-fixer. Provides deterministic scoring, auto-fix, and LLM-powered polishing for MCP tool contracts.
This server has 3 tools with inconsistent quality. searchUsers lacks parameter descriptions entirely (offset has empty schema). create-new-project has minimal descriptions and missing owner_id description. get_weather is the strongest with full descriptions, enums, and annotations. Overall: naming is acceptable (verb-noun pattern), but parameter documentation is severely deficient. No output schemas documented. Error handling guidance absent. This is a D-grade server with one bright spot.
Creates a project
Retrieves current weather data for a specified location. Returns temperature, humidity, wind speed, and conditions. Throws an error if the location is not found.
search for users
searchUsers: offset parameter has empty schema object {}, no type, no description. Violates JSON Schema and leaves LLM unable to infer valid input.
searchUsers: query and limit parameters lack descriptions. LLM cannot determine what query searches (users by name? email? ID?) or what limit means (max results? timeout?).
create-new-project: owner_id parameter has no description. Is it required? What format (UUID, email, username)? LLM must guess.
No tool documents its output schema. LLMs cannot plan downstream calls or extract required fields (e.g., does searchUsers return user_id, user_name, or both?).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
No error handling guidance. If searchUsers returns 0 results, should LLM retry with broader query or ask user? If create-new-project fails, is it retryable?