Audit-grade AI memory — the AI that remembers what you've ruled out. Exposes a Belief Ledger via MCP tools for reading and proposing beliefs, with tamper-evident audit chain.
Palamedes demonstrates solid tool design with clear naming conventions (verb_noun pattern: list_beliefs, search_beliefs, propose_belief) and comprehensive parameter descriptions. All 10 tools have documented input schemas with type definitions and parameter descriptions. However, tool descriptions vary in depth, some are concise (get_belief: 11 words) while others are more thorough (propose_belief: 18 words). Output schemas are not explicitly documented in the source code provided. Error handling guidance is minimal; tools lack recovery hints for common failure modes. The server implements a belief ledger system with audit-grade semantics, but the MCP interface could better guide LLM reasoning about when to use each tool vs. similar ones.
Walk the tamper-evident audit chain. Optionally filter by belief_id, timestamp range, or limit.
Check a set of beliefs for internal contradictions. Returns pairs where one's provenance contradicts or corrects the other.
Propose a correction to a single belief: contested, corrected, or expired.
Bulk-correct multiple beliefs matching a pattern: statement substring, category, status, or trust_class.
Fetch a single belief with all versions, provenance edges, and recent receipts.
Query the user's Belief Ledger. Read-only. Returns up to `limit` rows, newest first.
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., belief_id from list_beliefs for use in get_belief). Responses must include all IDs needed for tool chaining.
get_belief description is too brief (11 words). Does not explain what 'versions', 'provenance edges', and 'recent receipts' mean or when to call this vs. list_beliefs. LLMs need context to select the right tool.
No error recovery guidance. Tools lack descriptions of failure modes (e.g., 'belief not found', 'invalid UUID format') and what the LLM should do next. Agents cannot self-correct on errors.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | <=2025-11-25 | v2 |
Propose a new belief for the user to accept or reject. Lands in the audit inbox; never auto-asserts.
Retrieve the beliefs that were cited in a specific assistant turn, with co-recall graph edges.
Report an observed outcome for a belief: refuted, expired, or confirmed. Lands as a proposal in the audit inbox.
Natural-language query over the belief corpus via embedding similarity.
Pagination not documented for list_beliefs and audit_trail. No mention of whether results are capped, how to fetch next page, or total count. Large result sets could exhaust context.
Tool descriptions lack dependency hints. E.g., propose_belief does not explain that it lands in an 'audit inbox' and requires user acceptance, LLMs may assume it auto-asserts. Similar clarity gaps in report_outcome and correct_belief.