{
  "markdown": "<div align=\"center\">\n\n# web3ctx\n\n### The last mile before your agent signs.\n\nHuman-validated, chain-run web3 integration recipes, served version-true over MCP.\n\n![integration projects 631](https://img.shields.io/badge/integration%20projects-631-3ddc97?style=flat-square) ![specification ids 1,193](https://img.shields.io/badge/specification%20ids-1%2C193-3ddc97?style=flat-square) ![units 1.35M](https://img.shields.io/badge/units-1.35M-3ddc97?style=flat-square) ![recipes 26 · human-run](https://img.shields.io/badge/recipes-26%20%C2%B7%20human--run-3ddc97?style=flat-square) ![endpoint live](https://img.shields.io/badge/endpoint-live-3ddc97?style=flat-square) ![access free · no key](https://img.shields.io/badge/access-free%20%C2%B7%20no%20key-2b2b33?style=flat-square)\n\n</div>\n\n## Five tools\n\n| tool | what it does |\n|---|---|\n| `web3_search` | ranked, version-scoped units — plus the human-validated recipe when the question earns one |\n| `web3_grep` | exact identifier lookup across the corpus |\n| `web3_fetch` | full bodies by stable selector, cursor paging for long content |\n| `web3_deps` | dependency closure, stepped by depth |\n| `web3_lookup` | typed records — deployment addresses, ABIs, EIPs — or an honest `NOT_FOUND` |\n\n## A real answer\n\n**“how do I bridge USDC with CCTP”** — one call to the authless endpoint, 2026-08-28:\n\n```json\n{\n  \"intent\": \"lookup\",\n  \"recipe\": {\n    \"project_id\": \"cctp\",\n    \"version\": \"2\",\n    \"recipe_type\": \"usdc-bridge-send\",\n    \"last_validated\": \"2026-08-07\",\n    \"validated_by\": \"farseen (github: FarseenSh)\",\n    \"receipts\": {\n      \"validated_on\": \"2026-08-07\",\n      \"validated_by\": \"farseen (github: FarseenSh)\",\n      \"checks\": [\n        \"attest\",\n        \"test\"\n      ],\n      \"chains_exercised\": [\n        \"base-sepolia\",\n        \"arbitrum-sepolia\"\n      ],\n      \"on_chain\": [\n        {\n          \"kind\": \"txHash\",\n          \"hash\": \"0xd4b4e6395f52ad726dd6062e7a7ec47a2d3a7875d36f20fbb154cde756a3d0f5\",\n          \"role\": \"approve\",\n  // … 207 more lines — the receipts, the\n  // validated recipe body, and ten citations each pinned to a commit or an exact package version.\n```\n\nThe whole response is 26,191 bytes (sha256 `bc58a9feba1f6309…`) and it publishes byte-for-byte: [`evidence/showcase/cctp-search.json`](evidence/showcase/cctp-search.json). Diff it against your own call.\n\n## Why this exists\n\n**It does not get fooled by a wrong premise.** Ten questions built on premises verified false\nbefore the run — an archived repo, a renamed package, a version that does not exist. web3ctx was\ndeceived **0 of 10**; every other arm was deceived at least once (1–3 of 10).\n🔴 Our own `intent=integrate` row was deceived **once**, and it publishes here beside the other:\na stray line in one recipe cited an archived repository.\n[The ten traps and every arm’s answer →](evals.html)\n\n**Citations you can re-fetch.** Every unit carries `project@version` and a URL pinned to a\n40-character commit: **142 of 144** across the audited payloads, against **~0** for every tool\ncompared. [The audit protocol →](evals.html)\n\n**When it does not know, it says so.** Asked about eight projects it does not index, it declines\nall eight and names what would resolve each one. Competitors answer most of them.\n⚠ Zero confabulated rows anywhere, **including ours** — that column separates nobody, and it is\nreported rather than claimed as an advantage. [Abstention honesty →](evals.html)\n\n**The recipes are the moat.** Each one was run by a human against live chains and ships with the\ntransaction receipts, so anyone can check the claim by RPC rather than trusting the stamp.\n\n## Freshness, stated honestly\n\nEvery unit carries **`as_of`** — the committer date of the **commit we pinned** — and a citation\nthat resolves to an immutable, re-fetchable reference. Rebuilds are **dated events**, stamped\ninto `corpus_version` and visible on the coverage page along with when the index was last\nloaded. 🔴 **No refresh cadence is claimed anywhere**, because we could not keep one. A 2020\ndate on an archived repository is not staleness — it is the newest thing upstream ever\npublished. [Per-project dates and coverage →](coverage.html)\n\n## Quickstart\n\n```bash\nclaude mcp add --transport http web3ctx https://mcp.scarai.xyz/mcp\n```\n\n```json\n{ \"mcpServers\": { \"web3ctx\": { \"type\": \"http\", \"url\": \"https://mcp.scarai.xyz/mcp\" } } }\n```\n\nCursor, Windsurf, Zed and any MCP client: add the same URL — `https://mcp.scarai.xyz/mcp` — as\na remote HTTP server. No key, no signup — the free tier is the read path and always will be.\n\n## How a question is answered\n\n[![The web3ctx serving path — interactive architecture map](serving-path.png)](https://web3ctx.scarai.xyz/serving-path.html)\n\n**[Open the interactive map →](https://web3ctx.scarai.xyz/serving-path.html)** — hover any\ncomponent, trace routes, play the three guided views.\n\n*Resolve entities → bind or **ABSTAIN** the version from evidence → filter by SQL predicate,\nrank with BM25 within → budget-true payload, citations before bodies. Deterministic end to\nend — no model on the serving path.*\n\n## The evidence\n\nThis repository carries every measurement behind the claims above — including the experiments\nthat failed, the gates we did not clear, and the corrections to things we published wrong.\nCompetitor payload **bytes** are withheld by rule; their protocol, hashes and counts are all\nhere, so any count can be re-run against the live tools.\n\n**[Read the evidence →](evidence/README.md)** · [overview](index.html) · [evals](evals.html) · [coverage — is your stack in there?](coverage.html) · [who runs it, and what it logs](operator.html) · [architecture](architecture.html)\n\nLicensed **MIT** (code and site) and **CC BY 4.0** (the evidence documents) — [why there are two](LICENSES.md). Every unit the server returns is an excerpt of a third-party open-source repository, served under **its own** licence with a commit pin.\n\n---\n\n<sub>631 integration projects + 1,193 specification ids (609 ERC + 583 core EIP + 1 in both repos) = 1,824 total · 1,346,483 units · 26 human-stamped recipes.\nEvery number on this page is read from the live database at publish time; none is typed.</sub>\n",
  "bytes": 6175,
  "sha": "6c9613016f505b63576b9232f3f31c20800cbdae6ecc39cd239093fb949aa85a",
  "repo_slug": "farseensh/web3ctx",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_farseensh_web3ctx_444ee7bc/readme"
}