A Model Context Protocol server that provides database access tools for querying store and staff information from a PostgreSQL database using Entity Framework Core
Single tool with adequate naming and schema but minimal description depth. GetStoreByStaffName follows verb_noun convention and has proper parameter types (string, string) with descriptions. However, the tool description (67 chars) is below the 194-char baseline and lacks context on when to use it, what it returns, or error cases. No output schema documented. No error handling guidance. The tool is read-only but lacks explicit idempotent annotation. Overall structure is present but falls short of production quality.
Get the film store associated with a staff member by their first and last name.
Tool description is too brief (67 chars vs 194-char baseline). Lacks context on return value structure, when to use it vs alternatives, and error cases.
No output schema documented. LLM cannot predict response structure (staff details, store info, error messages) or plan downstream operations.
Error handling lacks recovery guidance. Tool returns plain text strings for 'not found' and 'no store' cases. LLM cannot distinguish error from success or know what to do next.
No tool annotation for idempotency. Tool is read-only and safe to retry, but lacks explicit idempotentHint in schema to signal this to the agent.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
Single tool limits composition. No batch variant for looking up multiple staff members. Agents calling this in a loop waste tokens and latency.