addrbookFor publishers
← The evidence ledger

Evidence row 1763130

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 49b57c4c-f18f-4d47-83ef-e223eff9d9f3
Recorded
Previous row
#1286902
Body SHA-256
16203b43cf0c5268ec22b70be99b51bb21322bdc6d9fea91b244ae0f060e4faf
Leaf
0x49cb3ab6e4accd5be92d2d00036ab5fcd781491b96762ea1c631f6a2028bdf5a

What was observed

{
  "count": 20,
  "tools": [
    {
      "description": "Let the agents work on a run from start_o2c_demo or start_o2c_run until they need the founder, the run ends, or up to \"steps\" actions (about 25 seconds at most). Returns what each agent did, every order's status and the totals. When exceptions are waiting, call list_o2c_exceptions.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "runId": {
            "description": "runId from start_o2c_demo or start_o2c_run.",
            "type": "string"
          },
          "steps": {
            "description": "Most actions to take; default 10.",
            "maximum": 20,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "runId"
        ],
        "type": "object"
      },
      "name": "advance_o2c_run"
    },
    {
      "description": "Ask a question about a saved map. By default it answers free from the map's website pages and entries, with citations. Set ai=true for a written Requ AI answer, which uses account credits (Team). Prefer get_map for an overview. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "ai": {
            "description": "Use Requ AI (uses credits). Default false.",
            "type": "boolean"
          },
          "mapId": {
            "description": "Saved map id (uuid) from list_maps or map_website.",
            "type": "string"
          },
          "question": {
            "description": "The question, up to 1,000 characters.",
            "type": "string"
          }
        },
        "required": [
          "mapId",
          "question"
        ],
        "type": "object"
      },
      "name": "ask_map"
    },
    {
      "description": "Check whether AI agents can read, understand and act on any website (bots allowed, readable pages, product data, checkout, help). Reads up to 3 public pages; results are kept for 24 hours and public at requstory.com/ai-readiness/<domain>/. Faster and narrower than map_website. If status is \"queued\" or \"running\", call again with start=false.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "start": {
            "description": "Start a new check if none is fresh (default true). Use false to only read the result.",
            "type": "boolean"
          },
          "website": {
            "description": "Website address or domain, e.g. \"posthog.com\" or \"https://www.example.co.uk\".",
            "type": "string"
          }
        },
        "required": [
          "website"
        ],
        "type": "object"
      },
      "name": "check_ai_readiness"
    },
    {
      "description": "The run's results: the ledger (every order and invoice with paid, owed and due), the emails to send, pick lists, every decision with who made it (founder, MCP, autopilot or an approval rule) and the billable moments. This is the audit record; use it when the run is done.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "runId": {
            "description": "runId from start_o2c_demo or start_o2c_run.",
            "type": "string"
          }
        },
        "required": [
          "runId"
        ],
        "type": "object"
      },
      "name": "export_o2c_run"
    },
    {
      "description": "Show the account behind the API key: plan (free or team), credits left, number of saved maps and maps left today, and order-to-cash use this month (orders billed, credits used, the price per order). Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "get_account"
    },
    {
      "description": "Get a made-up company run end to end by AI agents, built from real public company maps, as a Requ template: teams as agent lanes, the model for each step, steps a person keeps, and monthly model cost. Use it as a starting point to design an AI-agent-run business; edit the Requ and render it with npx @requstory/cli. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "company": {
            "description": "Kind of company.",
            "enum": [
              "online-store",
              "software-startup",
              "agency",
              "professional-firm",
              "local-service-business"
            ],
            "type": "string"
          },
          "mix": {
            "description": "Model mix: mixed (default), large or small.",
            "enum": [
              "mixed",
              "large",
              "small"
            ],
            "type": "string"
          },
          "name": {
            "description": "Optional company name for the template.",
            "type": "string"
          }
        },
        "required": [
          "company"
        ],
        "type": "object"
      },
      "name": "get_ai_company"
    },
    {
      "description": "Teams, processes and who owns each at a company Requstory has mapped, so you know who to contact or hand work to. Owners the company published itself in its operating-model.requ are marked confirmedByCompany; the rest were read from its website. \"claimed\" is true when someone who controls the site claimed the page. Accepts a slug from search_companies or a domain.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "company": {
            "description": "Company slug (e.g. \"requstory-com\") or domain (e.g. \"requstory.com\").",
            "type": "string"
          }
        },
        "required": [
          "company"
        ],
        "type": "object"
      },
      "name": "get_company_owners"
    },
    {
      "description": "Get a public company's ease-of-doing-business score (0–100, four parts: find and understand, get started online, get help, AI-agent ready), its ranking place, and the gaps that cost it points, most costly first, with proof. Use after search_companies. For a site with no public page, use check_ai_readiness instead.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "slug": {
            "description": "Company slug from search_companies, e.g. \"posthog-com\".",
            "type": "string"
          }
        },
        "required": [
          "slug"
        ],
        "type": "object"
      },
      "name": "get_company_score"
    },
    {
      "description": "Read a saved map in brief: journey stages, teams with owners and processes, teams with no owner, checks peers pass but this company misses, AI-agent readiness gaps, fix progress and source pages. Set full=true for the whole JSON model. Use ask_map for a specific question instead. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "full": {
            "description": "Include the full JSON model (large). Default false.",
            "type": "boolean"
          },
          "mapId": {
            "description": "Saved map id (uuid) from list_maps or map_website.",
            "type": "string"
          }
        },
        "required": [
          "mapId"
        ],
        "type": "object"
      },
      "name": "get_map"
    },
    {
      "description": "Check a map_website job that was still running. When status is \"complete\" it returns mapId for get_map. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "jobId": {
            "description": "jobId returned by map_website.",
            "type": "string"
          }
        },
        "required": [
          "jobId"
        ],
        "type": "object"
      },
      "name": "get_map_job"
    },
    {
      "description": "Everything about one order in a run: what the agent read, the invoice, its emails, any return, and every step and decision on it in order. Use for questions about a single order; advance_o2c_run lists the order ids.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "order": {
            "description": "Order id, e.g. \"#2001\".",
            "type": "string"
          },
          "runId": {
            "description": "runId from start_o2c_demo or start_o2c_run.",
            "type": "string"
          }
        },
        "required": [
          "runId",
          "order"
        ],
        "type": "object"
      },
      "name": "get_o2c_order"
    },
    {
      "description": "Status and live timeline of an AI readiness report order: every step, and whether an agent, code or a person did it. Status: awaiting_payment, in_progress, delivered, exception, refunded or cancelled.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "token": {
            "description": "token returned by order_readiness_report.",
            "type": "string"
          }
        },
        "required": [
          "token"
        ],
        "type": "object"
      },
      "name": "get_report_order"
    },
    {
      "description": "List the maps saved in your Requstory account (newest first) with their ids. Use to find a mapId for get_map or ask_map. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {},
        "required": [],
        "type": "object"
      },
      "name": "list_maps"
    },
    {
      "description": "List the questions the agents are waiting on the founder for (credit over the limit, short stock, packing, reminder wording, unclear bank payments, returns), each with its allowed choices. Show them to the person; do not answer them yourself. Then call resolve_o2c_exception.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "runId": {
            "description": "runId from start_o2c_demo or start_o2c_run.",
            "type": "string"
          }
        },
        "required": [
          "runId"
        ],
        "type": "object"
      },
      "name": "list_o2c_exceptions"
    },
    {
      "description": "Map how a company works from up to 6 pages of its public website: customer journey, teams, processes and handoffs. The map is saved to your Requstory account (free; 5 a day). Waits up to 25 seconds; if the job is still running, poll get_map_job. Then read it with get_map. Needs an API key.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "website": {
            "description": "Website address or domain, e.g. \"posthog.com\" or \"https://www.example.co.uk\".",
            "type": "string"
          }
        },
        "required": [
          "website"
        ],
        "type": "object"
      },
      "name": "map_website"
    },
    {
      "description": "Order the 9-page AI readiness report for a company, made and emailed by Requstory's AI agents about 2 minutes after payment: company map, every process step by step (agent alone, agent prepares, person), the three best places to start with tested models, ease score against similar companies and a 30-day plan. Price 1.00 USD. Returns checkoutUrl: give it to the person to pay on Stripe; never pay for them. Refunded automatically if the website can't be read. Sample: https://requstory.com/store/sample/",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "buyerName": {
            "description": "Name of the person ordering.",
            "type": "string"
          },
          "companyName": {
            "description": "Company name, printed on every page.",
            "type": "string"
          },
          "email": {
            "description": "Where the report is emailed. Use the person's own address with their consent.",
            "type": "string"
          },
          "volume": {
            "description": "Optional: about how many orders, invoices or customer messages a month, so costs and savings are theirs.",
            "minimum": 1,
            "type": "integer"
          },
          "website": {
            "description": "Website address or domain, e.g. \"posthog.com\" or \"https://www.example.co.uk\".",
            "type": "string"
          }
        },
        "required": [
          "website",
          "companyName",
          "buyerName",
          "email"
        ],
        "type": "object"
      },
      "name": "order_readiness_report"
    },
    {
      "description": "Record the founder's decision on one exception from list_o2c_exceptions, using only the choice the person made (for example accept an order over its credit limit, or approve a refund). The decision is logged as made through MCP. Then call advance_o2c_run.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "choice": {
            "description": "One of the exception's choices, e.g. \"accept\".",
            "type": "string"
          },
          "exceptionId": {
            "description": "exceptionId from list_o2c_exceptions.",
            "type": "string"
          },
          "runId": {
            "description": "runId from start_o2c_demo or start_o2c_run.",
            "type": "string"
          },
          "text": {
            "description": "Optional edited wording, for a reminder email.",
            "type": "string"
          }
        },
        "required": [
          "runId",
          "exceptionId",
          "choice"
        ],
        "type": "object"
      },
      "name": "resolve_o2c_exception"
    },
    {
      "description": "Find companies Requstory has already mapped and scored from their public websites, by name or website. Use this first to get the \"slug\" for get_company_score. For a company that is not found, use check_ai_readiness (quick, public) or map_website (full map, needs a key).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "industry": {
            "description": "Optional industry id, e.g. \"dental\" or \"payments-fintech\".",
            "type": "string"
          },
          "limit": {
            "description": "Up to 50; default 10.",
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "Part of a company name or website, e.g. \"stripe\".",
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      },
      "name": "search_companies"
    },
    {
      "description": "Start a month of a made-up B2B online store (Harbour & Home) run by four AI agents: process orders, ship orders, invoice and collect payments, handle returns. Real trade order lines; you or your user play the founder, who is asked about credit limits, short stock, packing, reminders, unclear payments and returns. Sums, dates, stock and credit are worked out by code, not the model. No key needed; runs are deleted 2 days after the last change. Then call advance_o2c_run.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "model": {
            "description": "Open model the agents use. Default: the best scorer in the weekly test.",
            "enum": [
              "gemma-4-26b",
              "qwen-3.6-35b",
              "ministral-8b",
              "qwen3-vl-8b"
            ],
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      },
      "name": "start_o2c_demo"
    },
    {
      "description": "Run a day of your own business through the four order-to-cash agents: read new orders, check stock and credit, pick lists, invoices and their emails, match bank lines to open invoices, chase late payers and handle return emails. Nothing is sent; you get drafts and decisions. The agents ask the founder about credit, short stock, packing, reminders, unclear payments and returns, unless the business's approval rules say otherwise. Priced per order from the account's credits: $1.00 an order (100 credits), model cost included, charged once when an order is invoiced, collected or has a return settled. Data is deleted 2 days after the last change. Needs an API key. Then call advance_o2c_run.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "business": {
            "description": "The business, like the run page's folder. Keys: company, symbol (\"£\"), vat (\"20%\"), termsDays, nextInvoiceNo; customers [{id, name, email, creditLimit, openBalance, termsDays}]; products [{sku, name, price, stock}]; orders [{name, text} or {name, imageBase64} for a JPEG/PNG scan]; openInvoices [{no, customer, total, paid, due, date}]; bank [{from, ref, amount}]; returns [{message}]; returnsPolicy (text); instructions {orders, finance, returns} (text for each agent); approvals {ordersOver, overCreditLimitUpTo, refundsUpTo, returnsWithinDays, shortPaymentWriteOffUpTo}: orders above ordersOver always go to the founder; up to overCreditLimitUpTo over a credit limit, and refunds or credit notes up to refundsUpTo that the calculator agrees with, go through without asking; returns for invoices older than returnsWithinDays (or with no invoice date) always go to the founder; a matched payment that leaves shortPaymentWriteOffUpTo or less owed closes the invoice. Leave approvals out (or 0) to be asked about everything. The resource requstory://o2c/guide explains them.",
            "type": "object"
          },
          "mapId": {
            "description": "Map whose credits pay for the model calls. Default: your most recent map.",
            "type": "string"
          },
          "model": {
            "description": "Open model the agents use. Default: the best scorer in the weekly test.",
            "enum": [
              "gemma-4-26b",
              "qwen-3.6-35b",
              "ministral-8b",
              "qwen3-vl-8b"
            ],
            "type": "string"
          }
        },
        "required": [
          "business"
        ],
        "type": "object"
      },
      "name": "start_o2c_run"
    }
  ]
}

What the leaf hashes

{"body":"16203b43cf0c5268ec22b70be99b51bb21322bdc6d9fea91b244ae0f060e4faf","id":1763130,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793534929620146,"prev":1286902,"subject":"49b57c4c-f18f-4d47-83ef-e223eff9d9f3","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (302406 rows).

  1. 0x49cb5df955057cf0f81f75759574ce0733eae823fb890cc36b18927aab535903
  2. 0x4c6bc080d84a0dd43ec874d07e0bef8cea63dd7fbaf31df53b0e44fccdd55fb1
  3. 0x30606c9a4dc9bf61a632e3f77a9e7c711e98cea9126e251bb9410c87841230cc
  4. 0x9af3a3114417615cb3275657011bdb59932d5f813dfeec0ad9cdb0712588424b
  5. 0x98f09b960466a1bc469da86426833adedd6989d531a2a4bd17614ca414c5fead
  6. 0x4e92dd5ef456ec4ebadb7a4e35650c814177785d193ef112224ed66e2e2f5cbb
  7. 0x31b16821e5bff6e419ebba7acde0377c30e7b91a25294c4df0b17c02429abfff
  8. 0xeff17fb304f6b22dc063224d6ae7b8e3e9dc617587648d9fa482c6dc2bc0eef6
  9. 0xcd66a957d6ffe786f2d970de54730a9f849981cc9da45d0820bcdf858b42528c
  10. 0x9b033b6daa34cc6bb2cf9d164d4efe073de5f47a121710d59f1ea1cd4fabb1cd
  11. 0x341be8d3d70d914521238808e7691fa67bdccefa1544797927103f3138ef32a9
  12. 0x62fe46994366d4bc0bae2c4c044d9337de6f221be1dcd18eb5fa5283120cc6e7
  13. 0x8aa214258cf763ac22ad2503df59c82b987a34bdb8f8ffe282ed4454b90f50bb
  14. 0x6c979ceed347ae2f49a398afce74e46416fbc8bf2d649ac7be77ccbc81b2ba03
  15. 0x0e3f78943343406ddd3828dd4ca4b5a188e80ffe3ac87d64d979448ee11c1cc5
  16. 0x00ec7149eb024693951d82cb635dfa183f4f34dae011e77ba0420a38a378e0aa
  17. 0x97f6f39e601b6ef0e47b730aa0488b718c0d7882ad840342bbd7d3a705a1b3a2
  18. 0x1973893697931b7512ae5dc1a3c92ef92f633ae3574dce9029a35b5e94d2d364
  19. 0x3315fd2757fdd435852cc277377234a3f3909a6d2a089d0e36f6d59aacfda910
Day root
0x7fa2cba1cf3d6b35630896f5fe1a650adb307ea2c376e80a5f2d9276b7cb5ab3
Chained
0x577ff89ba012beeff3197bcff7fa86752074bdf54205a24359cc437be2a952a4
Published
On Arc Testnet, block 70262758: 0x435bc1b9331471d72e1998f2e420983b5189d4da65ffbd6f27ef40daf5e1ea90

How to check it · This row as JSON