MCP server for interacting with Data.gouv.fr API
Single tool with bare-minimum implementation. Schema is present but minimal. Description is adequate in length (159 chars, within baseline 34-392 range) but lacks critical details about prerequisites, return structure, and error conditions. No input validation guidance, no output schema documentation, no error recovery hints. Input parameter lacks format/constraint documentation. No pagination support despite potentially returning multiple results. Basic implementation suitable for internal demo, well below production baseline.
Find up to date information (name, address, list of directors, sector, etc.) about a company listed in France by providing a search query (name of the company, of the CEO, address, etc.)
No output schema documented. LLM cannot anticipate response structure (what fields the API returns, how to extract company_id for chained calls, what constitutes a 'not found' response). Violates pattern:tool-composition since output cannot guide downstream operations.
Input parameter 'query' lacks constraint documentation. No guidance on minimum/maximum length, required format, or examples of valid inputs (company name vs CEO name vs address). LLM may pass invalid or ambiguous queries.
No error recovery guidance. Tool can fail if API is down, query is malformed, or no results found. Response returns raw JSON error or raw API JSON without interpreting for LLM. Violates pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 62 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 43 | - | v1 |
No pagination support. If search returns 10+ results, API returns only first (per_page=1 hardcoded), but description says 'Find up to date information' suggesting multiple results possible. Response structure not documented, cannot guide LLM to interpret empty result set.
Description does not specify when to call this tool vs other lookup mechanisms, or what prerequisites exist (must be France-listed company, requires valid legal entity). Missing WHEN guidance per pattern:tool-description baseline.
Tool name 'search-company' is clear (verb_noun format), but no disambiguation if multiple search tools would exist. Acceptable for single-tool server, but naming could be more specific: 'search_french_company' or 'search_company_france' to avoid confusion in larger MCP ecosystems.