We count page visits with Google Analytics to see which pages are read. Nothing is stored until you accept, and we never store search queries. Privacy.
Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "nanoparse_fetch" and "nanoparse_status"
nanoparse_fetchchanged
annotations
before
—
after
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":true,"title":"Read one URL into clean Markdown + Litmus"}
nanoparse_statuschanged
annotations
before
—
after
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":true,"title":"Check wallet, quota and payment state"}
TLS
Certificate changed, valid to 2027-01-05
Tool surface changed
Changed the definition of "nanoparse_fetch"
nanoparse_fetchchanged
description
⟨19 unchanged words⟩ actually read, USDC on Base via x402. FirstFreetier: 10 free parses per networkmonthwith a signed wallet (subnetpass wallet_address + wallet_signature)., or 3 anonymous free tries per network. A page we cannot read — bot wall ⟨105 unchanged words⟩
24 words differ · removed · added
inputSchema
⟨51 unchanged words⟩ fetch and parse","type":"string"}
Tool surface changed
Changed the definition of "nanoparse_fetch"
nanoparse_fetchchanged
description
⟨57 unchanged words⟩ read a whole site or a list: there is no batch endpoint — call this tool once per URL. Build your ⟨75 unchanged words⟩
6 words differ · removed · added
Endpoint
npm:nanoparse-mcp (package_npm) — from npm
Tool surface changed
Changed the definition of "nanoparse_fetch"
nanoparse_fetchchanged
description
FetchReadaone URL and returninto clean Markdown with Litmus signals (source authority, freshness, structural trust). Price: $0.005 per page actually read, USDC on Base via x402. First 10 free parses per network (subnet). A page we cannot read — bot wall, thenconsent$0.01wall,perpaywall,requestPDFvia
{"properties":{"content":{"description":"Human-readableMachine-readable status reportfields.asThistextschemacontent","items":{"properties":{"text":{"description":"Multi-linedescribesstatusstructuredContentreport:—wallet,strictUSDCMCP
TLS
Certificate recorded, valid to 2026-11-18
Authorization
Authorization not required
Tool surface
First tool surface recorded: 2 tools (server version 1.0.0)
,"wallet_address":{"description":"Your wallet address (0x...) to claim the free tier — no payment needed.","type":"string"},"wallet_signature":{"description":"EIP-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.","type":"string"}
},"required":["url"],"type":"object"}
104 words differ · removed · added
—
x402
is
micropayment
reported
with a named reason and never charged. To read a whole site or a list: there is no batch endpoint
—
call this tool once per URL. Build your list first (GET https://<site>/sitemap.xml, or use URLs you already have), then loop. No minimum, no commitment, no balance to spend down: stop whenever you like. If you already know the price and the payTo address, pay on the first call and skip the 402 round trip. Otherwise,
when the tool returns a payment_required error,
⟨20 unchanged words⟩
133 words differ · removed · added
balance,
clients
price,
validate
estimated
structuredContent
parses
against it
,
free
so
tier,
it
funding
must
URI","type":"string
NOT require the result-envelope `content` array.
"
}
,"
type
properties
":{"
enum
balance_error
":
["text"],
{
"type":
"string"}},"required":
["
type
string
","
text
null
"]
}
,"
type
balance_known
":
"object"},
{
"type":"
array
boolean
"},"
structuredContent
estimated_parses_remaining
":{"description":"
Machine-readable
null
status
when
fields"
the balance is unknown — never 0
,
"properties":{"balance_error
which would imply an empty wallet
"
:{
,
"type":["
string
number
","null"]},"
estimated_parses_remaining
funding_uri
":{"type":"
number
string
"},"
funding_uri
next_call_will_succeed
":{"
type
description
":"
string
null when the free tier is exhausted and the balance is unknown
"
}
,"
next_call_will_succeed":{"
type":
[
"boolean"
,"null"]
},"price_per_parse":{"type":"string"},
⟨4 unchanged words⟩
{"type":"string"},"usdc_balance_raw":{"
description":"Balance in micro-USDC; null when the chain could not be read","