Spraay x402 MCP Server
The Spraay x402 MCP Server provides 183 pay-per-call tools for AI agents, settled in USDC on Base via the x402 protocol — no API keys required. Key capabilities include:
💸 Payments & Payroll
Execute batch payments to up to 200 recipients in a single Base transaction
Run stablecoin payroll for up to 200 employees; estimate gas before executing
🔄 DeFi & Swaps
Get quotes and execute token swaps via Uniswap V3 on Base
Get cross-chain bridge quotes via LI.FI (Base, Ethereum, Arbitrum, Polygon, etc.)
Fetch real-time oracle prices, gas prices, and stablecoin FX rates
Check wallet balances (ETH + ERC-20) and resolve ENS/Basenames
📄 Invoicing & Escrow
Create, list, and manage crypto-native invoices
Create milestone-based escrow contracts; fund, release, and cancel them
🤖 AI & Compute
Chat with 200+ LLMs (GPT-4o, Claude, Llama, Gemini, Mistral, etc.)
Run GPU inference via Replicate (image, video, audio, LLMs)
Access Bittensor decentralized inference and embeddings
AI-powered wallet/transaction classification with risk scoring and smart contract explanations
🔍 Research & Search
Web search with LLM-ready extracted content (Tavily)
URL content extraction for RAG pipelines; question answering with cited sources
Search 250M+ academic papers (OpenAlex, arXiv, PubMed, Crossref, PubChem)
🔔 Communication & Webhooks
Send email, SMS, and encrypted XMTP messages
Register, test, list, and delete webhooks for real-time event notifications
🏗️ Infrastructure
Multi-chain JSON-RPC calls (EVM + Solana)
Pin and retrieve content from IPFS/Arweave
Create and manage cron jobs for recurring actions; ingest and query structured logs
🛡️ Identity & Compliance
Initiate KYC/KYB verification; create and verify authenticated sessions
Record immutable audit trails; calculate crypto tax gains/losses (FIFO/IRS 8949)
🤝 Agent Wallets, Supply Chain & Robotics
Provision agent wallets, add/revoke session keys, predict addresses
Register suppliers, create purchase orders, and settle invoices (SCTP)
Register robots, dispatch escrow-backed tasks, and track completion (RTP)
🆓 Free Utilities (no payment required)
Gas prices, token spot prices, chain status, address validation, ENS resolution, unit conversion, UUID generation, and x402 protocol discovery probes
Enables multi-chain JSON-RPC calls via the Alchemy platform to interact with various blockchain networks.
Supports decentralized storage by allowing users to pin and retrieve content on the InterPlanetary File System (IPFS) via Pinata.
Provides persistent storage for DeFi infrastructure data, including invoices, escrow milestones, audit trails, and webhook registrations.
Click on "Deploy 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., "@Spraay x402 MCP Server What is the USDC balance of vitalik.eth?"
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.
💧 Spraay x402 MCP Server
Full-stack DeFi infrastructure for AI agents — 183 pay-per-call tools, backed by the 192-endpoint Spraay x402 Gateway on Base, with Solana, Ethereum, XRP, and Stellar payment rails.
Connect Claude, Cursor, or any MCP client to onchain payments, batch payouts, swaps, bridging, payroll, invoicing, escrow, oracle data, analytics, 200+ AI models, GPU/compute, research APIs, search/RAG, and more. Agents pay USDC per request via the x402 protocol — no API keys, no accounts.
The tool list is generated from the live gateway manifest at build time (
npm run sync), so the authoritative catalog and pricing always live at the gateway — see Tool catalog. 24 of the gateway's endpoints are free (no payment required).
Quick Start
Install and go — no config, no API keys, no env vars. On first run the
server auto-creates a wallet, saves it to ~/.spraay/.session, and prints the
address to stderr. Fund that address with USDC on Base and start calling tools.
Read Security & Wallet Safety — these tools move real funds.
One-line install (Claude Code)
claude mcp add spraay -s user -- npx -y spraay-x402-mcpManual config (Cursor / Claude Desktop)
Cursor (.cursor/mcp.json) or Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"spraay": {
"command": "npx",
"args": ["-y", "spraay-x402-mcp"]
}
}
}That's it. The first run prints something like:
💧 Spraay created a new wallet: 0xABC…123
Private key saved to ~/.spraay/.session (keep it safe — it controls funds).
Fund this address with USDC on Base to start paying for tool calls.Optional — bring your own wallet
To sign with a key you already control instead of the auto-created one, set
EVM_PRIVATE_KEY in your environment (it overrides the session wallet).
Never paste a raw key into a committed config file — use a dedicated hot
wallet funded only with what the agent may spend. See
Security & Wallet Safety.
Remote URL (no wallet on your machine)
Settlement is handled gateway-side; your client never holds a signing key.
{
"mcpServers": {
"spraay": {
"url": "https://spraay-x402-mcp--plagtech.run.tools"
}
}
}Smithery
smithery mcp add Plagtech/Spraay-x402-mcpFrom source
git clone https://github.com/plagtech/spraay-x402-mcp
cd spraay-x402-mcp
npm install
npm run build
npm start # auto-creates a wallet on first runRelated MCP server: deriveai
Tool catalog
183 tools spanning the gateway's 33 categories. Highlights by area:
Area | What it covers |
AI & Inference | 200+ LLMs (OpenAI-compatible), wallet/tx classification, contract explanation, summaries |
Compute | Text / image / video / TTS / STT / embeddings across Replicate, Chutes, OpenRouter; batch jobs |
Compute Futures | Prepaid compute credits with tier discounts; draw down per inference |
Bittensor | Decentralized inference, image gen, and embeddings via SN64 / SN19 |
Payments | Batch payouts up to 200 recipients (Base, XRP Ledger, Stellar); estimates |
Payroll | Stablecoin payroll runs across Base, Ethereum, Solana |
Invoicing & Escrow | Crypto-native invoices and milestone escrow (persistent) |
DeFi & Data | Swaps (Uniswap V3 / Aerodrome), oracle prices/gas/FX, bridge quotes, balances, ENS/Basename |
Analytics | Wallet profiles and decoded transaction history |
Research | 250M+ papers (OpenAlex), arXiv, Crossref, PubMed, PubChem, US Census, dictionary |
Search & RAG | Web search, content extraction, question answering |
Communication | Email, SMS, XMTP messaging, webhooks |
Infrastructure | Multi-chain RPC, IPFS/Arweave storage, cron scheduling, structured logs |
Identity & Compliance | KYC/sanctions screening, auth sessions, audit trail, crypto tax (FIFO, IRS 8949) |
Supply Chain (SCTP) | Supplier registration, purchase orders, invoice verification, settlement |
Robotics (RTP) | Register robots, dispatch paid tasks, escrow-backed completion |
Trust & Safety | ProofLayer trust scores; free token-safety, address-safety, and tx-decode checks |
24 free endpoints require no payment — gas/prices/chain-status, address & batch validation, ENS resolution, unit conversion, x402 discovery probes, and model/compute discovery.
For the exact, current tool list and per-tool pricing, query the live manifest:
curl https://gateway.spraay.app/.well-known/x402.jsonPricing ranges from $0.001 (reads) to ~$0.10 (payroll, escrow release, tax), settled in USDC on Base.
How it works
An agent calls a tool (e.g.
spraay_batch_execute).The MCP server hits the Spraay x402 Gateway.
The gateway responds
402 Payment Requiredwith a USDC amount.Remote mode: settlement is handled gateway-side. Local mode:
@x402/axiossigns a USDC micropayment from the auto-created (or overridden) wallet.The gateway validates payment and returns the data.
Security & Wallet Safety
These tools can initiate real USDC payments. Treat the server like any tool with funds access.
The auto-created wallet only holds what you send it. Fund it with only as much USDC as you're willing to let the agent spend. It starts empty, so a fresh install cannot move funds until you fund it; read-only tools work regardless.
The session key lives at
~/.spraay/.session. Protect that file like any secret — anyone who reads it controls the wallet. It's written with0600permissions on POSIX systems. Back it up if the funds matter; delete it to rotate to a new wallet on the next run.Prefer the remote URL if you'd rather keep no signing key on your machine — settlement is handled gateway-side.
If you bring your own key via
EVM_PRIVATE_KEY, use a dedicated hot wallet that controls no other assets, and never put a raw private key in a config file, issue, or any committed file — keep it in your shell environment only.
The published npm package ships only dist/, README, and LICENSE (verify
with npm pack --dry-run) — no binaries, no build tooling, no install scripts.
Report security issues to security@spraay.app, not a public issue.
Requirements
Node.js 20+
MCP client — Claude Desktop, Cursor, or any MCP-compatible client
USDC on Base — fund the auto-created wallet (or your own); even $1 covers thousands of calls
Environment variables
None are required — the server runs with zero configuration. All of the following are optional overrides.
Variable | Required | Default | Description |
| No | auto-created at | Override the auto-created wallet with your own key. Use a dedicated, funded-as-needed hot wallet. |
| No |
| Override the gateway URL. |
Links
MCP server: mcp.spraay.app
Gateway: gateway.spraay.app
Manifest: gateway.spraay.app/.well-known/x402.json
x402: x402.org
License
MIT
Available Tools
162 toolsspraay_agent_wallet_infoCRead-only
Agent wallet info. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: address (required). Returns: ok, data, error
spraay_agent_wallet_predictARead-only
Predict wallet address. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: agentId (required), ownerAddress (required). Returns: ok, data, error
spraay_agent_wallet_provisionB
Provision agent wallet. Costs $0.05 USDC per call. Provide the listed fields as typed arguments.
Inputs: agentId (required), mode, agentType. Returns: ok, data, error
spraay_agent_wallet_revoke_keyC
Revoke session key. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: walletAddress (required), sessionKeyAddress (required). Returns: ok, data, error
spraay_agent_wallet_session_keyB
Add session key. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: durationHours (required), spendLimitEth (required), walletAddress (required), sessionKeyAddress (required). Returns: ok, data, error
spraay_analytics_txhistoryARead-only
Get decoded transaction history for any address on Base. Returns transaction types, values, timestamps, and decoded method calls. Costs $0.003 USDC.
Inputs: address (required), limit. Returns: ok, data, error
spraay_analytics_walletARead-only
Get a comprehensive wallet profile including ETH + token balances, wallet age, entity classification, and portfolio breakdown on Base. Costs $0.005 USDC.
Inputs: address (required). Returns: ok, data, error
spraay_audit_logA
Record an immutable audit trail entry for payments, escrows, compliance actions, and other events. Data persists in Supabase. Costs $0.001 USDC.
Inputs: actor (required), action (required), resource (required), txHash, +1 more. Returns: ok, data, error
spraay_audit_queryBRead-only
Query the audit trail by actor, action, resource, or time range. Returns matching entries sorted newest first. Data persists in Supabase. Costs $0.005 USDC.
Inputs: actor, limit, since, until, +2 more. Returns: ok, data, error
spraay_auth_sessionA
Create an authenticated session with scoped permissions and configurable TTL. Returns a session token (spr_...) for use in Authorization headers. Data persists in Supabase. Costs $0.005 USDC.
Inputs: address (required), ttlSeconds, permissions. Returns: ok, data, error
spraay_auth_verifyARead-only
Verify a session token and check its permissions, expiry, and associated address. Data persists in Supabase. Costs $0.001 USDC.
Inputs: token (required). Returns: ok, data, error
spraay_balancesARead-only
Get ETH + ERC-20 token balances for any wallet on Base. Returns formatted balances with USD values where available. Costs $0.002 USDC.
Inputs: address (required), tokens, showAll. Returns: ok, data, error
spraay_batch_estimateA
Estimate gas cost for a batch payment before executing. Returns estimated gas in wei and USD equivalent. Costs $0.001 USDC.
Inputs: recipientCount (required), token. Returns: ok, data, error
spraay_batch_executeA
Execute a batch payment to up to 200 recipients in a single Base transaction via the Spraay protocol. Supports any ERC-20 token or native ETH. Returns unsigned transaction data for the sender to sign. Costs $0.01 USDC.
Inputs: token (required), sender (required), amounts (required), recipients (required). Returns: ok, data, error
spraay_bittensor_chat_completionsC
Bittensor inference. Costs $0.03 USDC per call. Provide the listed fields as typed arguments.
Inputs: model (required), messages (required), max_tokens, temperature. Returns: ok, data, error
spraay_bittensor_embeddingsC
Bittensor embeddings. Costs $0.005 USDC per call. Provide the listed fields as typed arguments.
Inputs: input (required), model (required). Returns: ok, data, error
spraay_bittensor_healthCRead-only
Bittensor health. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_bittensor_images_generationsC
Bittensor image gen. Costs $0.05 USDC per call. Provide the listed fields as typed arguments.
Inputs: prompt (required), n, size, model. Returns: ok, data, error
spraay_bittensor_modelsCRead-only
Bittensor models. Costs $0.001 USDC per call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_bridge_chainsARead-only
List all chains supported by the Spraay bridge aggregator (LI.FI). Returns chain names, IDs, and supported tokens. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_bridge_quoteA
Get a cross-chain bridge quote via LI.FI aggregator. Supports Base, Ethereum, Arbitrum, Polygon, BNB Chain, Avalanche, Optimism, and more. Returns estimated output, fees, and execution time. Costs $0.005 USDC.
Inputs: token (required), amount (required), toChain (required), fromChain (required), +1 more. Returns: ok, data, error
spraay_chatA
Send a message to 200+ AI models (GPT-4o, Claude, Llama 3, Gemini, Mistral, etc.) via the Spraay x402 Gateway. Returns the model's completion. Use spraay_models to discover available model IDs. Costs $0.005 USDC.
Inputs: message (required), model, systemPrompt. Returns: ok, data, error
spraay_classify_addressA
AI-powered wallet classification with risk scoring. Analyzes on-chain activity to classify addresses as whale, retail, MEV bot, exchange, bridge, or contract. Returns risk score, classification, confidence, and behavioral signals. Costs $0.008 USDC.
Inputs: address (required). Returns: ok, data, error
spraay_classify_txA
AI-powered transaction classification with risk scoring. Decodes, categorizes, and analyzes any Base transaction. Returns type (swap, transfer, contract call, etc.), risk level, and decoded parameters. Costs $0.008 USDC.
Inputs: hash (required). Returns: ok, data, error
spraay_compute_batchA
Batch compute — submit up to 50 jobs in a single x402 payment with 10% discount. Mix any types: text-inference, image-generation, tts, stt, embeddings, video-generation. Costs $0.05+ USDC.
Inputs: jobs (required). Returns: ok, data, error
spraay_compute_embeddingsA
Generate text embeddings via Spraay Compute. For RAG, semantic search, clustering. Costs $0.005 USDC.
Inputs: input (required), model. Returns: ok, data, error
spraay_compute_estimateARead-only
Estimate compute cost before committing. Returns price breakdown per job. FREE — no x402 payment required.
Inputs: jobs (required). Returns: ok, data, error
spraay_compute_futures_balanceARead-only
Check remaining compute credit balance, tier, discount, and usage stats. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: id (required). Returns: ok, data, error
spraay_compute_futures_depositA
Deposit USDC to open a prepaid compute credit account. Costs $0.01 USDC per call. Provide the listed fields as typed arguments.
Inputs: amount (required), depositor (required), expiresInDays. Returns: ok, data, error
spraay_compute_futures_executeC
Run a compute job and deduct cost from the prepaid balance. Costs $0.001 USDC per call. Provide the listed fields as typed arguments.
Inputs: type (required), futuresId (required), model, prompt, +1 more. Returns: ok, data, error
spraay_compute_futures_historyARead-only
Full usage ledger. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: id (required), limit. Returns: ok, data, error
spraay_compute_futures_pricingARead-only
Compute futures pricing. Costs $0.001 USDC per call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_compute_futures_refundB
Refund unused compute credit balance to the original depositor. Costs $0.01 USDC per call. Provide the listed fields as typed arguments.
Inputs: caller (required), futuresId (required). Returns: ok, data, error
spraay_compute_image_generationA
Generate images via Spraay Compute. FLUX Schnell, FLUX Dev, SDXL via Replicate. Text to image. Costs $0.02-$0.08 USDC.
Inputs: prompt (required), model, width, height, +1 more. Returns: ok, data, error
spraay_compute_modelsARead-only
List all available compute models with pricing and capabilities. Grouped by type (text, image, video, tts, stt, embeddings). FREE — no x402 payment required.
Inputs: no named parameters. Returns: ok, data, error
spraay_compute_statusARead-only
Poll async compute job status. Use for video generation and batch jobs that return 'processing'. Costs $0.001 USDC.
Inputs: jobId (required). Returns: ok, data, error
spraay_compute_sttA
Speech-to-text via Spraay Compute. Transcribe audio from a URL using Whisper. Costs $0.02 USDC.
Inputs: audio_url (required), model, language. Returns: ok, data, error
spraay_compute_text_inferenceA
Run LLM text inference via Spraay Compute. 11 models across Chutes, Replicate, OpenRouter (DeepSeek, Llama, Qwen, Gemma). Costs $0.003-$0.10 USDC depending on model.
Inputs: messages (required), model, max_tokens, temperature. Returns: ok, data, error
spraay_compute_ttsB
Text-to-speech via Spraay Compute. Convert text to natural-sounding audio. Replicate TTS models. Costs $0.03-$0.05 USDC.
Inputs: text (required), model, language. Returns: ok, data, error
spraay_compute_video_generationA
Generate video from text via Spraay Compute. MiniMax Video 01, Wan 2.1 via Replicate. Async — poll spraay_compute_status for results. Costs $0.40-$0.50 USDC.
Inputs: prompt (required), model, duration_seconds. Returns: ok, data, error
spraay_contract_readC
Read contract. Costs $0.002 USDC per call. Provide the listed fields as typed arguments.
Inputs: method (required), address (required), args, chain. Returns: ok, data, error
spraay_contract_writeC
Write contract. Costs $0.01 USDC per call. Provide the listed fields as typed arguments.
Inputs: method (required), address (required), args, chain, +1 more. Returns: ok, data, error
spraay_cron_cancelADestructiveIdempotent
Cancel a scheduled job by ID. Stops future executions. Data persists in Supabase. Costs $0.001 USDC.
Inputs: jobId (required). Returns: ok, data, error
spraay_cron_createA
Create a scheduled job for recurring payments, DCA strategies, reminders, or any gateway action. Supports standard 5-part cron expressions. Data persists in Supabase. Costs $0.005 USDC.
Inputs: action (required), payload (required), schedule (required), maxRuns. Returns: ok, data, error
spraay_cron_listARead-only
List all scheduled jobs with optional status and action filters. Data persists in Supabase. Costs $0.001 USDC.
Inputs: action, status. Returns: ok, data, error
spraay_defi_positionsBRead-only
DeFi positions. Costs $0.008 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: address (required), chain. Returns: ok, data, error
spraay_escrow_cancelADestructiveIdempotent
Cancel an escrow. Depositor can cancel unfunded escrows; depositor or arbiter can cancel funded ones. Data persists in Supabase. Costs $0.002 USDC.
Inputs: caller (required), escrowId (required). Returns: ok, data, error
spraay_escrow_createA
Create a conditional escrow with optional milestones, arbiter, and expiry on Base. Funds are held until release conditions are met. Data persists in Supabase. Returns escrow ID and next-step actions. Costs $0.008 USDC.
Inputs: token (required), amount (required), depositor (required), beneficiary (required), +3 more. Returns: ok, data, error
spraay_escrow_fundA
Mark an escrow as funded. Changes status from 'created' to 'funded'. Only works on unfunded, non-expired escrows. Data persists in Supabase. Costs $0.002 USDC.
Inputs: escrowId (required). Returns: ok, data, error
spraay_escrow_getARead-only
Get full escrow details including status, participants, conditions, balance check, and timestamps by ID. Data persists in Supabase. Costs $0.001 USDC.
Inputs: id (required). Returns: ok, data, error
spraay_escrow_listARead-only
List escrows by address (depositor, beneficiary, or arbiter) with optional status filter. Data persists in Supabase. Costs $0.002 USDC.
Inputs: address (required), status. Returns: ok, data, error
spraay_escrow_releaseA
Release escrow funds to the beneficiary. Returns an unsigned ERC-20 transfer transaction for the depositor to sign. Only depositor or arbiter can release. Data persists in Supabase. Costs $0.005 USDC.
Inputs: caller (required), escrowId (required). Returns: ok, data, error
spraay_explain_contractA
AI-powered smart contract analysis. Explains what a verified contract does, lists its functions, identifies patterns (ERC-20, ERC-721, etc.), and flags security properties. Costs $0.01 USDC.
Inputs: address (required). Returns: ok, data, error
spraay_freeCRead-only
Free tier catalog. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_agent_cardARead-only
ERC-8004 agent registry lookup. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_chain_statusARead-only
Block height & liveness — 7 EVM chains (cached 30s). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_convertARead-only
Fiat ↔ crypto conversion (unit math + spot). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_estimate_batchARead-only
Rough batch cost estimate (no live quote). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_gasARead-only
Gas prices — 7 EVM chains via Alchemy (cached 15s). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_nonceARead-only
EVM nonce / tx count for address. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_pricesBRead-only
USDC/ETH/SOL spot prices (cached 60s). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_resolveARead-only
ENS & Basename → address resolution. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_timestampBRead-only
Current Unix timestamp. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_uuidARead-only
UUID v4 generator (up to 100). Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_validate_addressARead-only
Multi-chain address checksum validation. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_free_validate_batchA
BPA 1.0 payload schema validation. Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_free_x402_checkC
Probe URL for x402 payment support. Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_gpu_modelsARead-only
List all available GPU model shortcuts grouped by category (image, video, LLM, audio, utility). Shows shortcut names, full Replicate model IDs, and descriptions. You can also use any Replicate model by its full ID. FREE — no USDC cost.
Inputs: no named parameters. Returns: ok, data, error
spraay_gpu_runA
Run AI model inference on GPU via Replicate. Supports image generation (flux-pro, sdxl, ideogram), video generation (wan-video, minimax-video), LLMs (llama-70b, llama-8b, mixtral), audio (whisper transcription, musicgen), and utilities (esrgan upscaling, rembg background removal). Use shortcuts like 'flux-pro' or full model IDs like 'owner/model'. Returns output directly for fast models, or a poll URL for longer jobs. Costs $0.05 USDC.
Inputs: input (required), model (required), version, webhook. Returns: ok, data, error
spraay_gpu_statusARead-only
Check the status of a GPU prediction by ID. Use this to poll for results on longer-running jobs like video generation or large model inference. Returns output when complete. Costs $0.002 USDC.
Inputs: id (required). Returns: ok, data, error
spraay_invoice_createA
Create a payment invoice with a pre-encoded ERC-20 transfer transaction. Supports USDC, USDT, DAI, EURC, WETH on Base. Data persists in Supabase. Returns invoice ID, payment instructions, and unsigned tx. Costs $0.005 USDC.
Inputs: token (required), amount (required), creator (required), memo, +2 more. Returns: ok, data, error
spraay_invoice_getARead-only
Look up a specific invoice by ID. Returns full invoice details, on-chain balance check, and payment status. Data persists in Supabase. Costs $0.001 USDC.
Inputs: id (required). Returns: ok, data, error
spraay_invoice_listARead-only
List invoices by creator or payer address with optional status filter. Data persists in Supabase. Costs $0.002 USDC.
Inputs: address (required), status. Returns: ok, data, error
spraay_kyc_statusARead-only
Check KYC verification status by record ID or wallet address. Returns verification level, check results, and expiry. Data persists in Supabase. Costs $0.005 USDC.
Inputs: id, address. Returns: ok, data, error
spraay_kyc_verifyA
Initiate KYC/KYB verification for compliance-gated payments. Supports individual and business verification at basic, enhanced, or full levels. Data persists in Supabase. Costs $0.05 USDC.
Inputs: address (required), type, level. Returns: ok, data, error
spraay_logs_ingestA
Ingest structured logs for debugging and monitoring agent workflows. Accepts up to 100 entries per batch. Data persists in Supabase. Costs $0.001 USDC.
Inputs: entries (required). Returns: ok, data, error
spraay_logs_queryARead-only
Query structured logs by service, level, and time range. Returns matching log entries sorted newest first. Data persists in Supabase. Costs $0.003 USDC.
Inputs: level, limit, since, service. Returns: ok, data, error
spraay_modelsARead-only
List all 200+ AI models available on the Spraay x402 Gateway. Returns model IDs, providers, and context window sizes. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_notify_emailA
Send an email notification via AgentMail for payment confirmations, alerts, receipts, or general communication. Supports subject, CC, and reply-to. Costs $0.003 USDC.
Inputs: to (required), body (required), cc, replyTo, +1 more. Returns: ok, data, error
spraay_notify_smsA
Send an SMS notification for payment alerts (simulated — Twilio integration coming). Requires E.164 phone format. Costs $0.005 USDC.
Inputs: to (required), body (required). Returns: ok, data, error
spraay_notify_statusARead-only
Check delivery status of a previously sent email or SMS notification by notification ID. Costs $0.001 USDC.
Inputs: id (required). Returns: ok, data, error
spraay_oracle_fxARead-only
Get stablecoin exchange rates with depeg detection. Returns cross-rates between USDC, USDT, DAI, and EURC. Costs $0.002 USDC.
Inputs: base. Returns: ok, data, error
spraay_oracle_gasARead-only
Get current gas prices on Base in gwei. Returns base fee, priority fee, and estimated transaction costs. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_oracle_pricesARead-only
Get real-time on-chain token prices with confidence scores from Uniswap V3 QuoterV2 on Base. Returns USD prices for ETH, WETH, cbBTC, USDT, DAI, EURC, and more. Costs $0.003 USDC.
Inputs: tokens. Returns: ok, data, error
spraay_payroll_estimateA
Estimate gas and fees for a payroll batch before executing. Returns estimated gas in wei and USD. Costs $0.002 USDC.
Inputs: employeeCount (required), token. Returns: ok, data, error
spraay_payroll_executeA
Execute a payroll batch payment via Spraay V2 contract on Base. Pay up to 200 employees in a single transaction with any stablecoin. Returns unsigned transaction data. Costs $0.02 USDC.
Inputs: token (required), sender (required), employees (required). Returns: ok, data, error
spraay_payroll_tokensARead-only
List all stablecoins supported for payroll on Base. Returns symbols, addresses, and decimals. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_portfolio_nftsCRead-only
Portfolio NFTs. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: address (required), networks. Returns: ok, data, error
spraay_portfolio_tokensCRead-only
Portfolio tokens. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: address (required), networks. Returns: ok, data, error
spraay_pricesARead-only
Get live on-chain token prices on Base from Uniswap V3 pools. Returns USD prices with timestamps. Costs $0.002 USDC.
Inputs: token. Returns: ok, data, error
spraay_research_biomedical_by_pmidARead-only
Paper metadata by PubMed ID. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: pmid (required). Returns: ok, data, error
spraay_research_biomedical_searchARead-only
Search 36M+ biomedical papers in PubMed. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: q (required), max_results. Returns: ok, data, error
spraay_research_chemistry_bioactivityARead-only
Biological assay results for a PubChem compound. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: cid (required). Returns: ok, data, error
spraay_research_chemistry_compoundARead-only
PubChem compound by name, formula, or CID. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: cid, name, formula. Returns: ok, data, error
spraay_research_chemistry_similarityARead-only
Find structurally similar compounds in PubChem. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: cid (required), threshold, max_records. Returns: ok, data, error
spraay_research_demographics_censusARead-only
US Census data by state, county, or zip. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: geo, year, dataset, variables. Returns: ok, data, error
spraay_research_demographics_datasetsARead-only
Search Data.gov datasets by keyword. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: q (required), rows. Returns: ok, data, error
spraay_research_dictionary_defineARead-only
Dictionary definition with phonetics and examples. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: word (required), lang. Returns: ok, data, error
spraay_research_dictionary_phoneticsARead-only
Phonetic transcription and audio URL. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: word (required). Returns: ok, data, error
spraay_research_dictionary_synonymsARead-only
Synonyms and antonyms for a word. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: word (required). Returns: ok, data, error
spraay_research_papers_by_authorARead-only
Papers by author name or ORCID (OpenAlex). Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: page, orcid, author. Returns: ok, data, error
spraay_research_papers_by_doiARead-only
Paper metadata by DOI (OpenAlex). Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: doi (required). Returns: ok, data, error
spraay_research_papers_citationsARead-only
Citation graph - cited-by count and references. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: id, doi. Returns: ok, data, error
spraay_research_papers_searchCRead-only
Search 250M+ academic papers (OpenAlex CC0). Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: q (required), page, filter, per_page. Returns: ok, data, error
spraay_research_papers_trendingARead-only
Trending papers by topic in the last N days. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: days, topic, per_page. Returns: ok, data, error
spraay_research_preprints_by_idARead-only
arXiv preprint metadata by ID. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: id (required). Returns: ok, data, error
spraay_research_preprints_recentBRead-only
Latest arXiv preprints by category. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: category, max_results. Returns: ok, data, error
spraay_research_preprints_searchARead-only
Search arXiv preprints by keyword and category. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: q, category, max_results. Returns: ok, data, error
spraay_research_scholarly_by_doiARead-only
Full Crossref metadata for any DOI. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: doi (required). Returns: ok, data, error
spraay_research_scholarly_citations_countARead-only
Citation count and references for a DOI. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: doi (required). Returns: ok, data, error
spraay_research_scholarly_journal_infoARead-only
Journal metadata by ISSN. Costs $0.001 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: issn (required). Returns: ok, data, error
spraay_research_scholarly_searchBRead-only
Search 150M+ works via Crossref (CC0). Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: q (required), rows, offset. Returns: ok, data, error
spraay_resolveARead-only
Resolve ENS names (.eth) and Basenames (.base.eth) to wallet addresses, or perform reverse lookup from address to name. Costs $0.001 USDC.
Inputs: name (required). Returns: ok, data, error
spraay_robots_completeA
Report Task Complete (RTP). Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_robots_deregisterC
Remove Robot (RTP). Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_robots_listBRead-only
Discover robots. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: max_price, capability. Returns: ok, data, error
spraay_robots_profileBRead-only
Robot profile. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: robot_id (required). Returns: ok, data, error
spraay_robots_registerB
Register Robot (RTP). Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_robots_statusARead-only
Poll task status. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: task_id (required). Returns: ok, data, error
spraay_robots_taskA
Dispatch robot task (RTP). Costs $0.05 USDC per call. Provide the listed fields as typed arguments.
Inputs: task (required), robot_id (required), parameters. Returns: ok, data, error
spraay_robots_updateB
Update Robot (RTP). Free to call. Pass the request payload as a JSON string via the body argument.
Inputs: body (required). Returns: ok, data, error
spraay_rpc_callA
Make a premium multi-chain JSON-RPC call via Alchemy (EVM) or Helius (Solana). Supports Base, Ethereum, Arbitrum, Polygon, BNB Chain, Avalanche, and Solana. Costs $0.001 USDC.
Inputs: chain (required), method (required), params. Returns: ok, data, error
spraay_rpc_chainsARead-only
List all chains supported by the Spraay RPC proxy and their allowed JSON-RPC methods. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_sctp_invoiceB
Submit invoice. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: poId (required), amount (required), supplierId (required), currency. Returns: ok, data, error
spraay_sctp_invoice_by_idARead-only
Get invoice. Costs $0.005 USDC per call. Read-only. Provide the path parameter to fetch a single record.
Inputs: id (required). Returns: ok, data, error
spraay_sctp_invoice_verifyB
Verify invoice (AI). Costs $0.03 USDC per call. Provide the listed fields as typed arguments.
Inputs: invoiceId (required). Returns: ok, data, error
spraay_sctp_payA
Execute supplier payment. Costs $0.10 USDC per call. Provide the listed fields as typed arguments.
Inputs: invoiceId (required), batch. Returns: ok, data, error
spraay_sctp_poB
Create purchase order. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: lineItems (required), supplierId (required), currency. Returns: ok, data, error
spraay_sctp_po_by_idARead-only
Get purchase order. Costs $0.005 USDC per call. Read-only. Provide the path parameter to fetch a single record.
Inputs: id (required). Returns: ok, data, error
spraay_sctp_supplierB
Register supplier. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: name (required), wallet (required), paymentPrefs. Returns: ok, data, error
spraay_sctp_supplier_by_idARead-only
Get supplier. Costs $0.005 USDC per call. Read-only. Provide the path parameter to fetch a single record.
Inputs: id (required). Returns: ok, data, error
spraay_search_extractARead-only
Extract clean, structured content from specific URLs — perfect for RAG pipelines. Returns the full text content of each page, ready for LLM consumption. Up to 5 URLs per request. Costs $0.015 USDC.
Inputs: urls (required). Returns: ok, data, error
spraay_search_qnaARead-only
Ask a question and get a direct, synthesized answer with cited sources. Searches the web, extracts relevant content, and generates a comprehensive answer. Great for research and fact-checking. Costs $0.02 USDC.
Inputs: query (required), topic. Returns: ok, data, error
spraay_search_webARead-only
Search the web and get clean, LLM-ready results via Tavily. Returns extracted content (not just links), plus an AI-generated answer. Supports basic and advanced search depth, domain filtering, and topic focus (general, news, finance). Costs $0.01 USDC.
Inputs: query (required), topic, max_results, search_depth, +2 more. Returns: ok, data, error
spraay_solana_helius_assetBRead-only
Helius DAS single asset. Costs $0.002 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: id (required). Returns: ok, data, error
spraay_solana_helius_assets_by_ownerBRead-only
Helius DAS assets. Costs $0.003 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: owner (required), page, limit. Returns: ok, data, error
spraay_solana_jupiter_quoteCRead-only
Jupiter swap quote. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: amount (required), inputMint (required), outputMint (required), slippageBps. Returns: ok, data, error
spraay_solana_jupiter_swap_txB
Jupiter swap transaction. Costs $0.01 USDC per call. Provide the listed fields as typed arguments.
Inputs: quoteResponse (required), userPublicKey (required). Returns: ok, data, error
spraay_solana_pyth_priceBRead-only
Pyth price feed. Costs $0.005 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: feedId (required). Returns: ok, data, error
spraay_solana_pyth_pricesARead-only
Pyth batch prices. Costs $0.008 USDC per call. Read-only. Pass the listed fields directly as typed arguments.
Inputs: feedIds (required). Returns: ok, data, error
spraay_stellar_batchC
Stellar batch payments. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: amounts (required), recipients (required), sourceSecret (required). Returns: ok, data, error
spraay_stellar_estimateC
Stellar batch estimate. Costs $0.001 USDC per call. Provide the listed fields as typed arguments.
Inputs: recipientCount (required). Returns: ok, data, error
spraay_storage_getARead-only
Retrieve previously pinned content from IPFS/Arweave by CID. Returns the stored data. Costs $0.002 USDC.
Inputs: cid (required). Returns: ok, data, error
spraay_storage_pinA
Pin content to IPFS via Pinata for permanent decentralized storage. Returns CID (content identifier) for retrieval. Supports text, JSON, and base64 data. Costs $0.005 USDC.
Inputs: data (required), provider, contentType. Returns: ok, data, error
spraay_storage_statusARead-only
Check the pin status of a storage request by pin ID. Returns pinning progress and confirmation. Costs $0.001 USDC.
Inputs: id (required). Returns: ok, data, error
spraay_summarizeA
AI intelligence briefing for any wallet address or transaction hash. Returns structured risk assessment, entity classification, activity summary, and actionable insights. Costs $0.008 USDC.
Inputs: target (required), context. Returns: ok, data, error
spraay_swap_executeA
Execute a token swap via Uniswap V3 on Base. Returns unsigned transaction data for the caller to sign and broadcast. Get a quote first with spraay_swap_quote. Costs $0.01 USDC.
Inputs: tokenIn (required), amountIn (required), tokenOut (required), recipient (required), +1 more. Returns: ok, data, error
spraay_swap_quoteA
Get a swap quote from Uniswap V3 on Base. Returns expected output amount, price impact, and route details. Use spraay_swap_tokens to see available tokens. Costs $0.002 USDC.
Inputs: tokenIn (required), amountIn (required), tokenOut (required). Returns: ok, data, error
spraay_swap_tokensARead-only
List all tokens available for swapping on Spraay via Uniswap V3 on Base. Returns symbols, addresses, and decimals. Costs $0.001 USDC.
Inputs: no named parameters. Returns: ok, data, error
spraay_tax_calculateA
Calculate crypto tax gain/loss using FIFO method for up to 500 transactions. Returns per-event breakdown and aggregate summary with short/long-term classification. Data persists in Supabase. Costs $0.01 USDC.
Inputs: transactions (required). Returns: ok, data, error
spraay_tax_reportARead-only
Retrieve a previously calculated tax report by ID, or list all reports. Data persists in Supabase. Costs $0.02 USDC.
Inputs: reportId. Returns: ok, data, error
spraay_tokensCRead-only
Tokens. Free to call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
spraay_webhook_deleteADestructiveIdempotent
Delete a registered webhook by ID. Removes it permanently from Supabase. Costs $0.001 USDC.
Inputs: webhookId (required). Returns: ok, data, error
spraay_webhook_listARead-only
List all registered webhooks with their status, subscribed events, and delivery stats. Data persists in Supabase. Costs $0.001 USDC.
Inputs: status. Returns: ok, data, error
spraay_webhook_registerB
Register a webhook endpoint to receive real-time POST events for payments, escrows, swaps, invoices, and more. Returns webhook ID and HMAC secret for signature verification. Data persists in Supabase. Costs $0.003 USDC.
Inputs: url (required), events (required). Returns: ok, data, error
spraay_webhook_testA
Send a test ping event to a registered webhook to verify delivery and signature validation. Data persists in Supabase. Costs $0.002 USDC.
Inputs: webhookId (required). Returns: ok, data, error
spraay_xmtp_inboxARead-only
Read XMTP inbox messages for an Ethereum address. Returns decrypted messages from the production XMTP network. Costs $0.002 USDC.
Inputs: address (required), limit. Returns: ok, data, error
spraay_xmtp_sendA
Send an encrypted XMTP message to any Ethereum address on the XMTP production network. Messages are end-to-end encrypted. Costs $0.003 USDC.
Inputs: to (required), content (required), contentType. Returns: ok, data, error
spraay_xrp_batchC
XRP batch payments. Costs $0.02 USDC per call. Provide the listed fields as typed arguments.
Inputs: amounts (required), recipients (required), senderSecret (required). Returns: ok, data, error
spraay_xrp_estimateB
XRP batch estimate. Costs $0.001 USDC per call. Provide the listed fields as typed arguments.
Inputs: recipientCount (required). Returns: ok, data, error
spraay_xrp_infoCRead-only
XRP Ledger info. Costs $0.001 USDC per call. Read-only. Pass any query parameters as a JSON string via the params argument.
Inputs: params. Returns: ok, data, error
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 162 tools
Many tools have overlapping purposes, e.g., multiple tools for balances (spraay_balances, spraay_analytics_wallet, spraay_portfolio_tokens), AI inference (spraay_chat, spraay_gpu_run, spraay_compute_text_inference), and token prices (spraay_prices, spraay_oracle_prices). Agents would struggle to select the correct tool among these overlapping options.
All tools follow the consistent pattern 'spraay_{category}_{action}', with categories like agent, analytics, compute, research, etc. Subcategories use underscores (e.g., spraay_research_biomedical_search). Minor inconsistency: some action parts are nouns (e.g., spraay_free_chain_status) rather than verbs, but overall pattern is clear and predictable.
With 162 tools, this server is extremely bloated for a single MCP server. While the server covers many domains, a typical well-scoped server has 3-15 tools. This scale makes it unwieldy for agents to navigate and likely includes many rarely-used tools.
The server covers an impressively broad range of functionalities: blockchain (balances, swaps, escrow, bridge, payroll, tax), AI (chat, compute, image gen, research), utilities (storage, webhooks, notifications, RPC), and more. Minor gaps exist (e.g., no wallet withdrawal tool), but the surface is remarkably comprehensive for the stated domain.
Maintenance
Related MCP Connectors
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
Market data and web intelligence for AI agents, paid per call in USDC on Base via x402.
Pay-per-call Base and Polygon onchain data over x402 for AI agents.
34 pay-per-call AI and data tools over x402; USDC on Base; no API keys.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceConnects AI agents to 2,800+ APIs via x402 micropayments on Base, enabling automated API calls for $0.01 each without signup or API keys.58 npm2MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to access 25 pay-per-request intelligence APIs using USDC micropayments via the x402 protocol, without API keys or accounts.-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to discover, pay for, and invoke x402-priced services such as document OCR, document analysis, media transcription, remote browser sessions, and receive-only email inboxes using USDC on Base, with no API keys and receipt-backed results.38MIT

AgentBIT MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables AI agents to call 50+ pay-per-request tools covering onchain and crypto data, web research, security, compliance screening, business intelligence, and infrastructure checks. Payments settle per call in USDC on Base through the x402 protocol with no accounts, API keys, or subscriptions, and the first call is free for new wallets.MIT