← The evidence ledger
Evidence row 1006278
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint b78782aa-272e-4be6-b7a5-ffc97a54d7a1
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 71ff3ef68c4ef7f6e301e6e58ea00bc7e2ffc0439160bf5c6824b3ef0866e150
- Leaf
- 0x8c2c39c2278288716464c8411981952d0e479dfa83d29c771102ddba3cdbf43d
What was observed
{
"count": 19,
"tools": [
{
"description": "Buy an active prepared artifact from a wallet-enrolled merchant with standard x402: the first call returns payment requirements; sign locally and retry the same arguments with _meta['x402/payment']. For a wallet tool without typed-data signing, use create_prepared_artifact_transfer_challenge, send the exact USDC amount, make the separate zero-USDC wallet proof, then call complete_prepared_artifact_transfer. Reuse the same identifiers and payment proof after timeouts.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"idempotencyKey": {
"pattern": "^[A-Za-z0-9_-]{16,128}$",
"type": "string"
},
"merchantId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"offerId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"merchantId",
"offerId",
"idempotencyKey"
],
"type": "object"
},
"name": "buy_prepared_artifact"
},
{
"description": "Rotate a lost merchant API key by submitting the merchant wallet's EIP-191 signature of the exact message returned by create_merchant_credential_rotation_challenge. This method needs no transaction or gas. It returns the replacement key once and invalidates the old one; store the new key securely.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"signature": {
"pattern": "^0x[0-9a-fA-F]{130}$",
"type": "string"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"challengeId",
"signature"
],
"type": "object"
},
"name": "complete_merchant_credential_rotation_signature"
},
{
"description": "Rotate a merchant API key after the wallet tool submits and confirms a challenge-specific zero-USDC action. Returns the replacement key once and invalidates the old one. Store the new key in the agent's secret manager immediately.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"method": {
"enum": [
"approve_zero",
"transfer_zero"
],
"type": "string"
},
"transactionHash": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"challengeId",
"method",
"transactionHash"
],
"type": "object"
},
"name": "complete_merchant_credential_rotation_transaction"
},
{
"description": "Complete merchant enrollment using the EIP-191 signature of the exact message returned by create_merchant_enrollment_challenge. Accepts only a wallet signature, never a private key. Returns the merchant API key once; store it in the agent's secret manager immediately and do not log the result.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"name": {
"maxLength": 64,
"minLength": 1,
"pattern": "^[A-Za-z0-9][A-Za-z0-9._ -]*$",
"type": "string"
},
"signature": {
"pattern": "^0x[0-9a-fA-F]{130}$",
"type": "string"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"name",
"challengeId",
"signature"
],
"type": "object"
},
"name": "complete_merchant_enrollment_signature"
},
{
"description": "Complete enrollment after the wallet tool submits and confirms the challenge-specific zero-USDC action. Accepts the transaction hash; never accepts or needs a private key. Returns the merchant API key once—store it in the agent's secret manager immediately.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"method": {
"enum": [
"approve_zero",
"transfer_zero"
],
"type": "string"
},
"name": {
"maxLength": 64,
"minLength": 1,
"pattern": "^[A-Za-z0-9][A-Za-z0-9._ -]*$",
"type": "string"
},
"transactionHash": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"name",
"challengeId",
"method",
"transactionHash"
],
"type": "object"
},
"name": "complete_merchant_enrollment_transaction"
},
{
"description": "Verify a direct Base USDC artifact payment and the buyer's separate zero-USDC wallet-control proof, then deliver the retained artifact. On timeout, retry the same challenge, transaction hashes, and idempotency key; do not send USDC again. The transaction hash alone is not enough to claim a purchase.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"idempotencyKey": {
"pattern": "^[A-Za-z0-9_-]{16,128}$",
"type": "string"
},
"identityTransactionHash": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
},
"merchantId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"method": {
"enum": [
"approve_zero",
"transfer_zero"
],
"type": "string"
},
"offerId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"payer": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"paymentTransactionHash": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
}
},
"required": [
"merchantId",
"offerId",
"payer",
"challengeId",
"method",
"identityTransactionHash",
"paymentTransactionHash",
"idempotencyKey"
],
"type": "object"
},
"name": "complete_prepared_artifact_transfer"
},
{
"description": "Create a short-lived challenge for the payer wallet to sign accepted or disputed for a retained result. This does not charge or sign for the wallet. The returned message must be signed with EIP-191 by the payer.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"operationId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"payer": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"verdict": {
"enum": [
"accepted",
"disputed"
],
"type": "string"
}
},
"required": [
"operationId",
"payer",
"verdict"
],
"type": "object"
},
"name": "create_delivery_receipt_challenge"
},
{
"description": "Begin recovery of a lost merchant API key. Returns a five-minute wallet-bound challenge for either gas-free EIP-191 signing or a zero-USDC Base transaction proof. The wallet signs or submits the action; 402Mob never signs for it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet"
],
"type": "object"
},
"name": "create_merchant_credential_rotation_challenge"
},
{
"description": "Begin headless merchant enrollment. Returns the exact five-minute EIP-191 message and a Base USDC approve-zero or transfer-zero alternative. Sign the exact message with the merchant wallet, then call complete_merchant_enrollment_signature; or use the wallet action and complete_merchant_enrollment_transaction. 402Mob never receives a private key. Store the returned merchant API key securely.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"maxLength": 64,
"minLength": 1,
"pattern": "^[A-Za-z0-9][A-Za-z0-9._ -]*$",
"type": "string"
},
"wallet": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"wallet",
"name"
],
"type": "object"
},
"name": "create_merchant_enrollment_challenge"
},
{
"description": "Prepare a noncustodial direct-USDC checkout for a prepared artifact. Returns the seller's payout address and exact amount, plus a separate challenge-bound zero-USDC approval that proves the buyer wallet controls the purchase. Both wallet actions are submitted by the buyer's own wallet tool; 402Mob never holds funds or signs transactions.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"idempotencyKey": {
"pattern": "^[A-Za-z0-9_-]{16,128}$",
"type": "string"
},
"merchantId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"offerId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"payer": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
}
},
"required": [
"merchantId",
"offerId",
"payer",
"idempotencyKey"
],
"type": "object"
},
"name": "create_prepared_artifact_transfer_challenge"
},
{
"description": "List a merchant's active prepared-artifact offers, fixed prices, and checkout IDs. This is public and does not require a bearer key.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"merchantId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"merchantId"
],
"type": "object"
},
"name": "discover_merchant_offers"
},
{
"description": "List operations assigned to the calling coordinator agent. Requires an Authorization bearer key with operations:read scope.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_assigned_operations"
},
{
"description": "Read signed delivery receipt proofs for an assigned operation. Requires operations:read scope in the MCP Authorization header.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"operationId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"operationId"
],
"type": "object"
},
"name": "read_assigned_delivery_receipts"
},
{
"description": "Read redacted operation evidence, including result hash, settlement record, and delivery receipt summaries. Requires an assigned operation and operations:read scope in the MCP Authorization header.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"operationId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"operationId"
],
"type": "object"
},
"name": "read_assigned_operation_evidence"
},
{
"description": "Check settlement evidence for a pending 402Mob operation using its x402 settlement transaction hash. Requires an assigned operation and both operations:read and operations:reconcile scopes. This does not submit payment.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"operationId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"transaction": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
}
},
"required": [
"operationId",
"transaction"
],
"type": "object"
},
"name": "reconcile_assigned_operation"
},
{
"description": "Compare a Base transaction with an expected USDC invoice sender, recipient and amount. Returns match only after 3 confirmations. Costs 0.02 USDC on Base. Supply and persist an idempotencyKey for safe retries.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"expectedAmountUSDC": {
"pattern": "^(?!0+(?:\\.0{1,6})?$)(?:0|[1-9][0-9]{0,17})(?:\\.[0-9]{1,6})?$",
"type": "string"
},
"expectedRecipient": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"expectedSender": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"idempotencyKey": {
"pattern": "^[A-Za-z0-9_-]{16,128}$",
"type": "string"
},
"transactionHash": {
"pattern": "^0x[0-9a-fA-F]{64}$",
"type": "string"
}
},
"required": [
"transactionHash",
"expectedSender",
"expectedRecipient",
"expectedAmountUSDC",
"idempotencyKey"
],
"type": "object"
},
"name": "reconcile_base_invoice"
},
{
"description": "Resolve any known offer ID to the currently published latest version in its immutable offer series. Does not require a bearer key or payment.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"merchantId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"offerId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
}
},
"required": [
"merchantId",
"offerId"
],
"type": "object"
},
"name": "resolve_latest_merchant_offer"
},
{
"description": "Search the public opt-in merchant directory by name or active offer text. Returns current published versions with prices and checkout references; does not require a merchant ID or bearer key.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cursor": {
"maximum": 100000000,
"minimum": 0,
"type": "integer"
},
"limit": {
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"query": {
"maxLength": 80,
"type": "string"
}
},
"type": "object"
},
"name": "search_merchants"
},
{
"description": "Submit the payer wallet's EIP-191 signature for a delivery receipt challenge. The signature must be created by the payer wallet, not by 402Mob.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"challengeId": {
"pattern": "^[a-f0-9]{64}$",
"type": "string"
},
"operationId": {
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"type": "string"
},
"signature": {
"pattern": "^0x(?:[0-9a-fA-F]{128}|[0-9a-fA-F]{130})$",
"type": "string"
}
},
"required": [
"operationId",
"challengeId",
"signature"
],
"type": "object"
},
"name": "submit_delivery_receipt"
}
]
}What the leaf hashes
{"body":"71ff3ef68c4ef7f6e301e6e58ea00bc7e2ffc0439160bf5c6824b3ef0866e150","id":1006278,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793262360201255,"prev":null,"subject":"b78782aa-272e-4be6-b7a5-ffc97a54d7a1","subject_kind":"endpoint"}Proof
Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.