MCP Server for Practical Byzantine Fault Tolerance (PBFT) Quorum Validator. Validates 3-phase PBFT consensus (Pre-Prepare, Prepare, Commit) and tolerates f malicious/faulty agents in a 3f+1 total agent swarm.
Both tools have minimal descriptions (under 100 chars) and lack parameter-level documentation. Input schemas are present with basic type info but lack descriptions for individual parameters. No output schema is documented. Tool names follow verb_noun pattern but descriptions are too terse to guide LLM selection. No error handling guidance, no idempotency markers, no security considerations documented.
Records commit vote and verifies 2f+1 commit quorum.
Records prepare vote and verifies 2f+1 prepare quorum.
Parameter descriptions missing. 'sender_id' and 'message' parameters lack descriptions explaining what values are valid, expected format, or constraints.
Output schema not documented. Tools return dicts with 'digest', 'prepare_votes'/'commit_votes', 'quorum_required', 'is_prepared'/'is_committed' but LLM has no schema to understand structure.
Tool descriptions too brief (under 100 chars). Do not explain WHEN to use each tool, what distinguishes prepare from commit, or prerequisites (e.g., must call add_prepare before add_commit).
No error handling guidance. If quorum not reached, if sender_id is invalid, or if message is empty, no recovery hints provided to LLM.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
No idempotency or state mutation documentation. Tools modify internal state (prepared_messages, committed_messages) but LLM is not told whether repeated calls are safe or have side effects.