addrbookFor publishers
← The evidence ledger

Evidence row 1785931

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 283f7ee6-98c0-4b74-acb8-b456bf2c3c08
Recorded
Previous row
#1748007
Body SHA-256
6b90188f4dd24d3173d72a09f6cda65036a03638af2ebc5cd1786993d338c0a9
Leaf
0xd50099240cc02df170637a3b74ad44829ab70a0ded03fffa63eea7413aa8726b

What was observed

{
  "count": 17,
  "tools": [
    {
      "description": "Gets a site's fixes as a work order: what to fix, in what order, how, why and on which pages.\nWhen: at the start of work on a site, and after clickd_changes says a read is done.\nInstead: clickd_site for the score to tell a person; clickd_todo for the next fix across all the person's sites.\nInputs: `site` is a domain, like example.com. `format` is markdown (the default), the whole list, or steps: the four fixes worth the most as steps with pages and points, and words to hand another agent.\nReturns: with markdown, the Markdown text alone; with steps, JSON with steps, prompt, report and caveat.\nFails: a site never read, or a draft, answers not found; clickd_rescan reads it. Works with no key.",
      "inputSchema": {
        "properties": {
          "format": {
            "description": "markdown (the default) or steps.",
            "enum": [
              "markdown",
              "steps"
            ],
            "type": "string"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_brief"
    },
    {
      "description": "Says what a site's latest read changed against the one before: score, rules fixed and newly failing, pages added and removed.\nWhen: after clickd_rescan, every minute or two with its job until the read is done.\nInstead: clickd_rescan to ask for the read; clickd_site for the report as it now stands.\nInputs: `site` is a domain, like example.com. `job` is the id clickd_rescan returned: the reply then says where that read stands, with changes only once it is done.\nReturns: host, run, changes (null for a first read) and visits; with job, job ({ id, state, ahead }), changes null until done.\nFails: a site never read, or a job for another site, answers not found; a failed read says so in job. Needs a key.",
      "inputSchema": {
        "properties": {
          "job": {
            "description": "The job id that clickd_rescan returned.",
            "type": "number"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_changes"
    },
    {
      "description": "Checks one live address now, as the free tools do: product data, a page as an agent reads it, an X card, a certificate, or location pages.\nWhen: before and after a fix to one page, link or host.\nInstead: clickd_rescan and clickd_changes for every page of a site; clickd_pages for a page as last read.\nInputs: `kind` is product, agent, x_card, ssl or locations. `url` is the page's full address; for ssl, only its host is used; for locations, the brand's site.\nReturns: the findings, each with its state in a word and what to do when it is wrong.\nFails: a private address is refused, and robots.txt is obeyed; the free tools' hourly allowance applies. Works with no key.",
      "inputSchema": {
        "properties": {
          "kind": {
            "description": "Which check.",
            "enum": [
              "product",
              "agent",
              "x_card",
              "ssl",
              "locations"
            ],
            "type": "string"
          },
          "url": {
            "description": "The address to check, such as https://example.com/products/linen-shirt.",
            "type": "string"
          }
        },
        "required": [
          "kind",
          "url"
        ],
        "type": "object"
      },
      "name": "clickd_check"
    },
    {
      "description": "Lists what assistants were found to cite for a site, question by question, from lookups already made, and the credits left.\nWhen: to tell a person whether assistants cite their site, at no cost.\nInstead: clickd_site for how well formed the pages are, which is not whether they are cited.\nInputs: `site` is a domain, like example.com.\nReturns: host, rows, credits, price, perDay and note.\nFails: rows is empty until a lookup is made. Needs a key and a claim.",
      "inputSchema": {
        "properties": {
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_citations"
    },
    {
      "description": "Claims a site for the person: the TXT record or file that proves it is theirs, then the check that finds it.\nWhen: to open a site's private parts, such as rivals, citations and proposals.\nInstead: clickd_signup first for a key; clickd_site for a public report, which needs no claim.\nInputs: `site` is a domain, like example.com. `step` is start (the default), for the record and file, or check, to look for either and add the site.\nReturns: with start, site, record, dns, file and note; with check, site, claimed and how.\nFails: check before the proof is up answers claimed false; a new DNS record can take minutes to be seen. Needs a person's key.",
      "inputSchema": {
        "properties": {
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "step": {
            "description": "start (the default) or check.",
            "enum": [
              "start",
              "check"
            ],
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_claim"
    },
    {
      "description": "Lists the public leaderboard: every ranked site by its latest score, the board of one crowd, or a record.\nWhen: to show a person where a site places among every site, or sites like it.\nInstead: clickd_site for one site's own place; clickd_rivals for the sites closest to one site.\nInputs: `in` (a line of work such as trades), `state` (two letters), `city` (needs state) and `size` narrow the board, together or alone. `record` gives one record in place of the places. `limit` and `offset` page it.\nReturns: total, offset, limit, sites, tiers and note; with record, its sites and what it counted.\nFails: a crowd too small answers an empty board; drafts and closed sites are not ranked. Works with no key.",
      "inputSchema": {
        "properties": {
          "city": {
            "description": "A city in that state, such as Dallas.",
            "type": "string"
          },
          "in": {
            "description": "A line of work, such as trades.",
            "type": "string"
          },
          "limit": {
            "description": "How many to return.",
            "type": "number"
          },
          "offset": {
            "description": "How many to skip, for the next part of a long list.",
            "type": "number"
          },
          "record": {
            "description": "One record in place of the places.",
            "enum": [
              "fastest",
              "improved",
              "stages",
              "answer-first",
              "biggest"
            ],
            "type": "string"
          },
          "size": {
            "description": "By the pages a read took.",
            "enum": [
              "1-10",
              "11-50",
              "51-99",
              "100-plus"
            ],
            "type": "string"
          },
          "state": {
            "description": "A US state by two letters, such as MO.",
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      },
      "name": "clickd_leaderboard"
    },
    {
      "description": "Records a step of work on a site: what you planned, changed or checked, or where you got stuck.\nWhen: after each step, including one that carries out a proposal or a queued task.\nInstead: clickd_propose before deploying to a site set to approve; clickd_todo for tasks waiting.\nInputs: `site` is a domain, like example.com. `step` is planned, changed, checked or stuck; `did` says what. `found`, `files` and `rules` (comma separated) add detail. `proposal` names the proposal carried out, `task` the queued task finished. Never send private data.\nReturns: kept, site, step and note, with proposal or task and left when given.\nFails: a proposal or task not the person's keeps nothing and says so. Needs a person's key.",
      "inputSchema": {
        "properties": {
          "did": {
            "description": "What was done, in a sentence or two.",
            "type": "string"
          },
          "files": {
            "description": "The files touched, separated by commas.",
            "type": "string"
          },
          "found": {
            "description": "What was true of the site, such as of its code.",
            "type": "string"
          },
          "proposal": {
            "description": "The proposal id, from clickd_propose, this step carried out.",
            "type": "number"
          },
          "rules": {
            "description": "The clickd rules worked on, by id, separated by commas.",
            "type": "string"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "step": {
            "description": "Which step this was.",
            "enum": [
              "planned",
              "changed",
              "checked",
              "stuck"
            ],
            "type": "string"
          },
          "task": {
            "description": "The queued task id this step finished.",
            "type": "number"
          }
        },
        "required": [
          "site",
          "step",
          "did"
        ],
        "type": "object"
      },
      "name": "clickd_log_work"
    },
    {
      "description": "Lists the pages of a site's latest read with status, depth, words and failing rules, or gives one page in full.\nWhen: to find the pages behind a fix, or everything wrong with one page.\nInstead: clickd_brief for the fixes in order; clickd_check for a page as it is live now.\nInputs: `site` is a domain, like example.com. `path`, such as /pricing, gives that page in full, and the rest is then ignored. `failing` (a rule id), `q`, `kind` and `section` narrow the list, `sort` and `dir` order it, `limit` and `offset` page it.\nReturns: host, run, total and pages; one page as path, status, failing, needsAPerson, linkedFrom, linksTo and quoted.\nFails: a site or page not read answers not found. Needs a key; any key reads a public site.",
      "inputSchema": {
        "properties": {
          "dir": {
            "description": "Which way.",
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string"
          },
          "failing": {
            "description": "A rule id.",
            "type": "string"
          },
          "kind": {
            "description": "A kind of page.",
            "enum": [
              "home",
              "article",
              "service",
              "page"
            ],
            "type": "string"
          },
          "limit": {
            "description": "How many to return.",
            "type": "number"
          },
          "offset": {
            "description": "How many to skip, for the next part of a long list.",
            "type": "number"
          },
          "path": {
            "description": "One page, such as /pricing.",
            "type": "string"
          },
          "q": {
            "description": "Text in the path.",
            "type": "string"
          },
          "section": {
            "description": "A section, such as /guides.",
            "type": "string"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "sort": {
            "description": "What to sort by.",
            "enum": [
              "path",
              "kind",
              "depth",
              "words",
              "ms",
              "inlinks",
              "failing"
            ],
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_pages"
    },
    {
      "description": "Lists the person's proposals and where each stands, or one by id, and whether a site is set to approve or automatic.\nWhen: before work on a claimed site, and every few minutes after clickd_propose until it is answered.\nInstead: clickd_propose to make one; clickd_todo for the work itself.\nInputs: `id` is one proposal from clickd_propose; deploy only once it says approved. `site` gives that site's proposals and its mode. Neither, every proposal; never both.\nReturns: with id, proposal and promise; otherwise proposals and promise, and with site, site and mode.\nFails: id and site together are refused; one not the person's answers not found. Needs a person's key.",
      "inputSchema": {
        "properties": {
          "id": {
            "description": "One proposal, by the id clickd_propose returned.",
            "type": "number"
          },
          "site": {
            "description": "Only proposals for this site, and its mode.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "clickd_proposals"
    },
    {
      "description": "Proposes a change before you deploy it, emailing the person Approve and Decline links that lapse in 72 hours.\nWhen: before each deploy to a site clickd_proposals says is set to approve.\nInstead: clickd_proposals with the id to wait for the answer; clickd_log_work, naming it, once carried out.\nInputs: `site` is a domain, like example.com. `title` is the change in a few words; `summary` what it does and why; `rule` the rule id it answers; `pages` the paths it changes, comma separated; `diff` a unified diff, shown and never applied.\nReturns: proposal ({ id, state, deploy, ... }), note and promise.\nFails: a site not claimed with this key answers not found; 20 proposals a site an hour at most. Needs a person's key.",
      "inputSchema": {
        "properties": {
          "diff": {
            "description": "A unified diff, at most 20,000 characters.",
            "type": "string"
          },
          "pages": {
            "description": "Paths separated by commas, at most 20; none for the whole site.",
            "type": "string"
          },
          "rule": {
            "description": "The rule id it answers, such as answer-first.",
            "type": "string"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "summary": {
            "description": "What it does and why, at most 2000 characters.",
            "type": "string"
          },
          "title": {
            "description": "The change in a few words, at most 120 characters.",
            "type": "string"
          }
        },
        "required": [
          "site",
          "title",
          "summary"
        ],
        "type": "object"
      },
      "name": "clickd_propose"
    },
    {
      "description": "Puts a fresh read of a site in line and returns a job to follow.\nWhen: once a fix is deployed, or for a site clickd has never read.\nInstead: clickd_changes with the job to see what the read changed; clickd_check for one live page with no read.\nInputs: `site` is a domain, like example.com. `reason` says what was changed, in a few words.\nReturns: job, added (false when a read was already in line), allowedAt and ahead.\nFails: a site read in the last ten minutes answers allowedAt, when to ask again; a private address is refused. Needs a key.",
      "inputSchema": {
        "properties": {
          "reason": {
            "description": "What was changed, in a few words.",
            "type": "string"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_rescan"
    },
    {
      "description": "Sets a site against its rivals from kept reads: who they are, how close, and where it is behind.\nWhen: to pick the fixes that matter against the sites a buyer compares it with.\nInstead: clickd_leaderboard for places among every site; clickd_site for its own score.\nInputs: `site` is a domain, like example.com. `view` is competitors (default: rivals doing similar work), near (closest in meaning), market (rule by rule), or rules or content (two sites side by side). `with` is the other site, for rules or content; alone, it means rules. `limit` is for near, 10 if left out.\nReturns: host, then by view: local, nearby and elsewhere; sites; rules; ahead and behind; or pages.\nFails: a site with no meaning yet answers found or embedded false; rules or content with no with says to give it. Needs a key and a claim.",
      "inputSchema": {
        "properties": {
          "limit": {
            "description": "For near only: how many sites. 10 if left out.",
            "type": "number"
          },
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "view": {
            "description": "competitors (the default), near, market, rules or content.",
            "enum": [
              "competitors",
              "near",
              "market",
              "rules",
              "content"
            ],
            "type": "string"
          },
          "with": {
            "description": "The other site, already read.",
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_rivals"
    },
    {
      "description": "Lists the rulebook: every rule clickd checks, with its id, stage, weight and fix.\nWhen: to explain a fix to a person, or to find a rule's id.\nInstead: clickd_brief for the rules one site fails; clickd_pages with failing for the pages failing one.\nInputs: none.\nReturns: rules, each with id, title, stage, weight and fix.\nFails: nothing to refuse. Works with no key.",
      "inputSchema": {
        "properties": {},
        "type": "object"
      },
      "name": "clickd_rules"
    },
    {
      "description": "Makes JSON-LD for one page from the fields given, ready to paste, and fetches nothing.\nWhen: to write the structured data a fix asks for; call it with only type to see the fields.\nInstead: clickd_check with kind product to check a live product page.\nInputs: `type` is one of the types offered; `as` a more exact one, such as Plumber; `fields` the values by field key, as text. Give only what the page shows.\nReturns: jsonld, script (ready to paste), missing, problems, recommended and fields.\nFails: a type not offered says which are. Works with no key.",
      "inputSchema": {
        "properties": {
          "as": {
            "description": "A more exact type, for LocalBusiness (such as Plumber, RoofingContractor, Restaurant) or Article (BlogPosting, NewsArticle).",
            "type": "string"
          },
          "fields": {
            "description": "Values by field key, as text, such as { \"name\": \"Acme Plumbing\" }. A list is one value a line.",
            "type": "object"
          },
          "type": {
            "description": "The schema type to make.",
            "enum": [
              "LocalBusiness",
              "Organization",
              "Product",
              "Article",
              "BreadcrumbList",
              "Service",
              "Event",
              "WebSite"
            ],
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "name": "clickd_schema_create"
    },
    {
      "description": "Gets a free key, shown once, with the command to connect with it: the person's by email, or a throwaway one.\nWhen: when a call needs a key and there is none.\nInstead: clickd_claim, with a person's key, to make a site theirs.\nInputs: `email` is the person's own address; leave it out for a throwaway key, which reads and asks for a few reads an hour.\nReturns: key, connect and next, with email or anonymous.\nFails: an email already signed up, or not an email, says so; three an hour from one address. Needs no key.",
      "inputSchema": {
        "properties": {
          "email": {
            "description": "The person's email address. Leave it out for a throwaway key.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "clickd_signup"
    },
    {
      "description": "Gets a site's report from its latest read: score, grades, place among ranked sites, towns served, and every fix with its failing pages.\nWhen: to tell a person how a site stands.\nInstead: clickd_brief for the fixes as a work order; clickd_rivals for its rivals; clickd_check for one live page.\nInputs: `site` is a domain, like example.com. `view` is report (the default) or agent: the whole-site Agent View from the same read, with each AI crawler as robots.txt treats it.\nReturns: host, score, grade, stages, grades, rank, served, fixes and card, a picture to send the person; with agent, the Agent View's figures.\nFails: a site never read, a draft or one kept unnamed answers not found. Works with no key.",
      "inputSchema": {
        "properties": {
          "site": {
            "description": "The site, as a domain such as example.com.",
            "type": "string"
          },
          "view": {
            "description": "report (the default) or agent.",
            "enum": [
              "report",
              "agent"
            ],
            "type": "string"
          }
        },
        "required": [
          "site"
        ],
        "type": "object"
      },
      "name": "clickd_site"
    },
    {
      "description": "Gets the person's work across all their sites: the next fix and every other by worth, or the tasks they queued for you.\nWhen: when you start work for the person, and when a reply says tasks are waiting.\nInstead: clickd_brief for every fix on one site; clickd_log_work with task to finish a queued task.\nInputs: `show` is board (the default): next, every fix by worth, what slipped and what is fixed; or queue: the person's tasks for you, oldest first.\nReturns: with board, next, todo, slipped, fixed, waiting and note; with queue, tasks and note.\nFails: an account with no claimed site has an empty board. Needs a person's key.",
      "inputSchema": {
        "properties": {
          "show": {
            "description": "board (the default) or queue.",
            "enum": [
              "board",
              "queue"
            ],
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      },
      "name": "clickd_todo"
    }
  ]
}

What the leaf hashes

{"body":"6b90188f4dd24d3173d72a09f6cda65036a03638af2ebc5cd1786993d338c0a9","id":1785931,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793558933577538,"prev":1748007,"subject":"283f7ee6-98c0-4b74-acb8-b456bf2c3c08","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. 0xd4fff937cf23585408032f1eb676925285e1a82a78cf870bc338a54ff82f3281
  2. 0xa015568eb9e2f763d552be339a93cfb1730e11fa236d635d04dbb121f2d95122
  3. 0x7d65be7148dcd90db4c2152dc4c9aa31da9a564508759bc165bf3618d54ce434
  4. 0xca25c1cedd01f1883d29b89cd1669b24e4da36b82a1ab83ad433d71a4d01b804
  5. 0x2dd6455ad4af06fb1ea95cd5f57f1ba173d8df4dd5997a49cdf6475a53878260
  6. 0xd7e636670071b6dce4745608fd289198f38db97a9a84741919492a1613f004f2
  7. 0x6de9e5a40bf17abc26e02c0aa81c53b80cc3518dd291c668923f8ede166ed474
  8. 0xf3fa6dbdb8289fdd7157910081eae2640bb9c9daf3db8b23553f3fe013d3fdb7
  9. 0x8e75018fbf5a11fc817a8fc60c86b661887c98ff9295359b261762756f932169
  10. 0x2bb690bf408aff9050a15c4238772bff0303803108c62b7c1b5f91996ee170e3
  11. 0x81715d487b5fe544aae88a9f5274946af161abe42498dfa7876675f5033f0f5b
  12. 0x65360a9279458a580bcc7af84cb70bc3cc118973d29e37040c5149269369c309
  13. 0x827e8832d4e454afc21199e490166d8c3be13193f254217a3857562757303f01
  14. 0x57b5e8b79f831258fde2efa4c7b70cd486ce34b32e7d612a6965c086ed7a75e8
  15. 0xd3f5c237675f14686b3a3c2715c6735a96952155107d7b2cb9a44c56420170bd
  16. 0xfc183bee85dc11a067fb710c6eb88824b94a516ddbdf2717b839e672a2206a7e
  17. 0xb5916fb7a3e87dc0702e46eeadcd22652e2e1e755f8d429cc7a14a67a350b51b
  18. 0x6142ac48fda269c17791c79da99c2456ac6acfe98268f4d168a404fd6040c703
  19. 0x3315fd2757fdd435852cc277377234a3f3909a6d2a089d0e36f6d59aacfda910
Day root
0x7fa2cba1cf3d6b35630896f5fe1a650adb307ea2c376e80a5f2d9276b7cb5ab3
Chained
0x577ff89ba012beeff3197bcff7fa86752074bdf54205a24359cc437be2a952a4
Published
On Arc Testnet, block 70262758: 0x435bc1b9331471d72e1998f2e420983b5189d4da65ffbd6f27ef40daf5e1ea90

How to check it · This row as JSON