BlockRun MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SOLANA_WALLET_KEY | No | Environment variable override for Solana private key. If set, switches to Solana chain. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| blockrun_walletA | Call this tool to manage the BlockRun payment wallet and control agent spending budgets. Call this FIRST if any other blockrun_* tool returns a payment/balance error. Call this to check your current USDC balance before expensive operations. Call this to set spending limits before spawning child agents. If this server is running on a BlockRun API key (BLOCKRUN_API_KEY), there is no wallet and no chain: status reports the account, and setup/qr/deposit/chain do not apply. Credit is managed at https://user.blockrun.ai/dashboard/credits. In wallet mode the server holds TWO wallets — one on Solana, one on Base — but pays on ONE active chain at a time. status shows both addresses/balances and which is active. New installs default to Solana; an existing Base wallet keeps Base until you switch. To switch chain (no env vars, no file editing, no restart):
Actions:
Budget controls:
Multi-agent orchestration:
Usage pattern for multi-agent systems:
Do NOT call this for actual AI queries — use blockrun_chat for that. |
| blockrun_chatA | Get a second opinion from another AI model, or use a specialized model for a specific task. Notable modes:
Pick directly: model:"anthropic/claude-opus-5", model:"moonshot/kimi-k3", model:"openai/gpt-5.6-sol", model:"xai/grok-4.5", model:"nvidia/gpt-oss-120b" (free). Run blockrun_models to see all available models with pricing. |
| blockrun_modelsA | List available AI models with pricing. Use to discover models and compare costs. |
| blockrun_imageA | Generate or edit images via BlockRun. Pays with USDC on the ACTIVE chain — Base or Solana (see blockrun_wallet) — no separate API keys needed. Actions:
Generation models (1024x1024 base price; larger sizes cost more on gpt-image-*):
Edit (img2img) models: openai/gpt-image-2 (default), openai/gpt-image-1, google/nano-banana, google/nano-banana-2, google/nano-banana-pro Multi-image edit: pass an array of 2–4 source images to "image" to fuse them in one render (openai/* up to 4, google/* up to 3) — e.g. a subject plus a sprite layout guide, or a reference plus a brand logo. Source images and masks accept a base64 data URI, an http(s) URL, or a local file path (auto-encoded). Inpaint mask (openai/gpt-image-* only) via "mask"; not combinable with multiple source images. |
| blockrun_musicA | Generate music tracks via BlockRun x402 (async, client-polled). Generates a full-length ~3 minute MP3 track. Takes 1-3 minutes to complete. The tool submits the job and, for slower tracks, polls until it is ready. On the Base wallet payment settles only when a finished track is returned — if the job fails you are not charged; if this client gives up while a paid request is still in flight the gateway may still settle, and the error text says so. On Solana and on the account rail the job is billed when the gateway ACCEPTS it, so a job that later fails or outlives the poll budget is still charged — the error text says so and names the job, which stays claimable for ~48h. Model: minimax/music-2.5+ ($0.1575/track, up to ~4 min) Returns a permanent BlockRun-hosted URL. |
| blockrun_speechA | AI voice via BlockRun x402 — speak text aloud (ElevenLabs or ByteDance Seed Audio), generate sound effects, list voices. Actions:
Models (speak): elevenlabs/flash-v2.5 ($0.05/1k chars, Voice aliases (ElevenLabs models only): sarah (default), george, laura, charlie, river, roger, callum, harry — or any raw ElevenLabs voice_id. Returns a hosted audio URL — download immediately if you need to keep the file. |
| blockrun_videoA | Generate short AI videos via BlockRun x402 on the active Base or Solana chain (async, client-polled). Turns a text prompt (and optional seed image) into a short MP4 clip. The tool submits the job, then polls until the video is ready (typical total wall-time 60-180s; 9 min Base / 15 min Solana hard cap). On the wallet rails payment settles only when upstream returns a finished video — if the job fails you are not charged; if this client gives up while a paid poll is still in flight the gateway may still settle, and the error text says so. On the account rail the job is billed when the gateway accepts it, so a job that fails or outlives the poll budget is still charged — the error names it. Models. Every rate below is what you are CHARGED (margin and transaction fee included), at the 720p baseline Seedance renders by default with synced audio:
Image-to-video is NOT cheaper than text-to-video on Seedance — same per-second rate. Higher resolutions ARE more expensive (token-priced: 1080p ~2.25x, 4K ~9x the 720p rate); the 402 quote is authoritative and is what gets charged. RealFace: to generate video of a SPECIFIC real person, first enroll them with blockrun_realface (returns a ta_xxxx asset id), then pass real_face_asset_id here with seedance-2.0, seedance-2.0-fast, or seedance-2.0-mini. Mutually exclusive with image_url. Returns a permanent blockrun-hosted MP4 URL (the gateway mirrors the asset to GCS so URLs don't expire). |
| blockrun_realfaceA | Enroll a real person's face as a BytePlus RealFace asset, then drive Seedance 2.0 video with it (blockrun_video real_face_asset_id). A RealFace asset (ta_xxxx) lets Seedance 2.0 / 2.0-fast / 2.0-mini generate video of a SPECIFIC real person — not a generic seed image. Only those three models: seedance-2.5 is numerically newer but does NOT accept ta_ assets, and seedance-1.5-pro never did. Enrollment is a multi-step flow because BytePlus requires a live phone liveness check (the real person nods + blinks on camera) before a face photo can be uploaded. Actions:
Typical flow:
Privacy: BlockRun does not store face/liveness data — only the asset id, name, and the photo URL you supply. |
| blockrun_searchA | Grok Live Search — real-time web + news with AI-summarized results and citations. PRICED PER SOURCE and expensive by default: $0.025 × max_results, +5% gateway buffer — default max_results=10 settles ~$0.26 (max_results=50 → Common shape:
Full request shape + worked examples in the |
| blockrun_exaA | Neural web search via Exa — understands meaning, not just keywords. Great for research. Common paths (all POST, body shapes documented in the exa-research skill):
Categories for search: "news", "research paper", "company", "tweet", "github", "pdf". Full request/response shapes + worked research workflows in the |
| blockrun_marketsA | Prediction market + derivatives data via Predexon aggregator. Flat $0.0075 base per call (every endpoint) plus the gateway's network fee — $0.001 on Base today, none quoted on Solana; the 402 header carries the exact charge (we reserve $0.0095). POLYMARKET (Tier 1):
POLYMARKET (Tier 2 — wallet/smart-money analytics):
WALLET IDENTITY & CLUSTERING (Tier 2) — cross-context labels + on-chain relationship graph:
SPORTS — sports/* (categories, markets, markets/:game_id, outcomes/:predexon_id) DEGRADED, do not call: Predexon 500 on every call since 2026-08-04; the gateway releases the payment on that upstream 500. Use markets/search { q: "NBA" } or polymarket/events { search: "NBA" } instead — no live route takes a "league" param. KALSHI: kalshi/markets, kalshi/trades, kalshi/orderbooks LIMITLESS / OPINION / PREDICT.FUN: {platform}/markets, {platform}/orderbooks BINANCE FUTURES: binance/candles/:symbol, binance/ticks/:symbol CROSS-PLATFORM:
REQUEST CONTRACTS:
Pass query params via 'params' (GET) — a '?' in 'path' is refused before payment, because path-carried values bypass the pre-payment checks above. Use 'body' only for POST endpoints (e.g. polymarket/wallet/identities). |
| blockrun_priceA | Realtime quotes and OHLC history for crypto, FX and commodities (Pyth-backed), plus the ticker catalog for 12 stock markets.
Pricing:
Stocks markets: us, hk, jp, kr, gb, de, fr, nl, ie, lu, cn, ca (required when category="stocks"). Examples:
|
| blockrun_dexA | Get real-time DEX data from DexScreener. FREE - no payment required. Use for:
Examples: blockrun_dex({ query: "SOL" }) -> Search for SOL pairs blockrun_dex({ token: "So11...xxx" }) -> Get specific token data blockrun_dex({ symbol: "PEPE" }) -> Search by symbol |
| blockrun_modalA | Run isolated code in a BlockRun-hosted Modal sandbox — disposable remote container, optional GPU. Use when you need: a clean ephemeral environment, GPU access (T4/L4/A10G/A100/H100 — those five only), or a safer place for untrusted code. Prefer local tools for normal repo work. ⚠️
Common paths (all POST):
Full pricing tables + GPU details in the |
| blockrun_phoneA | Phone-number intelligence, US/CA number provisioning, and outbound AI voice calls. Common paths (path = everything after /v1/):
REQUIRED for voice/call: Voice presets: nat, josh, maya, june, paige, derek, florian. Phone numbers use E.164 format (e.g. +1 followed by 10 US digits, or +). Voice call flow + voice preset details + full body shapes in the |
| blockrun_rpcA | Raw JSON-RPC against 40+ blockchains — one endpoint, no node, no API key. $0.002 base per call plus the gateway's flat tx fee ($0.001 today; we reserve $0.002, so budget/confirm show $0.004 per single call). A JSON-RPC batch charges $0.002 per element plus ONE fee — batch when you can. Use when you need data the higher-level tools don't cover: contract reads (eth_call), balances, blocks, txs, logs, gas, or any chain-native RPC method. Networks (full catalog in the rpc skill): ethereum, base, arbitrum, optimism, polygon, bsc, avalanche, solana, bitcoin, sui, near, ripple, polkadot, dogecoin, litecoin, monad, berachain, unichain, hyperevm, sonic, and 20+ more. Examples: blockrun_rpc({ network: "ethereum", method: "eth_blockNumber" }) blockrun_rpc({ network: "base", method: "eth_getBalance", params: ["0xabc...", "latest"] }) blockrun_rpc({ network: "solana", method: "getSlot" }) blockrun_rpc({ network: "bitcoin", method: "getblockchaininfo" }) blockrun_rpc({ network: "ethereum", body: [{jsonrpc:"2.0",id:1,method:"eth_blockNumber"},{...}] }) // batch Prefer blockrun_price (free quotes) or blockrun_dex (free DEX data) when they cover the question — this tool is for raw chain access. |
| blockrun_defiA | DeFi fundamentals via DefiLlama — protocol TVL, chain TVL, yield pools (APY), token prices. Pays per call in USDC, no API key. Paths (GET only; price = base + the gateway's flat tx fee, $0.001 today — we reserve $0.002; the 402 header carries the exact charge):
Examples: blockrun_defi({ path: "protocol/uniswap-v3" }) blockrun_defi({ path: "prices/coingecko:bitcoin,coingecko:ethereum" }) blockrun_defi({ path: "chains" }) Use blockrun_price (free) for plain spot quotes, blockrun_dex (free) for DEX pairs — this tool is for protocol/TVL/yield fundamentals. |
| blockrun_polymarket_readA | Read or preview Polymarket state without signing or changing anything. Actions:
Use blockrun_polymarket only for setup and funds-affecting operations: confirmed buy/sell, cancel, redeem, fund, or withdraw. |
| blockrun_polymarketA | Trade on Polymarket prediction markets (CLOB V2, Polygon). REAL MONEY — orders spend pUSD held in your Polymarket deposit wallet, signed locally by your BlockRun key. Free tool (no BlockRun API charge); discover markets/prices/token IDs with blockrun_markets first. Run action:"setup" FIRST (and again after funding). It creates a gasless deposit wallet owned by your key, checks pUSD balance + exchange approvals, and prints funding instructions. Zero config — no Polymarket account or API keys; setup bootstraps its credentials from your wallet key. Actions:
Prices are probabilities 0–1 on the market's tick grid. token_id comes from blockrun_markets Polymarket data. Geoblock is handled by default (CLOB traffic routes through BlockRun's Finland egress) — setup reports your region status. Complying with Polymarket's terms for the user's jurisdiction is the user's responsibility. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| wallet | Wallet address and status |
| models | Available AI models with pricing |
| app-order-preview | Polymarket order-preview card (MCP App) for blockrun_polymarket_read |
| app-wallet | Wallet balance / top-up panel (MCP App) for blockrun_wallet |
TDQS
Scored across 19 tools
Some overlap exists but descriptions help. Two web search tools (blockrun_search, blockrun_exa) and multiple crypto/data tools (blockrun_price, blockrun_dex, blockrun_defi, blockrun_markets, blockrun_rpc) cover similar ground, and Polymarket positions/state can be read via blockrun_markets, blockrun_polymarket, and blockrun_polymarket_read. The descriptions draw boundaries, but an agent could easily misselect for a generic query.
All 19 tools consistently use the blockrun_<domain> pattern with snake_case, and the read-only Polymarket tool is clearly marked with a _read suffix. There are no mixed conventions, vague generic verbs, or inconsistent casing.
19 tools is on the heavy side of the ideal range, but each maps to a distinct service line of a broad all-in-one paid AI/crypto platform. The count is defensible, though some consolidation of search or Polymarket readers would tighten it.
The surface covers generative media (video, image, music, speech), chat, two search engines, market and chain data, wallet/budgeting, real-money Polymarket trading, phone services, and sandboxed code execution. Minor gaps like wallet withdrawal or speech transcription are not promised, so coverage feels strong for the stated scope.