x402 Stellar MCP Server
Provides a TTS proxy that uses ElevenLabs as a provider for text-to-speech generation, with configurable models and voices.
Integrates with OpenZeppelin Channels as a facilitator for x402 payments on Stellar mainnet, handling relayer-based transactions.
Integrates with Stellar for x402 micropayments using USDC, enabling automatic payment for paid HTTP resources via Stellar wallet and facilitator.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
x402 Stellar MCP Server
Local MCP server (stdio) that can call x402-protected HTTP resources and automatically pay in Stellar USDC.
Features
Payment flow (
stellar:testnetorstellar:pubnet)Default testnet configuration
Mainnet-ready via env switch
Optional OpenZeppelin facilitator auth via env
No resource whitelist: URL is provided at tool call time
Related MCP server: x402 Payment Gateway MCP Server
Tools Exposed
x402_wallet_info: shows active wallet address/network/configx402_facilitator_supported: checks configured facilitator/supportedendpointfetch_paid_resource: generic paid fetch (url,method, optional body/headers)
Prerequisites
Node.js 20+
A Stellar wallet funded with testnet XLM + testnet USDC
x402 resource server running (your
app/index.jsdemo)x402 facilitator running on
http://localhost:4022
Setup
npm install
cp .env.example .envTestnet
For testnet you'll need to run a facilitator locally on port 4022. I'd recommend using the one included in the coinbase x402 repo: https://github.com/coinbase/x402/tree/main/examples/typescript/facilitator/advanced
Update .env with your wallet key:
STELLAR_SECRET_KEY=S...
STELLAR_NETWORK=stellar:testnetPubnet
For mainnet you'll just need an OpenZeppelin API Key for the relayer. You can get one here (Thank you for making this easy): https://channels.openzeppelin.com/gen
STELLAR_NETWORK=stellar:pubnet
STELLAR_RPC_URL=https://rpc.lightsail.network/
X402_FACILITATOR_URL=https://channels.openzeppelin.com/x402
X402_FACILITATOR_API_KEY=<your-openzeppelin-api-key>X402_FACILITATOR_API_KEY is optional in general, but required for OpenZeppelin channels.
When set, fetch_paid_resource auto-adds Authorization: Bearer <key> for requests under X402_FACILITATOR_URL (unless you provide Authorization explicitly).
Run
npm run devThe MCP server runs over stdio for Claude/Codex integrations.
TTS Proxy
The paid /api/tts route can use either elevenlabs or smallest.
Set a default provider in .env, and optionally override it per request by sending "provider": "elevenlabs" or "provider": "smallest" in the JSON body.
You can also send "provider": "auto" with a routing "priority" of "cheap", "fast", or "quality" to let the server pick a provider dynamically.
To run the real x402-protected TTS proxy, configure:
STELLAR_NETWORK=stellar:testnet
X402_FACILITATOR_URL=http://localhost:4022
TTS_PROVIDER=elevenlabs
ELEVENLABS_API_KEY=<your-elevenlabs-api-key>
ELEVENLABS_MODEL_ID=eleven_flash_v2_5
ELEVENLABS_VOICE_ID=21m00Tcm4TlvDq8ikWAM
ELEVENLABS_ESTIMATED_PRICE_USD=0.06
ELEVENLABS_ESTIMATED_LATENCY_MS=900
ELEVENLABS_QUALITY_SCORE=9.5
SMALLEST_API_KEY=<your-smallest-api-key>
SMALLEST_MODEL=lightning
SMALLEST_VOICE_ID=emily
SMALLEST_LANGUAGE=en
SMALLEST_ESTIMATED_PRICE_USD=0.03
SMALLEST_ESTIMATED_LATENCY_MS=500
SMALLEST_QUALITY_SCORE=8.3
ALLOW_SYSTEM_PROXY=false
PAY_TO_ADDRESS=<your-stellar-receiving-address>For pubnet, also set:
STELLAR_NETWORK=stellar:pubnet
STELLAR_RPC_URL=https://rpc.lightsail.network/
X402_FACILITATOR_URL=https://channels.openzeppelin.com/x402
X402_FACILITATOR_API_KEY=<your-openzeppelin-api-key>Then start the proxy with:
npm run start:elevenlabsThe protected route is:
POST http://localhost:3000/api/ttsExample request for automatic routing:
{
"text": "Hello from the voice marketplace",
"provider": "auto",
"priority": "cheap",
"language": "en"
}The response includes marketplace metadata headers like:
X-TTS-Provider
X-TTS-Priority
X-TTS-Reason
X-TTS-Estimated-Price-Usd
X-TTS-Estimated-Latency-Ms
X-TTS-Quality-ScoreThis server now requires a real facilitator and will not fall back to a mock implementation.
By default it also ignores HTTP_PROXY / HTTPS_PROXY / ALL_PROXY so upstream TTS requests go direct during local testing. Set ALLOW_SYSTEM_PROXY=true if you intentionally want to use a proxy.
Add To Claude / Codex
Use an MCP entry like (don't forget to change the path/):
Codex
codex mcp add x402-stellar -- npm --silent --prefix /absolute/path/to/x402-mcp-stellar run devClaude Code
claude mcp add x402-stellar -- npm --silent --prefix /absolute/path/to/x402-mcp-stellar run devClaude Desktop (untested)
{
"mcpServers": {
"x402-stellar": {
"command": "npm",
"args": ["--silent", "--prefix", "/absolute/path/to/x402-mcp-stellar", "run", "dev"]
}
}
}This server loads .env from the project directory (/absolute/path/to/x402-mcp-stellar/.env).
Claude Usage
After loading the MCP server, you can ask:
Can you fetch the resource at http://localhost:3000/my-service, use the x402-stellar MCP server to pay for it, and print the response?
The tool call will pass that full URL at runtime; no URL allowlist or hardcoded endpoint is required in this MCP server.
Notes
@x402/stellaris not currently published on npm, so this repo vendors the Stellar mechanism undersrc/stellar.Default testnet Soroban RPC is used automatically.
Mainnet requires
STELLAR_RPC_URL.
License
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Machine-payable API infrastructure for autonomous agents. Per-call x402 settlement in USDC.
Give your AI agent an x402 wallet: discover and pay for services in USDC, or earn from your own.
Universal HTTP 402 Micropayment Protocol & Autonomous Economic Settlement Engine for AI Agents
25 pay-per-request intelligence APIs for AI agents via x402 micropayments (USDC/Base)
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI agents to access paid content by integrating cryptocurrency payments through the x402 protocol, allowing LLMs to verify payments and retrieve paid resources automatically.1-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to make micropayments using USDC on Solana via the x402 protocol, supporting payment requests, on-chain verification, and revenue tracking.MIT

@hpp-io/x402-mcp-bridgeofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to autonomously pay for and discover services using HPP USDC.e over the x402 protocol, without API keys or manual signing.421 npmApache 2.0- AlicenseAqualityBmaintenanceEnables AI agents to discover and pay for x402-gated HTTP APIs, handling 402 Payment Required flows with local signing. Supports EVM and Solana with non-custodial wallet management.3327 npmMIT