MCP server for Supertoinette. Read French recipes, rescale them, browse categories, ingredient sheets and wine pairings.
Server has 6 well-named, read-only tools with complete JSON schemas and descriptions. All tools follow verb_noun naming (get_, search_, list_, browse_). Schemas include proper types and required fields. However, parameter descriptions are minimal (10-30 chars), lacking context on format, constraints, or when to use each tool. Output schemas are not documented in the source. Error handling is absent, no recovery guidance or actionable error messages visible. Tool descriptions are adequate (30-80 chars) but could better explain when to call each tool vs. alternatives (e.g., search_recipes vs. browse_recipes distinction).
Read one category's recipes
Read one recipe
Read the wines ranked for a dish
List the categories recipes are browsed by
Rescale a list of ingredients
Search the recipes
Parameter descriptions are too brief (10-30 chars). 'The recipe identifier from its address' and 'Search query for recipes' lack guidance on format, constraints, or examples. LLMs cannot infer whether 'id' is numeric, alphanumeric, or a URL slug.
No output schema documentation visible in source. Tools return data but LLMs cannot plan downstream calls without knowing response structure (field names, types, pagination). Baseline: 100% of A+ tools document return types.
No error handling or recovery guidance visible. Tools lack actionable error messages (e.g., 'Recipe not found. Try search_recipes() with a partial name'). Agents cannot self-correct on failures.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2025-06-18+ | v2 |
Tool descriptions do not explain when to use each tool vs. alternatives. 'search_recipes' vs. 'browse_recipes' distinction is unclear, when should an LLM call one instead of the other? Baseline: descriptions should answer 'When should the LLM call it instead of a similar tool?'
Pagination parameters ('page') lack constraints. No documentation of page size limits, max page number, or total count in response. Baseline: tools returning lists should accept limit and return total count or next_cursor.