Model Context Protocol server for AI agents to create blockchain-anchored e-signature agreements via the blocksign REST API
Strong foundation with complete schemas and clear descriptions for all 11 tools. Tool names follow verb_noun convention (create_, get_, list_, verify_, void_, upload_, detect_, check_, purchase_). Descriptions are substantive (100-300 chars typical), explaining WHAT, WHEN, and key parameters. Input schemas are well-structured with proper types, enums, and nested objects. However, output schemas are not documented, LLMs cannot predict response structure for downstream chaining. Error handling guidance is absent. Some parameter descriptions lack format/constraint details (e.g., document_base64 doesn't specify max size; phone lacks E.164 format validation note). Composition is sound: tools are single-responsibility, and create_agreement chains naturally with get_agreement_status and verify_agreement.
Check current billing plan, credit balance, usage, and per-document pricing for the calling org.
Create and optionally send an agreement in a single call. Supports either a built-in template (with variables) or an uploaded PDF (document_base64). Signers can be individuals OR companies — set party_type='company' with company_name + signer_title to sign on behalf of a legal entity (corp-to-corp, corp-to-individual). Returns agreement_id, signing URLs, and verification URL.
Run AI field detection on a previously uploaded text document. Returns suggested signature/initials/date field positions.
Fetch unified status for an agreement: envelope state, per-signer status, verification URL.
List recent agreements for the calling org.
Output schemas not documented. LLMs cannot predict response structure (e.g., what fields does create_agreement return? Is agreement_id a UUID string or object?). This breaks downstream tool chaining and forces agents to guess field names.
Error handling guidance absent. No recovery hints (e.g., 'If agreement not found, call list_agreements() to discover valid IDs'). Agents cannot self-correct on failures.
Parameter constraints underspecified. document_base64 lacks max size; phone lacks E.164 format validation note; expires_in_days lacks min/max bounds. LLMs may pass invalid values.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 68 | <=2025-11-25 | v2 |
List contract templates available to the calling org (org-owned + platform public).
Render a template with variables (no PDF, no envelope) — useful to validate inputs before create_agreement.
Purchase a credit pack (10, 50, or 200 credits). If payment method on file, charges immediately. Otherwise returns a checkout URL.
Upload a document for use in agreements. Accepts plain text or Markdown — blocksign converts it to PDF. Optionally runs AI field detection and returns suggested signature positions.
Public verification of an agreement's audit chain and on-chain anchor.
Void an envelope before all parties sign.
list_agreements and list_templates lack pagination guidance. No mention of limit defaults, max results, or next_cursor. Large result sets could exhaust context.
Destructive tool (void_agreement) lacks confirmation/dry-run pattern. No mention of irreversibility or undo capability. Agents could void agreements unintentionally.