iEscrow
Crypto escrow for AI agents: quote, open and follow P2P trades; money moves only with human 2FA.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http iescrow 'https://api.iescrow.io/mcp'
{
"mcpServers": {
"iescrow": {
"type": "http",
"url": "https://api.iescrow.io/mcp"
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
iEscrow MCP server
iEscrow is a cryptocurrency escrow platform: in every trade the crypto is held by iEscrow until both sides have delivered, so nobody has to hand over first. This repository documents the iEscrow MCP server, which lets an AI agent (Claude, ChatGPT or any MCP host) operate an iEscrow account on behalf of the user who authorized it.
- Endpoint:
https://api.iescrow.io/mcp - Transport: Streamable HTTP, stateless
- Auth: OAuth 2.1 (authorization server at
https://api.iescrow.io), PKCE, dynamic client registration - Tools: 16, listed in TOOLS.md
- Website: https://iescrow.io · For AI agents: https://iescrow.io/ai
The principle: the agent prepares, the human commits
The agent can quote, open trades, read balances and states, and prepare marketplace ads. Anything that moves money is not executed by the agent: the tool creates an approval and returns a link. The account owner opens that link, sees exactly what is about to happen, and approves it with their two-factor code.
What the agent can never do, by design:
- withdraw funds from the account,
- add or change payment accounts,
- upload a payment receipt (only the human can, through a dedicated link),
- lock crypto into escrow or confirm that a payment arrived without the human's approval,
- deliver crypto to an external wallet (everything lands in the user's iEscrow balance).
The API enforces this with an allow-list of routes for agent tokens; the MCP server only wraps those routes.
Requirements
An iEscrow account with:
- a verified email,
- approved identity verification (KYC),
- two-factor authentication (TOTP) enabled.
The connection screen (/connect) checks the three before issuing a token. Trades can be executed by an agent only in the countries where iEscrow is enabled for agents; get_readiness tells you which.
Connecting
Claude (claude.ai, desktop, mobile)
Settings → Connectors → Add custom connector → name iEscrow, URL https://api.iescrow.io/mcp. Claude discovers the authorization server, opens the iEscrow consent screen, and the connection is ready once you approve it.
Claude Code
claude mcp add --transport http iescrow https://api.iescrow.io/mcp
Then run /mcp inside Claude Code to complete the login.
ChatGPT
Settings → Connectors → Create (developer mode) → name iEscrow, MCP server URL https://api.iescrow.io/mcp, authentication OAuth. ChatGPT registers itself as a client and sends you to the iEscrow consent screen.
Any other MCP host
Point the host to the URL above with the Streamable HTTP transport. The server publishes /.well-known/oauth-protected-resource, and the authorization server publishes /.well-known/oauth-authorization-server; hosts that implement the MCP authorization spec need nothing else. See examples/ for configuration snippets.
Scopes
| Scope | Grants |
|---|---|
profile:read | who the user is and whether the account is ready to trade |
quotes:read | executable offers and prices on the marketplace |
wallet:read | balances and masked payment accounts |
trades:read | state of the user's trades and ads |
trades:write | open trades, request approvals to lock crypto or confirm payments, cancel own requests |
ads:write | prepare marketplace ads (always subject to the human's approval) |
Scopes are chosen on the consent screen and can be revoked at any time from Connected apps in the user's iEscrow settings.
Rate limits
Per connection: 60 calls per minute, 10 trade openings per hour, 20 money-moving approval requests per hour. One concurrent long-poll (wait_for_trade_update) per user. A limited call returns error_key and retry_after_s.
A typical flow (buying crypto with a bank transfer)
get_readiness— confirm the account can trade.get_quotewithside=buy, the crypto, the fiat and the amount — pick an offer; notecompatible_account_ids.open_tradewith the offer id, the amount and a compatiblepayment_account_id.get_trade— wait untilcrypto_fundedis true. The human must not pay before that.get_proof_upload_link— give the user the link; it shows the exact amount (the cents are the payment key) and the account to pay. The user pays, attaches the receipt and declares the payment there.wait_for_trade_update— the trade moves toreleasedwhen the seller confirms. The crypto is now in the user's iEscrow balance.
Selling is the mirror image: open_trade with side=sell, then fund_escrow (the human approves the lock by link), then confirm_received once the fiat arrives (again approved by link).
Errors
Every error is returned as structured content with error: true, an HTTP-like status, a stable error_key and a human-readable message. When an action needs the human, the response carries approval_required: true and approval.approve_url; poll check_approval with approval.public_id to learn the outcome.
Security
The MCP server never opens the database and holds no secrets of its own: it verifies the user's access token (RS256, issuer and audience pinned) and forwards the same bearer to the API. Reports about the agent channel: contact@iescrow.io.
About this repository
This repository holds the public documentation of the server and the manifest used to list it in MCP registries. The server's source code is not published here.
Questions fréquentes
Qu'est-ce que iEscrow ?
Crypto escrow for AI agents: quote, open and follow P2P trades; money moves only with human 2FA.
Comment installer iEscrow ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http iescrow 'https://api.iescrow.io/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour iEscrow ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
iEscrow est-il open source ?
Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.
Qui maintient iEscrow ?
Il est publié par iEscrow. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.