← The evidence ledger
Evidence row 1294568
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 3ec75be2-94e9-40a3-8a6f-020f4846005b
- Recorded
- Previous row
- #1222815
- Body SHA-256
- 6aec685aee938f1824118682b67cda4b02485032b51a70778ede7ed2fdbcc7fd
- Leaf
- 0xd4b0d62e795b53e6b44dee65b1da722ee57b0088e0f7404a7f92f0e77d4b101f
What was observed
{
"count": 22,
"tools": [
{
"description": "Create a confirmed stay reservation for a property: links the existing Reservation model + a StayBooking, then holds the guest deposit in escrow (EscrowEvent + TreasuryPosition with kind:hospitality, Solana commitment, PTP attestation). The guest deposit is the trust anchor — released to the business on check-in, refunded on cancellation. This is the hospitality money rail. [verified] Gated to businesses with an attested open-finance settlement rail OR PTP Band A/B, so every booked stay has a real, verified payout path. This is what makes the hospitality vertical trustworthy to guests and exclusive to quality hosts. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"checkIn": {
"description": "ISO date",
"type": "string"
},
"checkOut": {
"description": "ISO date",
"type": "string"
},
"depositAmount": {
"description": "guest deposit to hold (optional, defaults to 1 night)",
"type": "string"
},
"guests": {
"description": "number of guests (optional)",
"type": "string"
},
"propertyId": {
"description": "property id",
"type": "string"
}
},
"required": [
"propertyId",
"checkIn",
"checkOut",
"guests",
"depositAmount"
],
"type": "object"
},
"name": "pabandi_book_stay"
},
{
"description": "Register a verifiable, masked settlement connection for a business: RAAST (Pakistan), Stripe Treasury, Open Banking, Solana wallet, or PayPal. The account reference is masked (never raw), and a PTP attestation is produced so the business can prove it has a real payout path without exposing the account. This is the open-finance connectivity primitive — the trust badge on a listing. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"accountRef": {
"description": "masked/opaque reference (e.g. wallet addr, IBAN tail, Stripe acct id)",
"type": "string"
},
"provider": {
"description": "RAAST | STRIPE_TREASURY | OPEN_BANKING | SOL_WALLET | PAYPAL",
"type": "string"
}
},
"required": [
"provider",
"accountRef"
],
"type": "object"
},
"name": "pabandi_connect_finance"
},
{
"description": "Get PTP discovery (public). Returns verify endpoint, public key, issue endpoint, risk bands, entity types. No auth required.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "pabandi_discover"
},
{
"description": "Discover the full Pabandi Platform: every tool, OpenAPI/spec URL, MCP endpoint, PTP endpoints, SDK info, access tiers, and live status.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "pabandi_discover_platform"
},
{
"description": "Spend against an open PabandiSession -- book a service, pay an invoice, or fund an escrow. REQUIRES a sessionId. Sessions are authorised once against a Trust-Score-derived limit and let you transact repeatedly without a wallet signature per call, which is the entire point. If you do not have a session, call pabandi_open_session first and use the sessionId it returns; this tool will refuse without one rather than fall back to a per-call signature. A booking action may return actionRequired 'deposit_required' plus a deposit object (amount, currency, checkoutUrl); fund the deposit at checkoutUrl before treating the booking as settled.",
"inputSchema": {
"properties": {
"actionType": {
"description": "What kind of action this spend authorises",
"enum": [
"booking",
"invoice_pay",
"escrow"
],
"type": "string"
},
"amount": {
"description": "Amount in USDC to deduct from the session limit",
"type": "number"
},
"idempotencyKey": {
"description": "Optional. A retry with the same key returns the original receipt and does not spend again.",
"type": "string"
},
"payload": {
"additionalProperties": true,
"description": "Action-specific detail. For bookings this must include businessId, so the server can evaluate the business's deposit policy. Opaque to the engine otherwise; hashed into the receipt.",
"type": "object"
},
"sessionId": {
"description": "id of an active PabandiSession (from pabandi_open_session)",
"type": "string"
}
},
"required": [
"sessionId",
"actionType",
"amount"
],
"type": "object"
},
"name": "pabandi_execute_transaction"
},
{
"description": "Quote an offramp/payout from the platform rails (RAAST, Stripe, Solana). Returns estimated fees, execution window, and the rail to use. Feeds the hospitality payout flow. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"amountUsdc": {
"description": "payout amount in USDc",
"type": "string"
}
},
"required": [
"amountUsdc"
],
"type": "object"
},
"name": "pabandi_finance_quote"
},
{
"description": "Resolve a business profile by id (public). Returns the sanitized public view (name, category, address, rating, trustScore, phone, email, coverImageUrl). Owner PII is gated — use pabandi:verify_owner for full PII. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"id": {
"description": "business id (cuid) or googlePlaceId",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "pabandi_get_business"
},
{
"description": "Look up a passport issuance charge by idempotencyKey (public audit). Returns feePab, ownerUserId, agentId, riskBand, capabilities, chargedAt. Example: {\"idempotencyKey\": \"iss-3001\"}",
"inputSchema": {
"properties": {
"idempotencyKey": {
"type": "string"
}
},
"required": [
"idempotencyKey"
],
"type": "object"
},
"name": "pabandi_get_ledger"
},
{
"description": "Issue a scoped Agent Capability Passport (auth required via Bearer token from the owner). Capabilities validated against trust band. Metered at PAB_FEE_PER_PASSPORT $PAB per issue; idempotent via idempotencyKey. Example: {\"agentId\": \"svc-agent-7\", \"capabilities\": [\"act:book\", \"read\"], \"idempotencyKey\": \"iss-3001\"}. Get API key at POST /api/v1/agents/register.",
"inputSchema": {
"properties": {
"agentId": {
"description": "Unique id of the agent this passport is for",
"type": "string"
},
"capabilities": {
"description": "e.g. [\"act:book\",\"read\"]",
"items": {
"type": "string"
},
"type": "array"
},
"idempotencyKey": {
"description": "Optional; retries with same key are not double-charged",
"type": "string"
}
},
"required": [
"agentId",
"capabilities"
],
"type": "object"
},
"name": "pabandi_issue_passport"
},
{
"description": "Return a business's connected open-finance connections (verified + pending). Used by third parties to confirm a business has a real payout path before booking or partnering. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"businessId": {
"description": "business id",
"type": "string"
}
},
"required": [
"businessId"
],
"type": "object"
},
"name": "pabandi_list_finance"
},
{
"description": "List open short-term rentals / stays (Airbnb-style) by city or category. Each property is tied to a business + its open-finance settlement rail if connected. This is the hospitality inventory surface. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"category": {
"description": "PROPERTY_RENTAL / LIVE_SELLER / ...",
"type": "string"
},
"city": {
"description": "city to filter",
"type": "string"
}
},
"required": [
"city",
"category"
],
"type": "object"
},
"name": "pabandi_list_properties"
},
{
"description": "Open a PabandiSession -- an \"open tab\" with a spending limit set by your Trust Score (800+ = $1000 / 30 days, 500+ = $100 / 7 days, below 500 = $20 / 24 hours). Call this before pabandi_execute_transaction; it returns the sessionId every subsequent spend uses. No wallet signature is needed.",
"inputSchema": {
"properties": {
"ownerId": {
"description": "id of that principal",
"type": "string"
},
"ownerType": {
"description": "Which principal this tab belongs to",
"enum": [
"user",
"agent"
],
"type": "string"
}
},
"required": [
"ownerType",
"ownerId"
],
"type": "object"
},
"name": "pabandi_open_session"
},
{
"description": "Check whether the caller can access a given Pabandi platform tool (by MCP tool name). Returns ok + note.",
"inputSchema": {
"properties": {
"toolName": {
"description": "MCP tool name, e.g. pabandi_search",
"type": "string"
}
},
"required": [
"toolName"
],
"type": "object"
},
"name": "pabandi_platform_access"
},
{
"description": "Return the Pabandi Platform discovery doc: every tool on the platform, the OpenAPI/spec URL, the PTP verification endpoint, the public key, and the SDK access info. This is the entry point any third-party app, LLM, or agent uses to learn what Pabandi can do and how to call it. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "pabandi_platform_discovery"
},
{
"description": "Forward-predict the no-show and completion probability for a PROSPECTIVE booking (before it is created). Blends real customer + business history (Beta-binomial shrinkage), lead-time, and day-of-week. Returns predictedNoShow, predictedCompletion, confidence, and the top factors. This is the predictive intelligence the trust rail uses. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"businessId": {
"description": "business id",
"type": "string"
},
"customerId": {
"description": "guest user id",
"type": "string"
},
"reservationTime": {
"description": "ISO date of the proposed stay/booking",
"type": "string"
}
},
"required": [
"customerId",
"businessId",
"reservationTime"
],
"type": "object"
},
"name": "pabandi_predict_booking"
},
{
"description": "Return 24 hourly demand buckets for a business (from completed reservation history). Used to surface busy windows and optimize pricing/staffing. Owner-gated. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"businessId": {
"description": "business id",
"type": "string"
}
},
"required": [
"businessId"
],
"type": "object"
},
"name": "pabandi_predict_demand"
},
{
"description": "Recommend the best upcoming slots for a guest at a business: each candidate scored by predictedCompletion, lightly load-balanced away from peak hours. Returns top 3 slots with predicted completion + demand. Owner-gated. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"businessId": {
"description": "business id",
"type": "string"
},
"customerId": {
"description": "guest user id (optional)",
"type": "string"
},
"daysAhead": {
"description": "range to evaluate (default 7)",
"type": "string"
}
},
"required": [
"businessId",
"customerId",
"daysAhead"
],
"type": "object"
},
"name": "pabandi_recommend_slots"
},
{
"description": "Search verified businesses and services by name, category, city, or location. Every listing is tied to a Pabandi Passport trust score. Uses Postgres contains + OpenStreetMap Nominatim (no paid geo API). Returns real, deduped results — never empty. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"category": {
"description": "business category (RESTAURANT, SALON, PROPERTY_RENTAL, ...)",
"type": "string"
},
"latitude": {
"description": "optional geolocation",
"type": "string"
},
"longitude": {
"description": "optional geolocation",
"type": "string"
},
"search": {
"description": "free-text search term",
"type": "string"
}
},
"required": [
"search",
"category",
"latitude",
"longitude"
],
"type": "object"
},
"name": "pabandi_search_services"
},
{
"description": "Initialize a milestone-based or native SOL/BSC escrow for a booking: business deposits, guest/host holds collateral, release on completion. This is the real-chain escrow rail (Solana + BSC Hardhat contracts). GATED to exclusive platform access — real chain writes require verified ownership + settlement rail. [exclusive] Exclusive: real-chain escrow writes are gated behind a verified PTP trust band (A/B) or an exclusive platform grant, so only trusted counterparties open real money on chain. Verified-only stays use the simulated escrow path. This is the premium moat — the real rail, gated. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"amount": {
"description": "value in smallest unit",
"type": "string"
},
"businessAddress": {
"description": "business wallet address",
"type": "string"
},
"chain": {
"description": "SOL | BSC",
"type": "string"
},
"payoutAddress": {
"description": "freelancer/guest payout address",
"type": "string"
},
"reservationId": {
"description": "reservation id",
"type": "string"
}
},
"required": [
"reservationId",
"businessAddress",
"payoutAddress",
"amount",
"chain"
],
"type": "object"
},
"name": "pabandi_start_escrow"
},
{
"description": "Verify a Pabandi PTP attestation (agent/business/individual/trust rail). Input base64-encoded attestation token and optional need (e.g. \"act:book\"). Returns valid, grantedCapabilities, riskBand, expiresAt. Works offline. Example: {\"token\": \"...base64...\", \"need\": \"act:book\"}",
"inputSchema": {
"properties": {
"need": {
"description": "Optional capability the subject must hold, e.g. \"act:book\"",
"type": "string"
},
"token": {
"description": "Base64-encoded PTPAttestation or PTPAgentAttestation",
"type": "string"
}
},
"required": [
"token"
],
"type": "object"
},
"name": "pabandi_verify_passport"
},
{
"description": "Verify a Pabandi PTP attestation (business, individual, agent, or trust rail). Re-executes the HMAC-SHA512 signature over a fixed subset of fields and returns valid + the verified claims. Offline-verifiable: any party can check a signed attestation without calling Pabandi. This is the trust primitive every third-party action gates on. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"token": {
"description": "base64-encoded PTPAttestation (optional: need=capability to gate on)",
"type": "string"
}
},
"required": [
"token"
],
"type": "object"
},
"name": "pabandi_verify_trust_attestation"
},
{
"description": "Generate a zero-knowledge proof that an escrow split (deposit = price - commission, fee = deposit*rate, binding commitment to the valuation) is valid, WITHOUT revealing the private price/valuation/secret. Packs into a PTP attestation so the proof is verifiable offline by any third party. Real Noir circuit (compiled at startup); constraint-execution proof when no SNARK prover is available; upgrades to a succinct signature when the Barretenberg pipeline lands. [owner] Proves the escrow split is correct without revealing the valuation — the privacy + verifiability moat for real-estate/hospitality deals. Upgrades to a succinct on-chain-verifiable SNARK when Barretenberg is in the pipeline. This MCP tool makes a real HTTP call to the canonical Pabandi endpoint and returns the actual platform response.",
"inputSchema": {
"properties": {
"agent_secret": {
"description": "non-zero stake secret (private, anti-Sybil)",
"type": "string"
},
"commission": {
"description": "agent/facilitator cut (private)",
"type": "string"
},
"consecutiveMonths": {
"description": "tenancy months (public)",
"type": "string"
},
"deadline": {
"description": "unix ts (public)",
"type": "string"
},
"deposit": {
"description": "lamports (public)",
"type": "string"
},
"price": {
"description": "property valuation (private)",
"type": "string"
},
"rate": {
"description": "basis points platform fee (public)",
"type": "string"
},
"valuation_hash": {
"description": "commitment to off-chain terms (private)",
"type": "string"
}
},
"required": [
"deposit",
"consecutiveMonths",
"rate",
"deadline",
"price",
"commission",
"valuation_hash",
"agent_secret"
],
"type": "object"
},
"name": "pabandi_zk_realestate_proof"
}
]
}What the leaf hashes
{"body":"6aec685aee938f1824118682b67cda4b02485032b51a70778ede7ed2fdbcc7fd","id":1294568,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793399927157295,"prev":1222815,"subject":"3ec75be2-94e9-40a3-8a6f-020f4846005b","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (243099 rows).
- 0xd4b0c9d0a612a0203d11583d99caa32dc6439ef1276d8ff1b284d99fe8ff56a2
- 0xa03b6d2605ea5f8c55ce2326a82bc076a8c0f02772b5d688e8e7003f5392f446
- 0x9d5469216d917c3b17bf97bf3db59013922af0338d807f26647b2454882bfec5
- 0xb0e350757ac5361d2d57f494425da6cb8187957cc4ad4479c0e203efed81d49f
- 0x48a6926d4801a95c71b900e463b81b2deb5bec77fb18dcd564da3b456f22f690
- 0x9514142002a88d0a642a855563274a1973419dc93e72eb2e10b90e38aed27635
- 0x8efb64e95edd1920ad4fafd7e33d5081aa7c693bca80ae61f651e1b78dd58dd8
- 0x0578dc0aaa0260832ae8f33ec345f646a2b4c333d4e3b28b5caa8d2494f10e86
- 0x76cdc77af6250c0a6dc299081fe63212676910742aa93867e7989980226f9d4d
- 0xf54ded7af019c6999e152d9e81c7d9386430d59fd3093d4cdc2417eb6a231428
- 0xcbdce4aab997088bd56bc318d8b1cf23413ffcebbc31498e8faee664b63feeda
- 0x41785913cf8a748ad4b7f6562cd47054490c6e6361d26689f4b8aeba4a1d3afe
- 0xc6d56e36bc916fc7c1441d5c6959a1f0ff7bc0a11547893598fdff5ead2b0cb1
- 0xeba66653f0c009452ec9977578ba573460df3f672595eaa16c1030e3b20ce767
- 0xf007cd9640267a58ddffce96e27f5682cf5c47530f53dc15dc53e4ccd405c6c9
- 0xfbe61dc2d59668ac573e5eab865747e21d38bf2fe4c64762beef01f1018a4dea
- 0x71e74c274b23c9047354edb6dcd2c654415e3986b8bd875dae992996ea12e22b
- 0x0c43c73b62a5d49ee1444b5dc4195fc5b16b141d3f4458e2e9fbd5fd6ecb367d
- Day root
- 0x0826c7ad6039e06a2360ca0a4a3a4fe7f2626c6dc19f71a37599386f78b39875
- Chained
- 0x36b4c8a1063758f0b8765fa1bdf75fa92fb543cc183add3e261880ee2bd1f822
- Published
- On Arc Testnet, block 69923247: 0x8704744146c6967c8abc9e9a99de4db7283b29e840922ea83a69b6fe776e6861