27 tools with complete naming (verb_noun pattern) and descriptions present. However, critical gaps undermine quality: (1) Parameter descriptions are minimal or generic, most lack format/constraint details required by pattern:constrained-input. E.g., 'counterparty' appears in 15+ tools described only as 'hex pubkey, "self", or "anyone"' with no validation guidance. (2) Output schemas are entirely undocumented, no tool declares what fields it returns, violating pattern:tool and pattern:response-shaper. (3) Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. (4) Complex nested parameters (e.g., 'outputs' array with object items in createAction) lack schema detail. (5) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Naming is strong (all verb-prefixed, clear intent), but parameter and output documentation is production-incomplete.
Abort an action by reference
Acquire a certificate from the wallet
Create a transaction action with outputs and optional signing/processing
Create an HMAC over data using a wallet key
Create a signature over data using a wallet key
Decrypt data using a wallet key
Discover certificates by attributes
Output schemas completely undocumented. No tool declares what fields it returns, violating pattern:tool and pattern:response-shaper. LLMs cannot plan downstream calls or extract required data.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Discover certificates by identity key
Encrypt data using a wallet key
Get a block header for a specific height
Get the current block height
Get the current network (mainnet or testnet)
Get a public key from the wallet, optionally the identity key or a derived key for a protocol/counterparty
Get the wallet version
Internalize an incoming transaction as a wallet action
Check if the wallet is authenticated
List wallet actions with optional filtering by labels
List certificates in the wallet
List unspent outputs from a basket
Prove a certificate with a transaction
Relinquish a certificate
Relinquish an output from the wallet
Reveal key linkage for a counterparty
Reveal specific key linkage
Sign an action by reference
Verify an HMAC over data
Verify a signature over data
Parameter descriptions lack format/constraint details. 'counterparty' (15+ tools) described only as 'hex pubkey, "self", or "anyone"' with no validation rules, length, or error guidance. Violates pattern:constrained-input.
No error handling guidance. Tools lack recovery hints, error categorization (retryable vs fatal), or actionable error messages. Violates pattern:recovery-guide and pattern:error-classification.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Risk levels are declared in metadata but not in tool definitions. Violates current MCP spec (2026-07-28) tool annotation pattern.
Complex nested parameters (e.g., 'outputs' array in createAction, 'fields' object in acquireCertificate) lack detailed schema. No item type definitions, required fields, or nested property descriptions.