web3_lookup
Look up a typed record
Typed records by id: address, ABI, EIP. Does not search prose or rank.
idrequiredkindrequiredchainprojectversion
io.github.FarseenShPublished by GitHub account FarseenShv1.0.0Updated Nov 2, 2026
Version-true web3 docs, ABIs and human-validated integration recipes over MCP.
Remote, keyless MCP server that gives an assistant version-pinned web3 documentation, ABIs, deployment addresses, EIPs and human-validated integration recipes.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.FarseenSh%2Fweb3ctx/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"web3ctx": {
"type": "http",
"url": "https://mcp.scarai.xyz/mcp"
}
}
}Human-validated, chain-run web3 integration recipes, served version-true over MCP.
[integration projects 632] [specification ids 1,193] [units 1.35M] [recipes 26 · human-run] [endpoint live] [access free · no key]
“how do I bridge USDC with CCTP” — one call to the authless endpoint, 2026-08-28:
The whole response is 26,191 bytes (sha256 bc58a9feba1f6309…) and it publishes byte-for-byte: evidence/showcase/cctp-search.json. Diff it against your own call.
It does not get fooled by a wrong premise. Ten questions built on premises verified false
before the run — an archived repo, a renamed package, a version that does not exist. web3ctx was
deceived 0 of 10; every other arm was deceived at least once (1–3 of 10).
🔴 Our own intent=integrate row was deceived once, and it publishes here beside the other:
a stray line in one recipe cited an archived repository.
The ten traps and every arm’s answer →
Citations you can re-fetch. Every unit carries project@version and a URL pinned to a
40-character commit: 142 of 144 across the audited payloads, against ~0 for every tool
compared. The audit protocol →
When it does not know, it says so. Asked about eight projects it does not index, it declines all eight and names what would resolve each one. Competitors answer most of them. ⚠ Zero confabulated rows anywhere, including ours — that column separates nobody, and it is reported rather than claimed as an advantage. Abstention honesty →
The recipes are the moat. Each one was run by a human against live chains and ships with the transaction receipts, so anyone can check the claim by RPC rather than trusting the stamp.
Every unit carries as_of — the committer date of the commit we pinned — and a citation
that resolves to an immutable, re-fetchable reference. Rebuilds are dated events, stamped
into corpus_version and visible on the coverage page along with when the index was last
loaded. 🔴 No refresh cadence is claimed anywhere, because we could not keep one. A 2020
date on an archived repository is not staleness — it is the newest thing upstream ever
published. Per-project dates and coverage →
Cursor, Windsurf, Zed and any MCP client: add the same URL — https://mcp.scarai.xyz/mcp — as
a remote HTTP server. No key, no signup — the free tier is the read path and always will be.
Claude Code Skill — the same door with the escalation ladder and the two reading rules
built in (~100 tokens idle): npx skills add FarseenSh/web3ctx, or copy
skills/web3context/ into .claude/skills/.
CLI — the same five primitives outside an MCP client, same wire, same payload contract:
npx web3ctx lookup eip 4337, or npm i -g web3ctx (npm).
It prints what the server returned and reshapes nothing.
[The web3ctx serving path — interactive architecture map]
Open the interactive map → — hover any component, trace routes, play the three guided views.
Resolve entities → bind or ABSTAIN the version from evidence → filter by SQL predicate, rank with BM25 within → budget-true payload, citations before bodies. Deterministic end to end — no model on the serving path.
This repository carries every measurement behind the claims above — including the experiments that failed, the gates we did not clear, and the corrections to things we published wrong. Competitor payload bytes are withheld by rule; their protocol, hashes and counts are all here, so any count can be re-run against the live tools.
Read the evidence → · overview · evals · coverage — is your stack in there? · who runs it, and what it logs · architecture
Licensed MIT (code and site) and CC BY 4.0 (the evidence documents) — why there are two. Every unit the server returns is an excerpt of a third-party open-source repository, served under its own licence with a commit pin.
632 integration projects + 1,193 specification ids (609 ERC + 583 core EIP + 1 in both repos) = 1,825 total · 1,346,624 units · 26 human-stamped recipes. Every number on this page is read from the live database at publish time; none is typed.
Source: README.md at commit b3c573c
Look up a typed record
Typed records by id: address, ABI, EIP. Does not search prose or rank.
idrequiredkindrequiredchainprojectversionExact identifier match
Exact lexical match on a known identifier. Does not rank semantically.
limitpatternrequiredprojectversionSearch code and docs
Ranked selectors for a prose query or unknown identifier. Does not return bodies.
limitqueryrequiredintentprojectversionDependency closure
Dependency closure around a selector. Does not follow calls across projects.
depthkindsselectorrequiredFetch complete units
Full bodies for selectors you already chose, or the next page of a cursor. Does not discover selectors.
cursorselectors100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
{ "intent": "lookup", "recipe": { "project_id": "cctp", "version": "2", "recipe_type": "usdc-bridge-send", "last_validated": "2026-08-07", "validated_by": "farseen (github: FarseenSh)", "receipts": { "validated_on": "2026-08-07", "validated_by": "farseen (github: FarseenSh)", "checks": [ "attest", "test" ], "chains_exercised": [ "base-sepolia", "arbitrum-sepolia" ], "on_chain": [ { "kind": "txHash", "hash": "0xd4b4e6395f52ad726dd6062e7a7ec47a2d3a7875d36f20fbb154cde756a3d0f5", "role": "approve", // … 207 more lines — the receipts, the // validated recipe body, and ten citations each pinned to a commit or an exact package version.claude mcp add --transport http web3ctx https://mcp.scarai.xyz/mcp{ "mcpServers": { "web3ctx": { "type": "http", "url": "https://mcp.scarai.xyz/mcp" } } }