MCP server that provides validation and safety checks for multi-agent LLM systems, including JSON schema validation, hallucination detection, data freshness checks, and cross-reference validation
Five tools with reasonable naming (verb_noun pattern) and descriptions (100-150 chars), but critical gaps in schema completeness and parameter documentation. Input schemas are visible but lack proper JSON Schema type definitions for nested objects and arrays. Parameters like 'sensitivity_level' and 'content_type' lack enum constraints despite accepting known values. No output schemas documented. Error handling is absent, tools do not guide recovery or categorize failures. The server is a client library (guard_client.py) wrapping validation logic, not a full MCP server implementation with proper tool registration.
Cross-reference data from multiple agent sources to verify consistency
Scan text for hallucination patterns including uncertainty, fabrication, and evasion markers
Calculate overall reliability score across multiple outputs
Check if data is recent enough based on timestamp field and maximum age threshold
Validate JSON data against expected schema
No output schemas documented. Tools return results but LLMs cannot predict field names, types, or structure for downstream chaining.
Parameters accept known enums (sensitivity_level: low|medium|high, content_type: factual_response|analysis) but lack enum constraints in schema. Free-form strings invite hallucinated values.
No error handling guidance. Tools do not indicate what to do on failure (retry, ask user, fatal). Errors are not categorized or actionable.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
Input schemas use 'type: any' for data parameters (verify_json_schema, validate_data_freshness, cross_reference_check). This bypasses validation and prevents LLMs from understanding expected structure.
Source code shows guard_client.py is a Python library, not an MCP server. No evidence of MCP protocol implementation (no tool registration via MCP, no transport layer, no _meta handling).