mcpField
N
NanoParse

NanoParse

Remote
nanoparse.appBrowser Automation0Updated 1d ago

About NanoParse

NanoParse is a hosted MCP server that turns web pages into Markdown with metadata and Litmus trust signals. It is for agents that need readable page content and machine-readable indicators about source authority, freshness, and other trust factors.

Key features

  1. 01Fetches pages as clean Markdown
  2. 02Renders JavaScript and SPA pages
  3. 03Preserves GFM tables, callouts, math, and footnotes
  4. 04Returns page metadata
  5. 05Adds 20 Litmus trust signals
  6. 06Checks quota and payment status

Use cases

  1. 01Reading web pages from an MCP-compatible client
  2. 02Extracting article content from pages with ads or navigation
  3. 03Assessing source authority and freshness before citing
  4. 04Checking free quota and payment status before a parse

MCP support

NanoParse is hosted at `https://nanoparse.app/mcp` and exposes `nanoparse_fetch(url)` and `nanoparse_status()` to MCP clients. Parsing uses a free quota and then costs $0.005 per page through x402.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://nanoparse.app/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

2
ParameterTypeRequiredDescription
urlstringYesThe URL to fetch and parse
wallet_addressstringNoYour wallet address (0x...) to claim the free tier — no payment needed.
wallet_signaturestringNoEIP-191 personal_sign signature (0x... hex, 65 bytes r||s||v) over the exact string "nanoparse.app free tier: sign this message to claim 10 free parses (no payment).". Proves you own wallet_address and unlocks 10 free parses per month.
payment_signaturestringNox402 payment signature — base64-encoded JSON payment terms. Only needed after the free tier is exhausted: the payment_required error response includes the payment_terms to sign. Pass the signed terms here (or as a Payment-Signature header if your client supports headers).

Details

From the project README

NanoParse MCP

npm version License: MIT Website MCP Score MCPLookup Trust Index Listed on HookMCP

The easiest way for AI agents to read the web. NanoParse MCP is a hosted Model Context Protocol server at https://nanoparse.app/mcp that turns any URL into clean Markdown your agent can actually use — with machine-readable trust signals attached.

No install. No wallet key. No .env. Connect once and your agent can read the web.

Why agents choose NanoParse over Firecrawl or Jina Reader: every page comes back with Litmus — 20 machine-readable signals that tell your agent whether to trust and cite the page before it reads a word. Pay $0.005 per parse via x402 once the free tier runs out. Full JavaScript/SPA rendering, native GFM tables. No account, no subscription, no API key.

Quick start

Add this to your MCP client config:

{
  "mcpServers": {
    "nanoparse": {
      "type": "http",
      "url": "https://nanoparse.app/mcp"
    }
  }
}

Restart your client, and your agent auto-discovers two tools:

  • nanoparse_fetch(url) — fetch any web page and get clean Markdown back
  • nanoparse_status() — check free quota, wallet and USDC balance before spending

That's it. Your agent can now fetch pages from inside any MCP-compatible client (Claude, Cursor, Hermes, Windsurf, and others).

What you get

nanoparse_fetch renders the page in a real headless browser (JavaScript and all), isolates the actual article from nav, ads, and cookie banners, and returns:

  • Clean Markdown — GFM tables, callouts, math, and footnotes preserved
  • Metadata — title, author, dates, language, word count, OpenGraph, schema.org JSON-LD
  • Litmus — machine-readable signals your agent can reason over: source authority, freshness, structural trust, content density, syndication and paywall detection

nanoparse_status tells your agent exactly where it stands: free parses remaining, wallet and USDC balance, and whether the next call will succeed without payment. Agents call it before spending.

Real output

Every parse returns markdown + metadata + litmus. Here is the full litmus object from a real parse of an arXiv paper (examples/example-output.json — markdown truncated there, litmus complete and unmodified):

{
  "litmus": {
    "source": { "type": "academic", "authority": 0.85, "rationale": "academic source" },
    "freshness": { "published": null, "age": "unknown", "stale_warning": "No publish date found — verify independently", "modified": null, "has_correction": false, "correction_note": null },
    "tldr": "Abstract page for arXiv paper 2401.14295: Demystifying Chains, Trees, and Graphs of Thoughts",
    "key_figures": [ { "value": "2,247", "context": "Thu, 25 Jan 2024 16:34:00 UTC (2,247 KB)" } ],
    "structural_trust_score": { "level": "medium", "trust_factors": ["High-authority source", "No publish date found — verify independently"] },
    "hedge_language": { "density": "low", "markers_found": 0, "per_500_words": 0 },
    "content_density": { "thin_content": false, "substantive_sentence_ratio": 0.76 },
    "syndication": { "detected": false, "note": null },
    "paywall": { "detected": false, "note": null },
    "content_type": "academic_paper",
    "reading_time": { "minutes": 4 },
    "is_archived": { "archive_org": true, "archive_is": false },
    "outbound_authority": { "score": 0.54, "top_domains": ["ui.adsabs.harvard.edu", "scholar.google.com"] },
    "boilerplate_ratio": { "ratio": 0.08, "confidence": "high" }
  }
}

The agent learns before reading a word: this is an academic source (0.85 authority), structural trust is medium — high authority, but no publish date found, so verify independently. It also gets the one-sentence summary, the key numbers, and confirmation there's no paywall or syndication flag. See examples/agent-conversation.md for a full worked round-trip.

Payments

  • 10 free parses per month with a signed wallet (sign the claim message — no payment), or 3 anonymous free tries per network. No account, no API key, no human required.
  • After that: $0.005 per parse (flat, no subscriptions) via x402 — an open micropayment protocol. Your agent's wallet signs the payment automatically. To give your agent a Coinbase wallet, run npx @coinbase/payments-mcp and connect it alongside NanoParse.

Copy-paste recipe for both paths — the wallet-MCP one with no code, and a ~40-line REST client — including the exact 402 → sign → retry loop and the error codes worth branching on: examples/pay-with-x402.md.

How payments work under the hood

When an agent without free quota calls nanoparse_fetch, the endpoint responds with an HTTP 402 — Payment Required carrying x402 payment instructions. The agent's wallet signs a $0.005 USDC (Base) transfer, the facilitator settles it, and the parse proceeds. The hosted endpoint handles the entire challenge → settlement flow — the agent never needs a private key on your machine.

Pricing vs Firecrawl

NanoParseFirecrawl Hobby
Billing$0.005 per parse, flat$16/mo subscription, credits expire monthly
5,000 parses$25.00$16 base — but ~$145 with JSON/extraction modes (9× credit burn)
Account / API keyNoneRequired
Agent can pay directly (x402)YesNo

Full math, including when Firecrawl's base rate wins at scale: examples/costs.md.

Example

You: Fetch https://arxiv.org/abs/2401.14295 and summarize the argument.

Agent: [calls nanoparse_fetch(url)]
       → clean Markdown + Litmus (academic, authority 0.85, 4-min read,
         no date found — verify, no paywall)
       → summarizes from primary content, cites authority and freshness

Repository note

The nanoparse-mcp npm package and the local stdio client were the first-generation integration, which held a wallet private key (NANOPARSE_WALLET_KEY) and signed x402 payments on your machine. Both are retired: the hosted endpoint above now handles the full payment flow itself, so no local client or wallet key is needed. The retired client code is preserved in archive/v1-local-client/ for history, and the npm package is deprecated. Use the hosted endpoint — it is the current, supported integration.

Docs

MIT licensed.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.