npm @agenticpay/mcp-bridgestdioMITupdated 8d ago
Get paid by AI agents. Open-source payment infrastructure for the MCP ecosystem - declare a price on any tool, agents pay in USDC over x402, settles on Solana in 1.5 seconds.
What can you do with agenticpay?
agenticpay
Website ยท Spend caps ยท npm
Get paid by AI agents. Open-source payment infrastructure for the MCP ecosystem - declare a price on any tool, agents pay in USDC over x402, settles on Solana in ~1.5 seconds.
No Stripe. No accounts. No API keys.
The full stack is here - SDK, CLI, paywall middleware, self-hosted x402 facilitator, and a live LLM agent demo. All TypeScript, MIT licensed.
Just want to test it? Point your
mcp-serverat our hosted devnet facilitator:FACILITATOR_URL=https://agentpay-facilitator-e9b20a5fee6a.herokuapp.comNo setup needed.
Live demo
A real Claude Opus agent receives a task, decides which paid tools to use, pays autonomously via x402 micropayments on Solana, and answers the user.
$ pnpm --filter @agenticpay/two-agent-demo agent
Agent wallet: 3rHoEumCpH8EGrr6Lq2vBKeyec6h3yPRGj2nGG2FzEfX
Server: http://localhost:4021
Facilitator: http://localhost:4022 โ our own
Model: claude-opus-4-7
Task: Reverse the string 'agentpay rocks' and tell me how many words
are in 'The quick brown fox jumps over the lazy dog'.
[turn 1] tool_use: reverse_string({"text":"agenticpay rocks"}) โ paying $0.001 USDC ...
โ paid + got result in 1596ms: {"result":"skcor yaptnega"}
[turn 1] tool_use: word_count({"text":"The quick..."}) โ paying $0.0005 USDC ...
โ paid + got result in 1286ms: {"count":9}
Agent final answer:
1. Reversed string: skcor yaptnega
2. Word count: 9 words
=== payments summary ===
reverse_string $0.0010 USDC 1596ms
word_count $0.0005 USDC 1286ms
TOTAL $0.0015 USDC 2 calls
On-chain proof (Solana devnet):
- Settled by our self-hosted facilitator:
EsqzTG8id...Bnku - Earlier settle via x402.org:
2d2HcefgJ...vkqY
Why
The current AI agent stack assumes humans hold the credit card. That breaks the moment agents act on their own initiative - calling APIs, hiring sub-agents, paying for compute. You can't OAuth your way through it.
Stablecoin micropayments over HTTP fix it. agenticpay packages the missing ergonomics for the MCP ecosystem specifically: any tool can declare a price, any agent can pay it, and the whole pipeline - including the facilitator that actually submits the on-chain settlement - is open source and self-hostable.
Architecture
โโโโโโโโโโโโโโโโ 1) HTTP request โโโโโโโโโโโโโโโ
โ Claude / โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโถ โ mcp-server โ
โ GPT agent โ 2) HTTP 402 + payment requirements โ (yours) โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ 3) signed USDC payload โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโถ โ โ
โโโโโโโโโโโโโโโโ โโโโโโโฌโโโโโโโโ
โ verify+settle
โผ
โโโโโโโโโโโโโโโโโโโโโโโโ
โ agenticpay facilitator โ
โ (also yours, this โ
โ repo, port 4022) โ
โโโโโโโโโโโโฌโโโโโโโโโโโโ
โ submit
โผ
Solana
(USDC SPL,
sub-cent fees)
You can also point mcp-server at the public x402.org/facilitator for
testnet/devnet, or at Coinbase CDP for mainnet. We just made the
self-hosted route easy.
Packages
| Package | What it does |
|---|---|
packages/sdk |
TypeScript primitives: USDC transfers, wallet management, network config |
packages/cli |
agenticpay command - wallet, balance, send |
packages/mcp-server |
HTTP server with x402 paywall middleware. Each tool has a price. |
packages/facilitator |
Self-hosted x402 facilitator - verify + settle USDC payments on Solana. Pays SOL fees on behalf of agents. |
packages/eliza-plugin |
Eliza plugin - wraps paid HTTP endpoints as native Eliza Actions. Solana-native AI agents pay per tool call. |
packages/ai-sdk |
Vercel AI SDK helpers - drop paid tools straight into generateText / streamText. |
packages/mcp-bridge |
Real MCP server (stdio + @modelcontextprotocol/sdk) wrapping x402 paid tools. Drop into Claude Desktop / Cursor. |
examples/two-agent-demo |
Real Claude Opus agent paying for tool calls |
Install
npm install @agenticpay/sdk # Solana + USDC primitives
npm install -g @agenticpay/cli # `agenticpay` command
npm install @agenticpay/mcp-server # paywalled HTTP server
npm install @agenticpay/facilitator # self-hosted x402 facilitator
npm install @agenticpay/eliza-plugin # Eliza plugin (Solana-native agents)
npm install @agenticpay/ai-sdk # Vercel AI SDK paid tools
npm install -g @agenticpay/mcp-bridge # MCP server for Claude Desktop / Cursor
Or clone the monorepo to get the live two-agent demo and edit-friendly templates (recommended for first run - see Quickstart below).
Use with Claude Code
This repo ships an Anthropic Skill
at .claude/skills/agenticpay/SKILL.md. Copy it into your ~/.claude/skills/
to give Claude Code first-class context about agenticpay - it'll then walk you
through monetizing an MCP server, generating tool routes, and verifying
on-chain settlements without re-reading the README every time.
mkdir -p ~/.claude/skills
cp -r .claude/skills/agenticpay ~/.claude/skills/
Quickstart (devnet, ~5 minutes, free)
# 1. Install
pnpm install
pnpm -r build
# 2. Generate a payer wallet, fund it on devnet
node packages/cli/dist/index.js wallet new
node packages/cli/dist/index.js wallet show
# โ fund SOL at https://faucet.solana.com (paste pubkey)
# โ fund USDC at https://faucet.circle.com (Solana Devnet, same pubkey)
# 3. (option A - fastest) Use our hosted devnet facilitator. Skip step 4.
export FACILITATOR_URL=https://agentpay-facilitator-e9b20a5fee6a.herokuapp.com
# 3. (option B - fully self-hosted) Start your own facilitator (terminal 1)
pnpm --filter @agenticpay/facilitator dev
# Note the printed feePayer address. It needs ~0.05 SOL devnet to cover fees.
# Either airdrop or use the helper:
pnpm --filter @agenticpay/facilitator fund
export FACILITATOR_URL=http://localhost:4022
# 4. Start the paywalled mcp-server (terminal 2)
PAY_TO=<recipient pubkey> pnpm --filter @agenticpay/mcp-server dev
# 5. Run the live LLM agent demo (terminal 3, needs ANTHROPIC_API_KEY in .env)
pnpm --filter @agenticpay/two-agent-demo agent
Framework integrations
Drop-in templates for the most common AI agent stacks live under examples/:
| Framework | File |
|---|---|
| Anthropic SDK (canonical) | examples/two-agent-demo/src/agent-llm.ts |
| Real-world paid server template (Claude-backed tools) | examples/research-server/ |
| LangChain.js | examples/langchain-js/agent-with-paid-tools.ts |
| LangChain Python | examples/langchain-python/agent_with_paid_tools.py |
| Eliza (Solana-native) | examples/eliza/plugin-agenticpay.ts |
| Mastra | examples/mastra/paid-tool.ts |
| Vercel AI SDK | examples/vercel-ai-sdk/paid-tool.ts |
| OpenAI Custom GPT | examples/openai-gpt/action-schema.json |
See examples/README.md for the integration matrix.
Status
Pre-alpha. Devnet validated end-to-end. Mainnet config supported but requires funding the facilitator with real SOL and pointing at a mainnet-capable RPC (Helius, QuickNode, etc.).
Roadmap
- Devnet end-to-end demo (smoke + LLM agent)
- Self-hosted x402 facilitator (verify + settle, fee_payer abstraction)
- Real-world MCP server template (search, fetch, summarize, extract - instead of toy
reverse_string) - On-chain escrow for long-running tasks (Anchor program)
- Agent reputation registry on-chain
- Hosted facilitator service (
agenticpay.com)
What's a facilitator?
If you've never seen x402 before: the facilitator is the trusted middleman that (1) verifies an agent's signed payment payload, (2) submits the USDC transfer on-chain, and (3) pays the SOL gas fees so the agent doesn't need any SOL - only USDC. Most MCP devs don't want to run their own; they point at a hosted one.
This repo ships a complete facilitator implementation. You can self-host it, fork it, audit it, or deploy it as a service for your own users.
What happens when a paid tool call fails?
Short version: a failed tool call is never charged. x402 settlement is an irreversible push, so the middleware is careful about when it settles:
- Verify before execute. The payment payload (signature, funds, requirements match) is verified before your tool handler runs. Invalid payment โ HTTP 402, the tool never executes.
- Execute with a buffered response. The handler runs, but its response is held back - nothing is sent to the agent yet.
- Settle only on success. If the handler responds with status โฅ 400, the middleware skips settlement entirely and just returns the error. The agent pays nothing for a failed call.
- No result without payment. If on-chain settlement itself fails, the buffered tool result is discarded and the agent gets a payment error instead - the server never leaks a result it wasn't paid for.
What this doesn't cover: a tool that returns 200 OK with a junk answer is
still charged - the protocol can't judge response quality. That's what keeps
per-call prices micro ($0.0005โ$0.001 in the demo): the worst case is capped
at one call's price, and quality enforcement belongs to a reputation layer
(see Roadmap) rather than the payment protocol.
License
MIT
Install
Add agenticpay to your client. Pick the one you use.
claude mcp add mcp-bridge -- npx -y @agenticpay/mcp-bridgecodex mcp add mcp-bridge -- npx -y @agenticpay/mcp-bridgeamp mcp add mcp-bridge -- npx -y @agenticpay/mcp-bridge{
"mcpServers": {
"mcp-bridge": {
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-bridge": {
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-bridge","command":"npx","args":["-y","@agenticpay/mcp-bridge"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-bridge": {
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-bridge": {
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-bridge": {
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-bridge": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-bridge": {
"command": {
"path": "npx",
"args": [
"-y",
"@agenticpay/mcp-bridge"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @agenticpay/mcp-bridgeRun `goose configure`, choose **Add Extension โ Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance19/25
- Trust16/20
- Capability0/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 1 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
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint โ no local install
Version history
| Versions | Published |
|---|---|
| 0.0.1Latest | May 1, 2026 |