Serveur MCP

Tracea

io.github.Chriscorp/tracea

Ce que fait ce MCP

Provides on-chain identity, permissions, revocation checks, action logging, payment authorization, and x402 payment verification for AI agents.

check_payment_allowed
Dry-run a payment BEFORE executing it: checks on-chain whether the agent's smart account would allow it (permission granted, within financial cap, destination approved if a whitelist exists). Returns { allowed, reason }.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address', 'destination', 'amount_eth'], 'properties': {'amount_eth': {'type': 'string', 'description': "Amount in ETH, e.g. '0.001'"}, 'destination': {'type': 'string', 'description': 'Destination address to pay'}, 'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent (its smart account address)'}}}
get_action
Read a single logged agent action from the Tracea ActionLog contract by its numeric ID. Returns agent, action type, payload and timestamp.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['action_id'], 'properties': {'action_id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Numeric action ID'}}}
get_agent_actions
List all on-chain action IDs logged for a given agent on Tracea.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent'}}}
get_agent_info
Get the raw Tracea registry record for an agent: owner, permission scope, financial cap, active status, timestamps.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent'}}}
get_my_identity
Get this agent's full Tracea identity (activity apiKey +, for v2 agents, its EOA private key and ERC-4337 smart account address) using a one-time activation code from the owner. The private key is returned ONLY ONCE — save it securely.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of this agent'}, 'activation_code': {'type': 'string', 'description': 'One-time activation code (or use ?code= / x-activation-code)'}}}
get_owner_agents
List all agent addresses registered on Tracea by a given owner address.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['owner_address'], 'properties': {'owner_address': {'type': 'string', 'description': 'Ethereum address of the owner'}}}
get_payment_whitelist
Get the list of owner-approved payment destination addresses for an agent (anti-injection guardrail). Non-empty list = the agent's smart account can ONLY pay these addresses. Empty = all allowed.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent'}}}
get_registration_file
Fetch the ERC-8004 compatible registration file for a Tracea-registered agent, including the KYA legal principal block.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent'}}}
is_agent_revoked
Check whether an agent's mandate has been revoked on Tracea (immediate, scheduled or partial revocation).
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent'}}}
log_action
Log an agent action on-chain via Tracea (immutable audit trail, court-ready). Requires TRACEA_API_KEY env var. The action is signed by the account's wallet.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address', 'action_type'], 'properties': {'data': {'type': 'string', 'maxLength': 2000, 'description': 'Optional human-readable payload (JSON string recommended)'}, 'action_type': {'type': 'string', 'maxLength': 64, 'description': "Short action type, e.g. 'email_sent', 'payment_initiated'"}, 'agent_address': {'type': 'string', 'description': 'Ethereum address of the acting agent'}}}
payment_incoming
Verify a x402 payment ON-CHAIN (the USDC transfer to your address, exact amount) and mark the session fulfilled. The blockchain is the ONLY source of truth — the payment_sessions table is never trusted alone. Returns { status: 'fulfilled', resource } if verified, or an error if not yet paid/expired.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['payment_id', 'tx_hash'], 'properties': {'tx_hash': {'type': 'string', 'description': 'The on-chain transaction hash of the USDC transfer / payX402 call'}, 'payment_id': {'type': 'string', 'description': 'The paymentId returned by payment_required (pay_...)'}}}
payment_required
Create a x402 payment request (HTTP 402) for a resource you sell to another agent. Returns a paymentId, the USDC amount in units, the destination address and the TraceaPayments contract to call. The paying agent must then call TraceaPayments.payX402(destination, amount, paymentId) on-chain — the contract enforces financial cap + whitelist on-chain. Deliver the resource only after payment_incoming confirms fulfilment.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['destination', 'amount_usdc'], 'properties': {'agent': {'type': 'string', 'description': 'Address of the paying agent, if known'}, 'resource': {'type': 'string', 'description': 'Identifier/URL of the resource to unlock after payment'}, 'amount_usdc': {'type': 'string', 'description': "Amount in USDC, e.g. '0.50' or '2'"}, 'destination': {'type': 'string', 'description': 'Address that receives the USDC payment (yours)'}, 'ttl_seconds': {'type': 'number', 'description': 'Validity of the payment session (30-3600s, default 300)'}}}
payment_status
Get the status of a x402 payment session (pending | paid | fulfilled | expired), with destination, amount and tx hash. Useful to poll while waiting for the paying agent's on-chain transaction.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['payment_id'], 'properties': {'payment_id': {'type': 'string', 'description': 'The paymentId returned by payment_required (pay_...)'}}}
report_activity
Report an action the agent just performed to its owner's Tracea activity feed (off-chain, free, instant). Call this AFTER every significant action (email sent, message posted, file modified, payment, purchase, booking...). Auth via the Tracea MCP URL (?key=...) from the agent's identity page, OR self-activate with a one-time activation code (?code=... or x-activation-code header) — the tool then receives its apiKey automatically.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address', 'category', 'summary'], 'properties': {'details': {'type': 'string', 'maxLength': 2000, 'description': 'Optional JSON string with extra context'}, 'summary': {'type': 'string', 'maxLength': 500, 'description': 'Short human-readable summary of what was done'}, 'category': {'enum': ['email', 'payment', 'document', 'message', 'purchase', 'social', 'data_access', 'rdv', 'code', 'other'], 'type': 'string', 'description': 'Action category'}, 'agent_address': {'type': 'string', 'description': 'Ethereum address of this agent'}, 'in_permission': {'type': 'boolean', 'description': 'false if this action is OUTSIDE the granted permissions (flagged red)'}, 'permission_label': {'type': 'string', 'description': 'Which owner-granted permission this action falls under'}}}
verify_agent
Verify an AI agent's on-chain legal identity on Tracea (Base Sepolia). Returns registration status, financial cap, permission scope, revocation status, and KYA legal identity (mandant) when available. Use this BEFORE trusting or delegating work to an agent.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['agent_address'], 'properties': {'agent_address': {'type': 'string', 'description': 'Ethereum address of the agent (0x...)'}}}
Ajouté
payment_status
17 September 2026 12:40
Ajouté
payment_incoming
17 September 2026 12:40
Ajouté
payment_required
17 September 2026 12:40
Ajouté
check_payment_allowed
17 September 2026 12:40
Ajouté
get_payment_whitelist
17 September 2026 12:40
Ajouté
get_my_identity
17 September 2026 12:40
Ajouté
report_activity
17 September 2026 12:40
Ajouté
get_registration_file
17 September 2026 12:40
Ajouté
log_action
17 September 2026 12:40
Ajouté
get_agent_actions
17 September 2026 12:40
Ajouté
get_action
17 September 2026 12:40
Ajouté
get_owner_agents
17 September 2026 12:40
Ajouté
is_agent_revoked
17 September 2026 12:40
Ajouté
get_agent_info
17 September 2026 12:40
Ajouté
verify_agent
17 September 2026 12:40