Stabledrop escrow payments
Server Details
Stablecoin escrow payments the buyer can dispute, with a signed receipt. Pay a wallet or an email.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
Each tool has a distinct job: prepare computes the destination, settle creates the escrow, check reports status, verify validates receipts, payment_qr renders a QR, and read_published_page serves docs. The only realistic ambiguity is prepare vs settle, since they share terms and a close phase boundary, but their descriptions separate 'before anyone signs' from 'after the money is there' clearly.
Most tools follow verb_escrow_payment/receipt: check_escrow_payment, prepare_escrow_payment, settle_escrow_payment, verify_escrow_receipt. payment_qr and read_published_page break the pattern but are still readable and unambiguous deviations.
Six tools is well-scoped for an escrow payment server: preparation, settlement, status, verification, QR support, and documentation each earn a place. There is no redundancy or bloat.
The core lifecycle is covered: derive an address, fund, settle, check status, and verify receipts. The main gap is that dispute/refund actions are referenced in the docs but not exposed as tools, though those may be intentionally human-driven rather than agent actions.
Available Tools
6 toolscheck_escrow_paymentCheck Escrow PaymentBInspect
What has happened to a settled payment, from the status_url on its receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| status_url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. The wording 'what has happened' implies a read-only, historical lookup rather than a mutating action, but it does not explicitly state side-effect-freedom, authorization requirements, or possible response behaviors. This is minimally acceptable but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. It front-loads the core concept ('what has happened to a settled payment') and ends with the key input source (`status_url` on its receipt). Slight awkwardness in phrasing prevents a 5, but it is appropriately sized and structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required parameterhare and an output schema present, the description does not need to explain return values. It adequately names the input source and settled-payment precondition, but it omits contextual details such as whether this is safe to call repeatedly, whether the `status_url` expires, or how this relates operationally to `settle_escrow_payment` and `verify_escrow_receipt`.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds useful meaning by explaining that `status_url` comes from the payment receiptcars, but it does not provide details about URL format, how to extract it, or what the tool expects beyond the schema's plain string type. The single-parameter design reduces the risk, but the semantics are only partially enriched.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a specific action: checking what happened to a settled payment using the `status_url` from its receipt. It distinguishes itself from sibling tools like `settle_escrow_payment` and `verify_escrow_receipt` by focusing on status/history of an already settled payment, though the phrasing 'what has happened' is somewhat indirect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is meant for post-settlement inquiries: the payment must be settled and the caller must have the receipt's `status_url`. It does not explicitly name alternatives or state when not to use this tool, so usage context is clear but exclusion/routing guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
payment_qrPayment QrAInspect
A scannable code for a payment request, so nobody retypes an address.
Pass the payment_uri from prepare_escrow_payment. Returns a QR a phone wallet can scan,
with the token, network, destination and amount already in it.
⚠️ A SEPARATE TOOL RATHER THAN PART OF prepare, because the two have different audiences.
prepare answers a machine and has to stay parseable; an image in its result would make
the structured fields something a client has to dig for. A person who needs the code asks
for it.
⚠️ AND IT ENCODES THE URI, NOT THE BARE ADDRESS. A QR holding only an address leaves the amount and the token to be entered by hand, which is the part worth removing — an escrow funded with the wrong figure is not the escrow these terms derive to, and the money sits at an address nothing can deploy to.
| Name | Required | Description | Default |
|---|---|---|---|
| payment_uri | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does disclose the output (a QR containing token, network, destination, and amount) and the critical encoding behavior (URI, not bare address). It does not explicitly state side-effect status or failure behavior, but for a pure encoding/rendering tool this is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first two sentences are concise and front-loaded, but the two all-caps warnings are verbose and partly explain design rationale rather than operational requirements. The content is useful, but the description could be tightened without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema and no annotations, the description is largely complete: it names the input source, describes the output, and warns about the key misuse. It could be more explicit about the exact QR/image format returned and error cases, but these are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single `payment_uri` parameter is given provenance ('from `prepare_escrow_payment`') and semantic content (token, network, destination, amount). Since the input schema only says 'string' and schema description coverage is 0%, this fully compensates for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: it 'Returns a QR a phone wallet can scan' for a payment request, with a clear purpose. It also distinguishes itself from prepare_escrow_payment by audience ('A person who needs the code asks for it').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs the caller to pass the `payment_uri` from `prepare_escrow_payment` and explains when the tool is appropriate. It also clarifies that it is intentionally separate from `prepare`, so an agent knows not to expect this output embedded in the machine-readable result.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_escrow_paymentPrepare Escrow PaymentAInspect
Work out where a payment must go, before anybody signs or sends anything.
seller and nominal_buyer may each be a wallet address OR AN EMAIL ADDRESS — an email is
converted to the wallet that person owns, so you never need to know a wallet to use this.
Returns the escrow address these terms produce, and TWO ways to fund it. Both end at the same address holding the same money; they differ only in who sends the transaction.
Transfer it yourself. Send the tokens to the address from any wallet — a browser
wallet, a hardware wallet, an exchange withdrawal. Nothing to sign for us, and no payer
needed, because the escrow never asks who paid: it reads its own balance. Then call
settle_escrow_payment with no signature and we create the escrow around what is there.
Or let us relay it. Pass payer and this returns an EIP-3009 authorization for them to
sign. We broadcast it and pay the gas, so the payer needs no gas at all. This is the
only one an agent can complete unattended, and the only one that needs a key anywhere.
Either way the address is the same, because it is a pure function of the terms. That is
also what makes the relayed form safe: the payer signs to as part of the authorization,
committing to every term at once — alter any of them afterwards and the address moves and
the signature stops matching.
amount is in the TOKEN's base units (1 USDC = 1000000), because that exact figure is one
of the terms the address derives from.
expiry_timestamp is an absolute Unix time — when the dispute window closes. 0 settles
instantly with no recourse. There is no default: "instant, deliberately" and "nobody said"
are different, and a caller must not discover afterwards which one they got.
nominal_buyer is who may dispute and receives a refund. For an agentic payment this should
be the PERSON, not the agent — they are the one who will later read a report and decide
whether to object.
seller and nominal_buyer may each be a wallet address OR an email address. An email
resolves to the wallet Privy holds for that person — made for them if they have never
logged in — and the same email always resolves to the same wallet, so the address derived
here is the one settle_escrow_payment derives too. The resolved wallets come back under
parties. A seller given by email is paid into that wallet; they sign in with the email to
reach it.
external_id keeps two otherwise-identical payments apart, and is one of the terms the
address derives from. Leave it out and a unique one is generated. That is the right
default: two payments matching in seller, amount, maturity and buyer would otherwise derive
to the SAME address, and funding the second sends money into the first escrow — recoverable
only after that one is claimed, and only to ITS buyer.
⚠️ PASS BACK THE external_id THIS RETURNS, not the one you sent. A generated one is only
knowable from the result, and settle derives the address again from whatever it is given:
a different id is a different address, and the money is at this one.
Supply your own for the opposite behaviour — a checkout hash gives "one checkout, one escrow", so re-presenting the same purchase returns the same address rather than a second.
description is what the payment is FOR, in the buyer's own words — ask them for it rather
than defaulting. It is what they will be looking at in the dashboard weeks later deciding
whether to dispute, and "Escrow payment" tells them nothing about which one this was. It
does not affect the address, so it can be set freely here.
⚠️ 1 to 160 characters. Longer is refused HERE rather than at the chain, where the check happens after the money has already moved.
| Name | Required | Description | Default |
|---|---|---|---|
| payer | No | ||
| amount | Yes | ||
| seller | Yes | Who gets paid: a wallet address (0x…) OR an email address. An email is converted to the wallet that person owns, created for them if they have never signed in; the same email always gives the same wallet. | |
| description | No | Escrow payment | |
| external_id | No | ||
| token_symbol | No | USDC | |
| nominal_buyer | Yes | Who may dispute and receives any refund — the PERSON, not the agent: a wallet address (0x…) OR an email address. An email is converted to that person's wallet, created for them if they have never signed in. | |
| expiry_timestamp | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden and carries it very well. It reveals the key behaviors: email-to-wallet resolution, same address regardless of funding path, generated external_id and the danger of sending a different one, amount units, expiry_timestamp semantics with no default, description length validation, and the EIP-3009 relay mechanics. An agent gets a realistic model of side effects and failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but well-structured with bolded options, explicit warnings, and front-loaded purpose. However, the wallet-or-email point is made twice in similar wording, and some explanatory passages are more verbose than strictly necessary. It is justified detail rather than filler, but the duplication keeps it from a perfect conciseness score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex, high-stakes financial preparation tool, the description is remarkably complete: it covers required parameters, optional parameters, failure semantics, defaults, cross-tool sequencing, and the exact reason the returned external_id must be passed back. The output schema exists, so the description correctly focuses on behavior and preconditions rather than restating return fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 25%, but the description compensates thoroughly: it explains amount base units, absolute Unix expiry and the significance of 0, external_id generation and matching behavior, description length and purpose, payer's role in the relay path, and the seller/nominal_buyer email-or-wallet semantics. Every meaningful parameter except the self-evident token_symbol is given practical meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening line 'Work out where a payment must go, before anybody signs or sends anything' gives a precise verb, resource, and phase of the payment lifecycle. It clearly states the tool returns the escrow address and two funding paths, and explicitly positions it ahead of settle_escrow_payment, distinguishing it from the sibling that actually creates the escrow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear contextual guidance: this is the pre-signing/pre-sending step, and later you 'call settle_escrow_payment with no signature'. It also distinguishes the two internal paths and notes that the relayed path is the only one an agent can complete unattended. It does not explicitly enumerate when to avoid the other sibling tools like check_escrow_payment or verify_escrow_receipt, so it stops short of a perfect alternative-selection guide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_published_pageRead Published PageAInspect
Read one of the published pages, for answering questions about how any of this works.
Use it rather than guessing. What the fees are, how a dispute is decided and who decides it, what a buyer is agreeing to — all of it is written down, and none of it is safe to invent.
how-it-works How an escrow payment works, start to finish faq Common questions about escrow, fees, disputes and timing arbitration-policy How a dispute is decided, by whom, and on what evidence terms-of-service The terms a buyer and seller are agreeing to privacy-policy What is collected and why plugins The WordPress and Shopify integrations home What the product is and who it is for
| Name | Required | Description | Default |
|---|---|---|---|
| page | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the disclosure burden. The verb 'Read' signals a non-mutating operation, and the page list clarifies scope, but the description does not mention error behavior, side effects, or return semantics. Since an output schema exists, the lack of return-format detail is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose, then gives a brief rationale, and then a structured list of valid pages. The motivational sentence ('none of it is safe to invent') earns its place by reinforcing when to use the tool, though it is slightly wordy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool, the description provides the complete set of likely valid page values, the purpose, and the types of questions to answer. It could be slightly more explicit that the listed pages are the only valid values, but the output schema and low complexity mean the description is effectively sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides only a bare `page` string with no description or enum, yet the description compensates fully by enumerating the valid page identifiers (how-it-works, faq, arbitration-policy, terms-of-service, privacy-policy, plugins, home) and explaining what each contains. This is exactly the semantic information an agent needs to select a correct parameter value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Read one of the published pages, for answering questions about how any of this works.' It clearly distinguishes this knowledge-base reader from the sibling payment-operation tools (check, prepare, settle, verify) by framing it as the source of authoritative documentation about fees, disputes, and terms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives strong contextual guidance: 'Use it rather than guessing' and lists the exact topics (fees, dispute resolution, buyer agreements) that should be answered from these pages. It does not explicitly list exclusions or alternative tools, but the context makes the intended use clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
settle_escrow_paymentSettle Escrow PaymentAInspect
Create the escrow around the money and return a signed receipt.
seller and nominal_buyer may be wallet addresses OR EMAIL ADDRESSES, exactly as in
prepare_escrow_payment; an email converts to the same wallet it did there.
Works both ways, and which one runs is decided by whether you pass a signature:
Already transferred it yourself — omit authorization and signature. We check the
address holds the amount and build the escrow around what is there. If the transfer has not
arrived it says so, and nothing is spent finding out.
Want us to relay it — pass the payer's authorization and signature. We broadcast it
and pay the gas, so the payer needs none. This process holds no key and signs nothing; it
is handed a signature and carries it.
Pass the terms exactly as they were prepared. They ARE the escrow's address, so a single altered figure moves it — and with a signature, stops matching what the payer signed.
seller and nominal_buyer may be wallet addresses or email addresses, as in
prepare_escrow_payment; an email resolves to the same wallet it did there.
⚠️ external_id MUST BE THE ONE prepare_escrow_payment RETURNED. It generates one when
you leave it out, and that generated value is only knowable from its result — send a
different one and this derives a different address, while the money is at the first.
⚠️ The receipt reports what the seller will actually RECEIVE in token_amount, with the
platform fee named beside it. That is less than the amount authorised, and the two
reconcile: token_amount + creator_fee = amount.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | ||
| seller | Yes | Who gets paid: a wallet address (0x…) OR an email address. An email is converted to the wallet that person owns, created for them if they have never signed in; the same email always gives the same wallet. | |
| signature | No | ||
| description | No | Escrow payment | |
| external_id | Yes | ||
| token_symbol | No | USDC | |
| authorization | No | ||
| nominal_buyer | Yes | Who may dispute and receives any refund — the PERSON, not the agent: a wallet address (0x…) OR an email address. An email is converted to that person's wallet, created for them if they have never signed in. | |
| expiry_timestamp | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does exceptionally well. It discloses that the service checks the address before building escrow, reports if the transfer has not arrived, pays gas in relay mode, holds no key and signs nothing, derives the escrow address from the exact terms, and reports the seller's actual received amount separately from the creator fee. These are real behavioral details beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and uses bold labels and warning blocks to make long content scannable. However, the sentence about seller and nominal_buyer accepting wallet or email addresses appears twice almost verbatim, which is unnecessary repetition. Otherwise, the length is justified by the two-mode complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, missing annotations, and low schema coverage, the description is remarkably complete. It covers the prerequisite relationship with prepare_escrow_payment, both execution paths, a critical external_id constraint, the impact of altered terms, and receipt/fee semantics. An agent has enough context to call this tool correctly without additional investigation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 22%, so the description must compensate. It explains the meaning and interaction of the most semantically tricky parameters: seller/nominal_buyer email-to-wallet resolution, authorization/signature relay behavior, external_id provenance, and the relationship between amount, token_amount, and creator_fee. It does not individually define expiry_timestamp, token_symbol, or description, but those are more self-evident or have defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource: 'Create the escrow around the money and return a signed receipt.' It also clearly distinguishes itself from the related prepare_escrow_payment by repeatedly referring to 'as prepared' and requiring the external_id returned by that tool, so an agent can tell this is the settlement/execution step rather than preparation or verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'which one runs is decided by whether you pass a signature,' then gives two clear modes with exact conditions: omit authorization/signature if the transfer was already made, or pass them to have the service relay the payment. It also warns that external_id must be the one returned by prepare_escrow_payment. This gives an agent direct selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_escrow_receiptVerify Escrow ReceiptAInspect
Check a receipt's signature against the key its issuer publishes.
⚠️ THE KEY IS FETCHED FROM THE RECEIPT'S OWN iss, NOT FROM WHOEVER HANDED IT OVER.
Otherwise anything that can serve a receipt can also serve the key that vouches for it,
and the signature stops meaning anything.
Use this on receipts from anywhere, including ones this server did not produce.
| Name | Required | Description | Default |
|---|---|---|---|
| payment_receipt | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure, and it does. The warning that the key is fetched from the receipt's own `iss`, not from whoever handed it over, is a critical non-obvious behavior. The note about external receipts also clarifies scope, though it does not explicitly state side effects or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: one purpose sentence, one security warning, one usage sentence. The warning is emphatic but earns its place because it prevents a critical security misuse. There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single required string parameter and an output schema, the description covers the purpose, the key security caveat, and the supported input scope. It does not fully compare against sibling tools or document the receipt's wire format, but those are minor given the tool's simple surface.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only provides the parameter name and type, so the description must supply meaning. It does by indicating the receipt carries a signature and an `iss` claim that determines which key validates it. It does not specify the serialization format, but for a single string parameter this is a moderate gap, not a blocking one.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific action and object: 'Check a receipt's signature against the key its issuer publishes.' This clearly identifies the tool's core function. It does not explicitly name sibling tools, but the usage note about receipts 'from anywhere, including ones this server did not produce' gives some scope differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit usage instruction: 'Use this on receipts from anywhere, including ones this server did not produce.' This tells an agent the tool is not limited to receipts the server generated. It does not name alternatives or list when not to use it, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
prepare_escrow_payment2 fields changed- added
Input schema / properties / nominal_buyer / descriptionAdded value: +"Who may dispute and receives any refund — the PERSON, not the agent: a wallet address (0x…) OR an email address. An email is converted to that person's wallet, created for them if they have never signed in." - added
Input schema / properties / seller / descriptionAdded value: +"Who gets paid: a wallet address (0x…) OR an email address. An email is converted to the wallet that person owns, created for them if they have never signed in; the same email always gives the same wallet."
- Changed
settle_escrow_payment2 fields changed- added
Input schema / properties / nominal_buyer / descriptionAdded value: +"Who may dispute and receives any refund — the PERSON, not the agent: a wallet address (0x…) OR an email address. An email is converted to that person's wallet, created for them if they have never signed in." - added
Input schema / properties / seller / descriptionAdded value: +"Who gets paid: a wallet address (0x…) OR an email address. An email is converted to the wallet that person owns, created for them if they have never signed in; the same email always gives the same wallet."
6 tool updates
- First observed
check_escrow_payment - First observed
payment_qr - First observed
prepare_escrow_payment - First observed
read_published_page - First observed
settle_escrow_payment - First observed
verify_escrow_receipt
Related MCP Connectors
Non-custodial payment drafts/pay links for BTC, USDC, USDT, EURC. Never holds keys.
Complete financial infrastructure for AI agents — payments, lending, escrow & more.
Trust-minimized USDC escrow for autonomous agent transactions
Escrow, verification, and settlement platform for AI agents hiring other AI agents.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMulti-party escrow and settlement for autonomous agent transactions with x402 micropayments and dispute resolution on Base, Ethereum, or Solana.MIT
- AlicenseAqualityDmaintenanceNon-custodial on-chain escrow + AI arbitration for agent-to-agent USDC payments on Base. Seven tools wrap a verified EscrowV1 contract — create, deliver, confirm, dispute, resolve — with read-only introspection if no wallet key is provided.72MIT
- AlicenseNot gradedqualityBmaintenanceAccept crypto payments from AI agents: create an invoice in one call and get a hosted checkout link (USDC/USDT on Celo, Base, Arbitrum, Polygon, BSC). No API key, instant self-custody settlement.MIT
- FlicenseNot gradedqualityBmaintenanceSettlement rails for AI labor — USDC escrow on Base Mainnet, 1% protocol fee, designed for autonomous agents. 10 MCP tools covering the full escrow lifecycle: * Quoting calldata for create-intent, submit-proof, release-funds (broadcast gated) * Single-call x402 payment binding (replaces the 5-step x402 dance with one HMAC-signed POST) * Server-side reputation from on-chain event scan * Li-
Glama MCP Gateway
Add one secure layer between your agents and this server.