MCP server for BritCRM system providing tools for admin, billing, calendar, forms, leads, mail, and outreach management
Critical failures across all dimensions. No tool schemas visible in source code, cannot verify input parameter types, constraints, or output structures. Tool descriptions are inferred from names only; no actual descriptions found in the provided code. The server.js and package.json show a Next.js + Prisma CRM application, but the actual MCP tool definitions in src/mcp/tools/*.ts are not included in the source excerpt. Without access to the tool registration code, all schema and description scores default to 0. This is a hard cap per the rubric: 'If you cannot see the actual tool definition in the source (only inferred): cap that tool's overall at 50.' Since NO tool definitions are visible, the entire definition quality score collapses.
No tool definitions visible in source code. Cannot verify input schemas, parameter types, constraints, or descriptions for any of the 31 tools.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 28 | <=2025-11-25 | v2 |
Tool naming follows verb_noun convention (e.g., admin_create_user, leads_list_leads), which is good. However, without visible descriptions, LLMs cannot determine when to select each tool or what distinguishes similar tools (e.g., admin_get_user vs admin_list_users).
Destructive operations (admin_delete_user, billing_cancel_subscription, calendar_delete_event, forms_delete_form, leads_delete_lead, mail_delete_email, outreach_delete_campaign) lack visible confirmation/dry-run patterns and error handling guidance.
No visible pagination parameters (limit, offset, page_size) or result count documentation for list tools (admin_list_users, calendar_list_events, forms_list_forms, leads_list_leads, mail_list_emails, outreach_list_campaigns). Large result sets risk context window exhaustion.
No visible error handling or recovery guidance in tool definitions. LLMs cannot determine if errors are retryable, user-fixable, or fatal.