streamable-httpMITupdated 2mo ago
Pay-per-call data tools for AI agents, settled per call in USDC on Base via the x402 protocol. The buyer is another agent: it discovers an endpoint, auto-pays per request (HTTP 402 → payment → data), and gets structured JSON back. No API key, no signup, no account — the seller's only setup is one public wallet address.
What can you do with agent web reader?
x402-agent-data
Pay-per-call data tools for AI agents, settled per call in USDC on Base via the x402 protocol. The buyer is another agent: it discovers an endpoint, auto-pays per request (HTTP 402 → payment → data), and gets structured JSON back. No API key, no signup, no account — the seller's only setup is one public wallet address.
Live at https://x402.charliemorrison.dev — also listed as a remote MCP server in the
Official MCP Registry as
dev.charliemorrison/agent-web-reader.
Tools
| Tool | Endpoint | Price | Returns |
|---|---|---|---|
market_signal |
GET /signal |
$0.005 | Crypto market signal (price/trend/momentum) for a symbol |
web_read |
GET /extract |
$0.005 | Clean, readable text + metadata extracted from any URL |
repo_audit |
GET /audit?owner=&repo= |
$0.005 | GitHub repo discoverability/SEO score (0–100) + concrete fixes |
Free, unpaid routes:
GET /— discovery doc (service + paid-endpoint metadata, x402-aware)GET /healthz— livenessGET /.well-known/mcp.json— MCP discovery manifestGET /.well-known/agent.json— A2A Agent CardPOST /mcp— remote MCP server (Streamable HTTP). Lists the three tools; an unpaidtools/callreturns the decoded x402 payment-required challenge, and a call carrying an x402 payment returns the data.
How payment works
- Agent calls a paid route with no payment → server responds HTTP 402 with an
x402 challenge (amount, asset = USDC, network =
base,payToaddress). - Agent's x402 client signs a payment authorization and retries with the
X-PAYMENTheader. - Server verifies/settles via an x402 facilitator and returns the data.
No private key ever lives in this server's config — it only receives. Settlement is delegated to an x402 facilitator (default: a zero-fee, gas-sponsored facilitator; Coinbase CDP facilitator is supported via env and inert unless configured).
Run it
npm install
PAY_TO=0xYourReceivingAddress node server.js # listens on :4021
Environment:
PAY_TO— your receiving wallet (USDC on Base). Required for real revenue.PORT— default4021.CDP_API_KEY_ID/CDP_API_KEY_SECRET— optional; switches settlement to the Coinbase CDP facilitator. Omitted by default.
Why this shape
The buyer is a machine and distribution is a registry — there's no cold human audience to recruit, which is the wall that kills most indie API/tool launches. Seller setup is a single wallet address; every call is zero-marginal-cost public data.
License
MIT
Install
Add agent web reader to your client. Pick the one you use.
claude mcp add --transport http agent-web-reader https://x402.charliemorrison.dev/mcpcodex mcp add agent-web-reader --url https://x402.charliemorrison.dev/mcp{
"mcpServers": {
"agent-web-reader": {
"url": "https://x402.charliemorrison.dev/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"agent-web-reader": {
"type": "http",
"url": "https://x402.charliemorrison.dev/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"agent-web-reader": {
"url": "https://x402.charliemorrison.dev/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"agent-web-reader": {
"serverUrl": "https://x402.charliemorrison.dev/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
3 tools
agent web reader exposes 3 tools to a connected agent.
- market_signal
- `GET /signal`
- web_read
- `GET /extract`
- repo_audit
- `GET /audit?owner=&repo=`
Score
67 / 100
Good
- Documentation22/25
- Maintenance16/25
- Trust13/20
- Capability4/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 67 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 3 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 6.0.0Latest | Jun 19, 2026 |