x402-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@x402-mcpCall https://demo.x402.merkleworks.io/v1/expensive"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
x402-mcp
MCP server for the x402 protocol. Lets AI agents (Claude, Cursor, etc.) discover and call payment-gated HTTP APIs automatically.
Repository: merkleworks/x402-mcp
MCP Server
This repository provides a Model Context Protocol (MCP) server that enables AI agents to call payment-gated HTTP APIs using the x402 protocol.
Tools exposed:
x402_http_request— Execute HTTP requests to APIs requiring payment via the x402 protocol. If the server returns 402, the tool parses the challenge, constructs the payment, retries with proof, and returns the final response.
Example agent flow:
agent → tool call → x402_http_request → 402 challenge → payment → retry → responseAutomatic discovery: The server is discoverable by MCP-aware frameworks without manual registry submission:
Repository descriptor: mcp.json at the repo root (name, description,
install: npx x402-mcp, tools).npm: Run with
npx x402-mcp; package keywords includemcp,model-context-protocol,ai-tools,x402.Well-known: .well-known/mcp.json can be hosted at
https://demo.x402.merkleworks.io/.well-known/mcp.jsonfor domain-based discovery.
Related MCP server: x402-fetch-mcp
Overview of x402
x402 is a protocol that gates HTTP APIs behind micropayments using HTTP 402 Payment Required:
Request — Client calls the API.
402 challenge — Server responds with
402 Payment Requiredand anX402-Challengeheader (nonce UTXO, price, payee, expiry).Payment — Client builds a BSV transaction, delegates fees (optional), and broadcasts.
Retry — Client retries the request with an
X402-Proofheader.Response — Server verifies the proof and returns the API response.
This flow lets APIs charge per request in satoshis without pre-registration or cards.
What this MCP server does
This server exposes Model Context Protocol (MCP) tools so AI agents can:
paid_http_request— Send an HTTP request; if the server returns 402, run the full x402 flow (parse challenge → pay → retry with proof) and return the final response. Primary tool for calling payment-gated APIs.discover_x402_api— List payable endpoints (from/.well-known/x402or by probing for 402).pay_x402_endpoint— Call a known x402 endpoint with full control (method, body, headers, delegator).parse_x402_challenge— Decode anX402-Challengeheader.verify_x402_proof— Check anX402-Proofagainst a challenge and request.
Agents use paid_http_request for a single “call this URL; pay if 402” step.
Installation
Run with a single command (recommended):
npx x402-mcpOr install globally:
npm install -g x402-mcp
x402-mcpFrom source:
git clone https://github.com/merkleworks/x402-mcp.git
cd x402-mcp
npm install
npm run build
npm startUsage example
Agent → tool call → x402_http_request → x402 flow (if 402) → API response
The agent calls the tool with
url,method, and optionalheadersandbody.The server sends the HTTP request.
If the response is 402, the server parses the challenge, builds the payment, delegates/broadcasts, then retries with the proof.
The tool returns the final response (status, body, and payment txid if paid).
Example tool call
Tool: x402_http_request
Input schema:
Field | Type | Required | Description |
| string | yes | Full URL of the API endpoint |
| string | no | HTTP method (default: |
| object | no | Optional HTTP headers (key-value strings) |
| string or object | no | Optional request body (string or JSON object) |
Example (GET):
{
"tool": "x402_http_request",
"input": {
"url": "https://demo.x402.merkleworks.io/v1/expensive",
"method": "GET"
}
}Example (POST with JSON body):
{
"tool": "x402_http_request",
"input": {
"url": "https://api.example.com/v1/query",
"method": "POST",
"headers": { "Content-Type": "application/json" },
"body": { "query": "example" }
}
}More examples: examples/, including example_agent_call.json.
Connecting from AI clients
Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"x402": {
"command": "npx",
"args": ["@merkleworks/x402-mcp"]
}
}
}Or with a local build:
{
"mcpServers": {
"x402": {
"command": "node",
"args": ["/path/to/x402-mcp/dist/server.js"]
}
}
}Claude Desktop / Claude Code
Add to your MCP config (e.g. claude_desktop_config.json):
{
"mcpServers": {
"x402": {
"command": "npx",
"args": ["@merkleworks/x402-mcp"]
}
}
}Generic MCP client (Node.js)
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
const transport = new StdioClientTransport({
command: "npx",
args: ["@merkleworks/x402-mcp"],
});
const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(transport);
const result = await client.callTool("paid_http_request", {
url: "https://demo.x402.merkleworks.io/v1/expensive",
method: "GET",
});
console.log(result);Tools reference
Tool | Description |
| Execute HTTP request; if 402, run x402 flow and return final response |
| Discover payable endpoints (/.well-known/x402 or probe) |
| Call x402 endpoint with full control (delegator, broadcast URL, etc.) |
| Decode X402-Challenge header |
| Verify X402-Proof against challenge and request |
Protocol summary
Client requests a protected endpoint.
Server responds 402 with
X402-Challenge.Client builds a BSV tx, optionally uses a delegator for fees, then broadcasts.
Client retries with
X402-Proof.Server verifies and returns the response.
This MCP server implements that flow so agents can pay for API calls without manual steps.
Configuration
pay_x402_endpoint(and thuspaid_http_requestwhen it pays) use the same origin as the request URL for the delegator by default. Override withdelegator_url/broadcast_urlwhen usingpay_x402_endpointdirectly.Discovery manifest format: protocol spec and
/.well-known/x402.
Examples
example_agent_call.json — Example
paid_http_requestcall for agents.discover-and-pay — Discover endpoints then pay and call the first. Run:
npx tsx examples/discover-and-pay.ts https://your-x402-api.example.com
MCP registry (mcp.json)
The repo includes mcp.json for MCP registries (e.g. mcp.so): name, description, repository, install command, and tool list.
License
Apache-2.0
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
Alicense-qualityCmaintenanceAn MCP server that enables AI agents to search, pay for, and call paid APIs using the x402 protocol, with automatic USDC settlement.2MIT- Alicense-qualityDmaintenanceMCP server that enables AI agents to automatically pay for and access paywalled content via the x402 payment protocol.8MIT
- AlicenseBqualityDmaintenanceMCP server providing AI agents access to 38 pay-per-call APIs (LLM, image, code, audio, crypto, web, IPFS) via HTTP 402 micropayments in USDC/USDm.2286MIT
- FlicenseAqualityBmaintenanceMCP server for a live x402 payment gateway on Base (USDC). Lets AI agents discover, preview for free, then pay per call — with prepaid gasless payments, signed receipts, and delta delivery.7
Related MCP Connectors
Agent-commerce MCP server for x402/USDC payments and affiliate splits on Base.
Agent x402 Paywall MCP — Coinbase HTTP 402 protocol + on-chain settlement. Agents pay per-call
MCP marketplace: agents pay per call in USDC via x402. Plus Base chain data and a USDC<->bank ramp.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/merkleworks/x402-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server