Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,562Letters: 14Defects: 1,336counted 3 min ago
teppi

Server definition

Hash
sha256:b542a9cc3002a558896ac6200171ef322912708ece995c089fa7b79c86c819ee
What it is
What a remote MCP server returned when asked what it offers: 6 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Initiate a handshake on a contract on behalf of your delegating principal.\n\nRequires an API key with an active delegation (principal wallet registered via /api/v1/delegations).\nRecords the agent's intent to accept, reject, or request changes on the contract.\nThe principal must separately approve via wallet signature on the Reader Portal.\n\nArgs:\n - contract_id (string, required): Contract ID (amb-YYYY-NNNN), SHA-256 hash, or UUID\n - intent (string, required): \"accept\" | \"reject\" | \"request_changes\"\n - message (string, optional): Note for the counterparty\n - visibility_preference (string, optional): \"private\" | \"metadata_only\" | \"public\" | \"encrypted\"\n\nReturns: Handshake status and next steps for principal approval.\n\nLegibility: the handshake itself is auditable — delegation scope, agent identity, and principal approval are recorded alongside the contract hash.", "inputSchema": { "properties": { "contract_id": { "description": "Contract ID, SHA-256 hash, or UUID", "type": "string" }, "intent": { "description": "Handshake intent", "enum": [ "accept", "reject", "request_changes" ], "type": "string" }, "message": { "description": "Optional note for counterparty", "type": "string" }, "visibility_preference": { "description": "Optional visibility preference for negotiation", "enum": [ "private", "metadata_only", "public", "encrypted" ], "type": "string" } }, "required": [ "contract_id", "intent" ], "type": "object" }, "name": "ambr_agent_handshake", "outputSchema": null }, { "description": "Generate a Ricardian Contract from a template.\n\nCreates a dual-format contract (human-readable legal text + machine-parsable JSON)\nusing AI, linked by SHA-256 hash. The contract is stored on Ambr and accessible\nvia the Reader Portal.\n\nRequires a valid API key (X-API-Key header on the HTTP request) with available credits.\nUse ambr_list_templates first to discover templates and their required parameters.\n\nArgs:\n - template (string, required): Template slug (e.g. \"d1-general-auth\")\n - parameters (object, required): Template-specific parameters matching the schema\n - principal_declaration (object, required): { agent_id, principal_name, principal_type }\n - parent_contract_hash (string, optional): SHA-256 hash of parent contract for amendments\n - oversight_threshold_usd (number, optional): spending level above which work created under\n this contract needs human approval. Children exceeding it halt at awaiting_principal_approval.\n - amendment_type (string, optional): \"original\" | \"amendment\" | \"extension\"\n\nReturns:\n - contract_id: Unique ID (e.g. \"amb-2026-0042\")\n - sha256_hash: SHA-256 hash for verification\n - status: Contract status\n - reader_url: URL to view in Reader Portal\n - credits_remaining: Remaining API credits\n\nLegibility: Output is dual-format by construction and replayable to the original SHA-256 hash — the basis of Ambr's legibility guarantee.", "inputSchema": { "properties": { "amendment_type": { "enum": [ "original", "amendment", "extension" ], "type": "string" }, "oversight_threshold_usd": { "description": "Spending level above which work created UNDER this contract requires human approval. A child contract exceeding the parent threshold is held at awaiting_principal_approval until a human signs, and cannot be signed or activated before then (EU AI Act Art. 14).", "type": "number" }, "parameters": { "additionalProperties": true, "description": "Template-specific parameters", "type": "object" }, "parent_contract_hash": { "description": "SHA-256 hash of parent contract (for amendments)", "type": "string" }, "principal_declaration": { "properties": { "agent_id": { "description": "Agent identifier", "type": "string" }, "principal_name": { "description": "Name of the principal (person or company)", "type": "string" }, "principal_type": { "description": "Type of principal", "enum": [ "company", "individual" ], "type": "string" } }, "required": [ "agent_id", "principal_name", "principal_type" ], "type": "object" }, "template": { "description": "Template slug from ambr_list_templates", "type": "string" } }, "required": [ "template", "parameters", "principal_declaration" ], "type": "object" }, "name": "ambr_create_contract", "outputSchema": null }, { "description": "Retrieve a contract by ID, SHA-256 hash, or UUID.\n\nWith a valid API key (contract creator): returns the full contract including\nhuman-readable text, machine-readable JSON, status, and principal declaration.\nWithout authentication: returns metadata only (contract_id, status, hash, dates).\n\nSupports three lookup formats:\n - Contract ID: \"amb-2026-0042\"\n - SHA-256 hash: 64-character hex string\n - UUID: Standard UUID format\n\nArgs:\n - id (string, required): Contract ID, SHA-256 hash, or UUID\n\nReturns: Full contract (if authorized) or metadata-only response.\n\nLegibility: retrieval preserves the dual-format pairing — prose and JSON always replay to the same SHA-256.", "inputSchema": { "properties": { "id": { "description": "Contract ID (amb-YYYY-NNNN), SHA-256 hash, or UUID", "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "ambr_get_contract", "outputSchema": null }, { "description": "Check the status of a contract and its amendment chain.\n\nReturns the current status and any linked amendments (parent or child contracts).\nUseful for verifying if a contract is active, amended, or terminated.\n\nArgs:\n - id (string, required): Contract ID, SHA-256 hash, or UUID\n\nReturns:\n - contract_id, status, created_at\n - amendment_type, parent_contract_hash\n - amendments: Array of child contracts (if any)\n\nLegibility: amendments are bilateral and themselves dual-format — the chain stays legible from original through every revision.", "inputSchema": { "properties": { "id": { "description": "Contract ID (amb-YYYY-NNNN), SHA-256 hash, or UUID", "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "ambr_get_contract_status", "outputSchema": null }, { "description": "List available contract templates on Ambr.\n\nReturns all active Ricardian Contract templates with their slugs, names, descriptions,\ncategories, parameter schemas, and pricing. Use this to discover which templates are\navailable before creating a contract with ambr_create_contract.\n\nNo authentication required.\n\nReturns: Array of template objects with slug, name, description, category,\nparameter_schema, price_cents, and version fields.\n\nLegibility: templates are the parameter schema for the dual-format contracts you create — starting here keeps your request conformant and your output defensible.", "inputSchema": { "properties": {}, "type": "object" }, "name": "ambr_list_templates", "outputSchema": null }, { "description": "Verify a contract's SHA-256 hash to confirm document integrity.\n\nChecks whether the provided hash matches a contract stored on Ambr. Returns\nverification status, contract metadata, and Reader Portal URL if found.\n\nArgs:\n - hash (string, required): SHA-256 hash (64-character hex string)\n\nReturns:\n - verified: boolean\n - contract_id: string (if found)\n - status: string (if found)\n - reader_url: string (if found)\n\nLegibility: verification is the point at which legibility becomes provable — matching hash means the prose a human reads and the JSON a machine parses are the same document that was originally signed.", "inputSchema": { "properties": { "hash": { "description": "SHA-256 hash to verify (64-character hex)", "type": "string" } }, "required": [ "hash" ], "type": "object" }, "name": "ambr_verify_hash", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:b542a9cc3002a558896ac6200171ef322912708ece995c089fa7b79c86c819ee | sha256sum