MCP server for autonomous AI agent trust — cryptographic provenance (Chain of Consciousness with Bitcoin OpenTimestamps), decentralized reputation (Agent Rating Protocol with bilateral blind evaluation). Part of the 7-protocol Agent Trust Stack.
Server exposes 9 tools with clear naming (verb_noun pattern: coc_init, coc_add, arp_rate, etc.) and reasonable descriptions (avg ~80 chars). All tools have input schemas with type definitions and parameter descriptions. However, output schemas are NOT documented, LLMs cannot predict return structure. Parameter descriptions lack format constraints (e.g., 'score' accepts 0-100 OR 1-5 but this ambiguity is not resolved). Error handling is absent, no guidance on retryability, recovery steps, or invalid input feedback. Security model is local-file-only (good), but no audit logging or permission gates documented. Composition is sound (each tool has one responsibility), but no batch variants or pagination for list-like operations.
Check an agent's reputation score
Submit a bilateral blind rating for another agent
Append an entry (learn, decide, create, error, note, milestone, …)
Submit chain hash for timestamping (OTS + TSA)
Initialize a new hash chain
Get chain stats (length, agents, time span, event types)
Get the last N entries
Output schemas not documented. LLMs cannot predict return structure (fields, types, nesting). Breaks downstream tool chaining and forces agents to guess field names.
Parameter 'score' in arp_rate accepts '0-100 or 1-5 scale' but no enum or validation. Ambiguous constraint invites invalid input. Should declare enum or min/max bounds.
No error handling guidance. Tools lack recovery hints (e.g., 'If chain not found, call coc_init first'). Agents cannot self-correct on failures.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Verify chain integrity (hash linkage, sequence, completeness)
Return info about all 7 protocols with links
coc_tail lacks pagination. No limit parameter bounds (default 10, but max?). Large chains could return unbounded results, exhausting context window.
coc_anchor's 'tsa_url' parameter description says 'optional, uses default if not provided' but does not specify what the default is. Ambiguous for LLMs.