Covenant AAP - hosted developer pilot
Find services, draft exact terms and review agreements. Public tools; private account trials.
Should I use this
Quality & Safety
Findings (7)
- HIGH
- MEDIUMin covenant_contract__inspect
- MEDIUMin covenant_contract__render
- MEDIUMin covenant_review__review
- MEDIUMin covenant_review__authority
- MEDIUMin covenant_review__evidence
- LOWin covenant_marketplace__quick_trade
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"covenant-aap": {
"url": "https://jupie202020.pythonanywhere.com/mcp"
}
}
}Remote endpoints
https://jupie202020.pythonanywhere.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (9)
🟢covenant_marketplace__quick_trade(amount, archetype, buyer, compact, context, ...)
Prepare an unsigned service offer with a buyer, seller, price and optional deal structure. Create a general market, listing or reusable transaction archetype. quick_trade prepares the complete simple agreement in one call. Every record carries seven question dimensions. Credit/escrow/custom terms require adopted execution; no funds or inventory are inferred. Selected action: quick_trade.
Input Schema
{
"type": "object",
"properties": {
"amount": {
"description": "Integer price in the payment asset's exact stated unit. For USD cents, 25 dollars is 2500 cents; never infer a currency conversion.",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"archetype": {
"description": "Optional exact reusable deal structure supplied by the caller; preparation does not execute it.",
"maxProperties": 20000,
"type": "object"
},
"buyer": {
"description": "The proposed buyer role and identifier; a role label does not prove authority.",
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"compact": {
"description": "Return the supported compact view; retain the complete exact packet when approving.",
"type": "boolean"
},
"context": {
"description": "Caller-chosen exact context for this unsigned proposal.",
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"description": {
"description": "The work or resource being offered, including the intended deliverable.",
"maxLength": 128,
"minLength": 1,
"type": "string"
},
"payment_asset": {
"additionalProperties": false,
"description": "The exact namespace, identifier and unit of the proposed payment asset. Named resource; adapter and transfer_terms default to null and {}. Naming never proves title, custody or transfer.",
"properties": {
"adapter": {
"pattern": "^[0-9a-f]{64}$",
"type": [
"string",
"null"
]
},
"identifier": {
"maxLength": 256,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 256,
"minLength": 1,
"type": "string"
},
"transfer_terms": {
"maxProperties": 20000,
"type": "object"
},
"unit": {
"maxLength": 256,
"minLength": 1,
"type": "string"
}
},
"required": [
"namespace",
"identifier",
"unit"
],
"type": "object"
},
"seller": {
"description": "The proposed seller role and identifier; a label does not verify the supplier.",
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"settlement": {
"description": "Optional proposed settlement terms; no rail is connected or payment sent. Optional explicit settlement terms. A pinned archetype settlement may be repeated exactly, but cannot be silently replaced.",
"maxProperties": 20000,
"type": "object"
},
"terms": {
"description": "Optional exact additional terms to preserve in this unsigned offer. Optional exact inspection, correction, return or other terms adopted in this first offer.",
"maxProperties": 20000,
"type": "object"
}
},
"required": [
"seller",
"buyer",
"description",
"amount",
"payment_asset",
"context"
],
"additionalProperties": false
}🟢covenant_contract__draft(clauses, conditions, dispute, extensions, parties, ...)
Draft an agreement from the exact parties, clauses, conditions and dispute terms you supply. Draft arbitrary clauses, preserve amendment ancestry, compare exact changes, and render an escaped HTML draft. Never supplies assent. Selected action: draft.
Input Schema
{
"type": "object",
"properties": {
"clauses": {
"description": "The exact obligations and terms to include in the unsigned draft.",
"items": {
"additionalProperties": false,
"properties": {
"id": {
"maxLength": 80,
"minLength": 1,
"type": "string"
},
"text": {
"maxLength": 16000,
"type": "string"
},
"title": {
"maxLength": 256,
"type": "string"
}
},
"required": [
"id",
"title",
"text"
],
"type": "object"
},
"maxItems": 128,
"type": "array"
},
"conditions": {
"description": "Optional exact conditions governing the proposed obligations.",
"maxItems": 128,
"type": "array"
},
"dispute": {
"description": "Optional proposed review or dispute procedure; no arbitrator is appointed.",
"maxProperties": 20000,
"type": "object"
},
"extensions": {
"description": "Optional exact additional terms or adopted profile references supplied by the caller.",
"maxProperties": 20000,
"type": "object"
},
"parties": {
"description": "The declared parties and roles for this draft; no assent is inferred.",
"items": {
"maxLength": 128,
"minLength": 1,
"type": "string"
},
"maxItems": 64,
"type": "array"
},
"settlement": {
"description": "Optional proposed payment or settlement terms; no payment occurs.",
"maxProperties": 20000,
"type": "object"
},
"title": {
"description": "A short name for the proposed agreement.",
"maxLength": 128,
"minLength": 1,
"type": "string"
}
},
"required": [
"title",
"parties",
"clauses"
],
"additionalProperties": false
}🟢covenant_contract__inspect(body)
Inspect one exact contract body and return its identifier and structure. Covenant public API and MCP reference: https://covenant-common.github.io/covenant-docs/docs/API_MCP.html. Draft arbitrary clauses, preserve amendment ancestry, compare exact changes, and render an escaped HTML draft. Never supplies assent. Selected action: inspect.
Input Schema
{
"type": "object",
"properties": {
"body": {
"description": "The raw contract body from the draft response; supply the contract body rather than the complete response wrapper.",
"maxProperties": 20000,
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false
}🟢covenant_contract__compare(after, before)
Compare two contract bodies and show the changes that need fresh approval. Draft arbitrary clauses, preserve amendment ancestry, compare exact changes, and render an escaped HTML draft. Never supplies assent. Selected action: compare.
Input Schema
{
"type": "object",
"properties": {
"after": {
"description": "The complete proposed replacement raw contract body; changed terms need fresh assent.",
"maxProperties": 20000,
"type": "object"
},
"before": {
"description": "The complete original raw contract body; keep its exact bytes and identifier.",
"maxProperties": 20000,
"type": "object"
}
},
"required": [
"before",
"after"
],
"additionalProperties": false
}🟢covenant_contract__render(body)
Render one exact contract body as readable HTML without changing its terms. Covenant public API and MCP reference: https://covenant-common.github.io/covenant-docs/docs/API_MCP.html. Draft arbitrary clauses, preserve amendment ancestry, compare exact changes, and render an escaped HTML draft. Never supplies assent. Selected action: render.
Input Schema
{
"type": "object",
"properties": {
"body": {
"description": "The raw contract body to display; a readable copy does not create assent.",
"maxProperties": 20000,
"type": "object"
}
},
"required": [
"body"
],
"additionalProperties": false
}🟢covenant_review__review(case, expected_id)
Review a raw coordination case, its supplied agreements, approvals and remaining duties. Review an exact coordination case, its supplied approvals and remaining obligations. Read https://jupie202020.pythonanywhere.com/review-reference.json for the case format and a complete empty example. A contract draft is not a verified agreement. Case builders such as start/case/spec are installed SDK helpers, not tools on this public endpoint. No signing or execution.
Input Schema
{
"type": "object",
"properties": {
"case": {
"description": "A raw coordination case with version, title and agreements. A contract draft or prior review report is not a case. See the service review-reference.json. Exact coordination case. Use start or case to construct it. Case0.4 adds explicit nonmonetary performance assertions; supplying performance selects it. Explicit case0.3 also admits BILATERAL rows with {id,kind,envelope,expected_id}, where expected_id is the exact envelope CID. Historical kinds retain their original hashes/approvals. Bilateral receipt claims are not observed funds; no automatic native mapping. links refer to section-local IDs. Unknown links confer no authority.",
"maxProperties": 20000,
"type": "object"
},
"expected_id": {
"description": "Optional retained exact case SHA256 identifier. A mismatch refuses; never replace a trusted pin merely to pass.",
"pattern": "^[0-9a-f]{64}$",
"type": "string"
}
},
"required": [
"case"
],
"additionalProperties": false
}🟢covenant_review__authority(agreements, expected_heads, grants, group, policies)
Inspect supplied role summaries and any supported owner-local authority evidence. Inspect caller-supplied role summaries and any supported local authority evidence. Each agreements row has exactly id, kind and parties (role to direct Ed25519 public key). Do not pass a contract-draft wrapper. Read https://jupie202020.pythonanywhere.com/review-reference.json for examples. A declared role is not verified permission; this does not authorize signing, payment or execution.
Input Schema
{
"type": "object",
"properties": {
"agreements": {
"description": "Caller-declared role summaries. Each row has exactly id, kind and parties; parties maps role names to supported public verification keys. These are not signed contract wrappers.",
"items": {
"maxProperties": 20000,
"type": "object"
},
"maxItems": 64,
"type": "array"
},
"expected_heads": {
"description": "Optional retained sorted causal heads for the group review.",
"items": {
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"maxItems": 65,
"type": "array"
},
"grants": {
"description": "Optional exact grant records for owner-local access review; do not provide private keys or credentials.",
"items": {
"maxProperties": 20000,
"type": "object"
},
"maxItems": 64,
"type": "array"
},
"group": {
"description": "Optional exact group reference; it does not appoint a controller or grant authority.",
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"policies": {
"description": "Optional exact policy records; declarations are separate from installed authority.",
"items": {
"maxProperties": 20000,
"type": "object"
},
"maxItems": 64,
"type": "array"
}
},
"required": [
"agreements"
],
"additionalProperties": false
}🟢covenant_review__evidence(agreement_ids, items)
Check supplied proof envelopes against the supported installed verifiers and exact expectations. Check supplied proof envelopes with the supported installed verifiers. Read https://jupie202020.pythonanywhere.com/review-reference.json for item fields. Empty input reports no proofs supplied. A verified proof covers its exact statement and assumptions, not outside truth or execution permission.
Input Schema
{
"type": "object",
"properties": {
"agreement_ids": {
"description": "Exact agreement identifiers already verified separately; a supplied identifier alone does not prove assent.",
"items": {
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"maxItems": 64,
"type": "array"
},
"items": {
"description": "Supplied proof envelopes and exact verifier/context/statement expectations. Empty input means no proofs were supplied.",
"items": {
"maxProperties": 20000,
"type": "object"
},
"maxItems": 64,
"type": "array"
}
},
"required": [
"items",
"agreement_ids"
],
"additionalProperties": false
}🟢aap_public_listing_search(category, limit, offset, query)
Find currently searchable service listings in this shared marketplace. Search this shared marketplace for current active INDEXED public listings. Only explicitly published fields are returned; PRIVATE and UNLISTED records are excluded, including from totals. Ranking matches the existing public listing API. Price, inventory, identity, performance and payment are not verified. No account, signing, publication or provider call.
Input Schema
{
"type": "object",
"properties": {
"category": {
"description": "Optional category filter; it does not broaden access to unlisted or private records.",
"maxLength": 64,
"type": "string"
},
"limit": {
"description": "Maximum public results to return in this page; use the advertised bound.",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"offset": {
"description": "Zero-based offset into the current public result page.",
"maximum": 5000,
"minimum": 0,
"type": "integer"
},
"query": {
"description": "Optional words describing the service needed; searches only current public listings.",
"maxLength": 120,
"type": "string"
}
},
"additionalProperties": false
}Community
Evidence