MCP Server for Agent Belief Revision Contradiction Pruner Skill. Implements AGM Belief Revision (Alchourrón-Gärdenfors-Makinson) to manage an agent's propositional belief base, evaluate epistemic entrenchment, detect contradictory facts, and perform minimal contraction to incorporate new evidence without logical contradiction.
Two tools with basic schemas and descriptions, but significant gaps in parameter documentation, output schema clarity, and error handling. assert_belief has a vague 'value' parameter with no type constraint or description. get_world_state lacks any parameter descriptions (though it takes none). Neither tool documents return structure or error cases. Descriptions are present but minimal (under 100 chars). No input validation guidance, no error recovery hints, no security considerations. Naming is acceptable (verb_noun pattern), but parameter quality is poor.
Incorporate a propositional belief with epistemic entrenchment
Retrieve currently held consistent world beliefs
Parameter 'value' in assert_belief has no type constraint or description. Schema shows empty object {} for type, forcing LLM to guess what format is accepted (string, number, object, array?). This violates pattern:constrained-input and pattern:tool-description.
No output schema documented for either tool. assert_belief returns a dict with 'action' and 'belief' fields, but LLM cannot know this from the tool definition. get_world_state returns a dict mapping belief keys to values, but structure is undocumented. Violates pattern:tool (output schema required).
No error handling or recovery guidance. assert_belief can reject new evidence or revise beliefs, but LLM receives only a status dict with no guidance on what to do if rejection occurs. No error classification (retryable vs user-fixable). Violates pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Parameter descriptions missing or trivial. 'entrenchment' and 'source' have brief descriptions but lack format/range guidance (e.g., is entrenchment 0-1 or unbounded? what are valid source values?). 'key' description is missing entirely. Violates pattern:tool-description.
get_world_state description is vague ('Retrieve currently held consistent world beliefs'). Does not explain when to call it, what structure is returned, or how it relates to assert_belief. Lacks actionable context for LLM selection.