Production-grade e-commerce & content compliance policy evaluator. Scans for prohibited claims, trademark infringement, and regulatory non-compliance.
Single tool with critical definition gaps. Tool name 'evaluate_policy_compliance' is acceptable (verb_noun pattern), but input schema is completely absent from the MCP registration. The tools/list response shows only name and description, no input schema, parameter types, or descriptions. The client.py implementation reveals parameters (text_content, category) exist, but they are NOT exposed in the MCP protocol layer. Description is 95 chars (within 10-1024 range) but generic and lacks WHEN/WHY context. No output schema documented. No error handling guidance. No tool annotations. STDIO transport caps protocol readiness at 50.
Evaluates advertising and e-commerce text for regulatory policy compliance.
Input schema completely missing from MCP tool registration. tools/list returns only name and description; no inputSchema field. Parameters exist in client.py but are not exposed to the protocol.
Tool description lacks actionable context. Does not explain WHEN to use this tool, what compliance frameworks it checks (FTC/FDA mentioned only in code), or what the output fields mean. LLM cannot determine if this is the right tool for a given task.
No output schema documented. Response structure (evaluation_id, compliance_score, compliance_status, violations_detected_count, remediation_actions) is inferred from code, not declared in the protocol. LLM cannot plan downstream operations.
Parameter descriptions missing entirely. text_content and category parameters are hardcoded in client.py with defaults but not declared in the MCP schema. LLM cannot understand what values are valid or required.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 26 | 2026-07-28+ | v2 |
No error handling or recovery guidance. If evaluation fails or input is invalid, the tool returns no actionable error message. LLM has no way to self-correct or retry intelligently.