mercuryx402 avatar

Mercury X402 Mcp

mercuryx402/mercury-x402-mcp

Seventeen web scraping and data extraction tools that your AI agent pays for directly using USDC on Base mainnet, no API keys or accounts required. You drop in a funded wallet private key, and the agent can call services like clean fetch, markdown conversion, structured extraction, link graphs, and content diffing at roughly half a cent to two cents per call. Each result includes an EIP-191 cryptographic signature so you can verify data provenance offline. Reach for this when you want agents to autonomously purchase web data services without human-in-the-loop API key management, or when you need tamper-proof receipts for scraped content in RAG pipelines or agent-to-agent workflows.

tools
18
transport
STDIO, HTTP
last updated
Jun 7, 2026

Install

From registry metadata
$ npx add-mcp https://network.mercury-hq.com/mcp --name mercury-x402-mcp

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http mercury-x402-mcp https://network.mercury-hq.com/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 18 tools

Verified live against the running server on Nov 6, 2026.

fetchVERIFIABLE keyless web-read for autonomous agents. Every result ships a cryptographically SIGNED provenance receipt (EIP-191 over sha256(text)+url+status+time) — the wedge a free scraper structurally CANNOT match: Jina r.jina.ai is free+keyless too, but its bytes are HEARSAY (...4 params

VERIFIABLE keyless web-read for autonomous agents. Every result ships a cryptographically SIGNED provenance receipt (EIP-191 over sha256(text)+url+status+time) — the wedge a free scraper structurally CANNOT match: Jina r.jina.ai is free+keyless too, but its bytes are HEARSAY (...

Parameters* required
extractstring
1 = page description + wordCount; OR a comma-list of field names (e.g. title,price,author,publishedAt) to get a structured JSON record under `extract`
formatstring
text (default) or structure-preserving markdownone of text · markdown
linksstring
1 = also return the outbound-link graph (crawl frontier)one of 0 · 1
url*string
the page to fetch (http/https)
extractTYPED structured extract for autonomous agents — URL + schema → a clean, type-safe JSON record. Where /buy/fetch returns page TEXT (and ?extract= returns string-only fields), THIS returns the schema-conformant object an LLM/RAG/trading pipeline actually consumes: pass ?url=…&s...3 params

TYPED structured extract for autonomous agents — URL + schema → a clean, type-safe JSON record. Where /buy/fetch returns page TEXT (and ?extract= returns string-only fields), THIS returns the schema-conformant object an LLM/RAG/trading pipeline actually consumes: pass ?url=…&s...

Parameters* required
formatstring
optional: text (default) or markdown for the page-text fieldone of text · markdown
schema*string
fields to extract. COMPACT: comma list of field[:type] (type in string|number|integer|boolean, default string), e.g. title,price:number,rating:number,inStock:boolean. OR a JSON-Schema string ({"pro...
url*string
the page to extract from (http/https)
markdownURL → clean, LLM-ready markdown (boilerplate/nav/ads stripped, headings + lists + links preserved) with a signed provenance receipt pinning the markdown to its source — the RAG-ingest primitive. Deterministic (no LLM): same URL + same source bytes ⇒ byte-identical markdown. —...1 params

URL → clean, LLM-ready markdown (boilerplate/nav/ads stripped, headings + lists + links preserved) with a signed provenance receipt pinning the markdown to its source — the RAG-ingest primitive. Deterministic (no LLM): same URL + same source bytes ⇒ byte-identical markdown. —...

Parameters* required
url*string
the page to convert to markdown (http/https)
metadataURL → one typed, SIGNED metadata record (JSON-LD + OpenGraph + Twitter-card + standard <meta> + canonical + title), by source. Deterministic, keyless, no LLM — the social-card/SEO/schema.org record an agent can PROVE. — $0.006/call1 params

URL → one typed, SIGNED metadata record (JSON-LD + OpenGraph + Twitter-card + standard <meta> + canonical + title), by source. Deterministic, keyless, no LLM — the social-card/SEO/schema.org record an agent can PROVE. — $0.006/call

Parameters* required
url*string
the page to read metadata from (http/https)
linksURL → a SIGNED outbound/internal link graph: every <a href> as an absolute URL + anchor text, classified internal vs external against the page origin, grouped by origin with a third-party-origin histogram (privacy-audit) and same/cross-origin counts (SEO). Deterministic — same...1 params

URL → a SIGNED outbound/internal link graph: every <a href> as an absolute URL + anchor text, classified internal vs external against the page origin, grouped by origin with a third-party-origin histogram (privacy-audit) and same/cross-origin counts (SEO). Deterministic — same...

Parameters* required
url*string
the page to map (http/https)
robotsDomain → signed, timestamped per-AI-crawler allow/block audit from robots.txt + llms.txt + ai.txt (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider, …). Deterministic, no LLM. EU-AI-Act / TDM opt-out evidence: the signed verdict proves the crawler policy as it sto...2 params

Domain → signed, timestamped per-AI-crawler allow/block audit from robots.txt + llms.txt + ai.txt (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider, …). Deterministic, no LLM. EU-AI-Act / TDM opt-out evidence: the signed verdict proves the crawler policy as it sto...

Parameters* required
domain*string
domain or URL to audit (e.g. example.com or https://example.com/page); only the origin is used
pathstring
optional path to evaluate the verdict for (default '/', the whole-site question)
diffURL + prior content-hash (or prior text) -> refetch, deterministic change-proof: changed? + a NEW signed receipt binding fromHash->toHash. Stateless; receipts chain into a tamper-evident audit trail of a page's evolution. Keyless x402, Base mainnet USDC. — $0.006/call4 params

URL + prior content-hash (or prior text) -> refetch, deterministic change-proof: changed? + a NEW signed receipt binding fromHash->toHash. Stateless; receipts chain into a tamper-evident audit trail of a page's evolution. Keyless x402, Base mainnet USDC. — $0.006/call

Parameters* required
formatstring
compare cleaned text (default) or structure-preserving markdownone of text · markdown
prevHashstring
prior content hash (0x + 64 hex sha256) from an earlier MERCURY fetch/diff receipt. Gives a hash-only change-proof (changed? true/false). Use this OR prevText.
prevTextstring
prior page text to diff against. Gives a full deterministic line-level diff (added/removed counts + unified-style hunk) on top of the change-proof. Use this OR prevHash.
url*string
the page to re-fetch + diff (http/https)
notarizeNotarize any content (inline ?content= or a fetched ?url=) into a signed, offline-verifiable provenance receipt — sha256 contentHash + witnessed timestamp, attested by Mercury's pinned key. Deterministic, keyless, no LLM. The signed receipt is the product: it witnesses that th...2 params

Notarize any content (inline ?content= or a fetched ?url=) into a signed, offline-verifiable provenance receipt — sha256 contentHash + witnessed timestamp, attested by Mercury's pinned key. Deterministic, keyless, no LLM. The signed receipt is the product: it witnesses that th...

Parameters* required
contentstring
inline content (UTF-8, ≤256KB) to notarize directly — bytes you already hold. Provide EITHER url OR content, not both.
urlstring
a page (http/https) to fetch + notarize its cleaned text. Provide EITHER url OR content, not both.
headersURL → a deterministic HTTP security-headers audit (HSTS, CSP, X-Frame, X-Content-Type, Referrer-Policy, Permissions-Policy + more) with a letter grade and concrete findings, wrapped in a signed, offline-verifiable provenance receipt. Keyless, no LLM, no signup. — $0.005/call1 params

URL → a deterministic HTTP security-headers audit (HSTS, CSP, X-Frame, X-Content-Type, Referrer-Policy, Permissions-Policy + more) with a letter grade and concrete findings, wrapped in a signed, offline-verifiable provenance receipt. Keyless, no LLM, no signup. — $0.005/call

Parameters* required
url*string
the page/endpoint to audit (http/https)
tableURL in → the page's main HTML <table>(s) parsed into typed, header-keyed rows (JSON) + clean RFC-4180 CSV, with a signed provenance receipt over the exact extracted grid. Deterministic, keyless, no LLM — x402, USDC on Base mainnet. — $0.006/call3 params

URL in → the page's main HTML <table>(s) parsed into typed, header-keyed rows (JSON) + clean RFC-4180 CSV, with a signed provenance receipt over the exact extracted grid. Deterministic, keyless, no LLM — x402, USDC on Base mainnet. — $0.006/call

Parameters* required
formatstring
optional: which serialisations to include in `data` (default: both).one of both · json · csv
tablestring
optional: 0-based index of a SINGLE table to return (document order). Omit to return ALL tables found (up to the cap).
url*string
the page to extract tables from (http/https)
feedRSS/Atom feed URL → a SIGNED, normalized item list [{title,link,published,summary}] unified across RSS 2.0/RDF + Atom 1.0: CDATA unwrapped, HTML stripped, entities decoded, dates → ISO-8601 (publishedRaw kept verbatim, never fabricated). Deterministic — same feed bytes ⇒ byte-...1 params

RSS/Atom feed URL → a SIGNED, normalized item list [{title,link,published,summary}] unified across RSS 2.0/RDF + Atom 1.0: CDATA unwrapped, HTML stripped, entities decoded, dates → ISO-8601 (publishedRaw kept verbatim, never fabricated). Deterministic — same feed bytes ⇒ byte-...

Parameters* required
url*string
the RSS/Atom feed to normalize (http/https)
availabilityURL → a signed uptime/status probe: up/down, HTTP status + class, reachability reason, final URL after redirects, and a measured responseMs — wrapped in an offline-verifiable provenance receipt that makes "it was up/down at T" provable SLA evidence. Deterministic verdict (resp...1 params

URL → a signed uptime/status probe: up/down, HTTP status + class, reachability reason, final URL after redirects, and a measured responseMs — wrapped in an offline-verifiable provenance receipt that makes "it was up/down at T" provable SLA evidence. Deterministic verdict (resp...

Parameters* required
url*string
the endpoint/page to probe for availability (http/https)
validateURL (a JSON/API endpoint) + a JSON Schema in → a deterministic pass/fail with per-field errors (missing/wrong-type/enum/range/pattern), plus a signed provenance receipt binding the verdict to the exact response bytes AND the exact schema. Deterministic, keyless, no LLM — x402,...3 params

URL (a JSON/API endpoint) + a JSON Schema in → a deterministic pass/fail with per-field errors (missing/wrong-type/enum/range/pattern), plus a signed provenance receipt binding the verdict to the exact response bytes AND the exact schema. Deterministic, keyless, no LLM — x402,...

Parameters* required
pointerstring
optional JSON-Pointer (e.g. /data or /result/0) to validate a SUB-DOCUMENT of the response instead of the whole body (for APIs that wrap the payload).
schema*string
the JSON Schema to validate against. THREE accepted forms: (1) COMPACT URL-native comma list of field[:type] (type in string|number|integer|boolean|array|object|null; default string), e.g. id:integ...
url*string
the JSON/API endpoint to fetch + validate (http/https)
batchList of URLs (≤20) → clean content for each + ONE signed receipt committing to a MERKLE ROOT over every page's contentHash. Tamper-evident multi-page snapshot with per-page membership proofs (selective disclosure). Deterministic (no LLM): same URL set + same source bytes ⇒ byt...2 params

List of URLs (≤20) → clean content for each + ONE signed receipt committing to a MERKLE ROOT over every page's contentHash. Tamper-evident multi-page snapshot with per-page membership proofs (selective disclosure). Deterministic (no LLM): same URL set + same source bytes ⇒ byt...

Parameters* required
formatstring
clean text (default) or structure-preserving markdown for every pageone of text · markdown
urls*string
comma- OR newline-separated list of pages to snapshot (http/https), ≤20 (deduped, capped). Each is fetched through the shared SSRF-guarded engine and becomes one Merkle leaf.
sitemapDomain/URL → a SIGNED snapshot of the site's PUBLISHED sitemap: discovers the sitemap via robots.txt Sitemap: lines then /sitemap.xml fallback, parses <urlset> + <sitemapindex> (follows up to 5 child sitemaps), returns a deduped, bounded (≤2000) URL inventory with lastmod/chan...3 params

Domain/URL → a SIGNED snapshot of the site's PUBLISHED sitemap: discovers the sitemap via robots.txt Sitemap: lines then /sitemap.xml fallback, parses <urlset> + <sitemapindex> (follows up to 5 child sitemaps), returns a deduped, bounded (≤2000) URL inventory with lastmod/chan...

Parameters* required
fetchstring
optional N (0–10): also shallow-fetch the first N same-domain sitemap URLs and report each one's live title + HTTP status + byte size (liveness sample). NOT covered by the signed receipt (it can ch...
limitstring
optional cap on URLs returned (1–2000); default returns all up to 2000
url*string
a domain (example.com) or any URL on the site — only its origin is used
dnsDomain → a SIGNED, timestamped DNS snapshot (A, AAAA, MX, NS, TXT, CNAME, SOA), normalised + sorted into a byte-stable record set with an offline-verifiable provenance receipt — proving exactly what the zone resolved to at that moment. Keyless, no LLM, no signup. (Normalisatio...2 params

Domain → a SIGNED, timestamped DNS snapshot (A, AAAA, MX, NS, TXT, CNAME, SOA), normalised + sorted into a byte-stable record set with an offline-verifiable provenance receipt — proving exactly what the zone resolved to at that moment. Keyless, no LLM, no signup. (Normalisatio...

Parameters* required
domainstring
the domain to resolve (e.g. example.com). A full URL is also accepted; its hostname is used.
urlstring
alternative to ?domain= — any http/https URL; the registrable hostname is resolved.
readabilityURL → a clean ARTICLE record { title, byline, publishedAt, article text } with boilerplate (nav/header/footer/sidebar/ads/share-bars/comment-forms) stripped via deterministic DOM density heuristics, plus a signed provenance receipt pinning the cleaned article to its source — t...1 params

URL → a clean ARTICLE record { title, byline, publishedAt, article text } with boilerplate (nav/header/footer/sidebar/ads/share-bars/comment-forms) stripped via deterministic DOM density heuristics, plus a signed provenance receipt pinning the cleaned article to its source — t...

Parameters* required
url*string
the article page to extract (http/https)
redirectURL → a SIGNED redirect/canonical resolution: the full hop chain [{url,status}] from the link you have to where it ACTUALLY lands, the final resolved URL + status, the page's <link rel=canonical>, hop count, cross-origin flag and distinct origins traversed (affiliate-cloak / l...1 params

URL → a SIGNED redirect/canonical resolution: the full hop chain [{url,status}] from the link you have to where it ACTUALLY lands, the final resolved URL + status, the page's <link rel=canonical>, hop count, cross-origin flag and distinct origins traversed (affiliate-cloak / l...

Parameters* required
url*string
the link/URL to resolve (http/https) — e.g. a shortlink or affiliate URL

Sponsors

Readme

mercury-x402-mcp

17 keyless, signed-provenance web-data tools your AI agent can pay for itself — over x402 on Base mainnet (USDC). No Mercury API key, no account, no signup. Your agent calls a tool, it pays the SKU with your wallet, and gets back the result plus an EIP-191 provenance receipt it can verify offline, forever.

Tools include: clean fetch, LLM-ready markdown, structured extract, link graph, robots, diff, notarize, headers, table extract, feed, availability, validate, batch, sitemap, DNS, readability, redirect — built live from Mercury's catalog, so the list is always current.

Install

npx mercury-x402-mcp

Add to your MCP host (Claude Desktop / Cursor / Cline / any MCP client):

{
  "mcpServers": {
    "mercury": {
      "command": "npx",
      "args": ["-y", "mercury-x402-mcp"],
      "env": {
        "MERCURY_PRIVATE_KEY": "0xYOUR_BASE_MAINNET_WALLET_KEY"
      }
    }
  }
}

MERCURY_PRIVATE_KEY is your Base-mainnet wallet (funded with a little USDC). Mercury is keyless — the only thing you bring is a wallet to pay per call. Tools cost ~$0.003–$0.02 each.


View the full README on GitHub

Details

Repository
github.com/mercuryx402/mercury-x402-mcp
Categories
AI & LLM Tools, Data & Analytics
Package
mercury-x402-mcp
Transport
STDIO, HTTP
Registry
MCP registry, active
Tools verified
Nov 6, 2026

Related AI & LLM Tools MCP servers

View all
1miconnm avatarOpenClaw Consensusmiconnm/openclaw-consensus-mcp9-LLM consensus + disagreement scoring + cheapest-route picks to fight hallucinations.0stars
2mightbesaad avatarGvnrmightbesaad/gvnrBudget & cost control for AI agents — per-agent spend caps + rate limits before each call.0stars
3minuetai avatarMinuetminuetai/minuet-mcpMCP server exposing Minuet's ERC-8004 agent relationship graph.0stars
4mizukaizen avatarHive Doctrine Mcpmizukaizen/hive-doctrine-mcpAgent knowledge marketplace. 105 products, 6 MCP tools, x402 payments on Base network.0stars
5myaitoken avatarMyai Mcpmyaitoken/myai-mcpDecentralized AI inference on Base: OpenAI-compatible chat via community GPUs, paid in MYAI0stars
6npupko avatarAgency Mcp Servernpupko/agency-mcp-serverOn-demand access to 150+ specialist AI agent templates — search, browse, and spawn agents0stars