Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Quicknode blockchain infrastructure for 80+ chains: Core RPC API, Streams, Webhooks, Blazar WSS, Solana gRPC, HyperCore gRPC, SQL Explorer, Metaplex DAS API, Blockbook, Ordinals & Runes API, Swap API, x402, MPP, Agent Subscriptions, CLI, and MCP. Use for any Quicknode product, blockchain data access, or wallet-paid agent access.
.claude/skills/internet-court-quicknode-skill/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-17 | ✗→✓ | ▲ Improved | 671% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 530% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 429% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 468% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 505% | 0% |
QUICKNODE_RPC_URL, optional QUICKNODE_WSS_URL / QUICKNODE_API_KEY)?| Product | Description | Use Case | |---------|-------------|----------| | Core RPC API | High-performance blockchain access for 80+ chains | dApp backend, wallet interactions | | Dedicated Clusters | Dedicated private node clusters | High-throughput production, compliance isolation | | IPFS | Decentralized file storage | NFT metadata, asset hosting |
| Product | Description | Use Case | |---------|-------------|----------| | Streams | Real-time & historical blockchain data pipelines | Event monitoring, analytics, indexing | | Streams Backfills | On-demand historical data backfill into Streams | Gap recovery, historical re-indexing | | Webhooks | Event-driven notifications | Alerts, transaction monitoring | | Solana gRPC | Solana Geyser streaming — included on Scale/Business, add-on on Build/Accelerate | Real-time account, transaction, slot data | | Blazar WSS | Quicknode-built Solana WebSocket engine — all plans, free | Fast block, account, transaction, and slot subscriptions | | HyperCore gRPC | gRPC streaming for Hyperliquid L1 — included on all paid plans | Trades, order book diffs, events, blocks in real time |
| Product | Description | Use Case | |---------|-------------|----------| | SQL Explorer | Direct SQL access to indexed blockchain data | Trading analytics, historical queries, market analysis | | Agent Identity (ERC-8004) | On-chain agent discovery and reputation records | Agent identity, capability advertising | | Blockbook | Wallet-centric blockchain data via JSON-RPC | Address balances, UTXOs, transaction history | | Metaplex DAS API | Solana Digital Asset Standard — NFTs, cNFTs, fungible tokens, MPL Core | NFT/token queries, compressed NFTs, asset search | | Ordinals & Runes API | Bitcoin inscriptions and Runes protocol data | Inscription lookup, UTXO tracking, Runes balances |
| Product | Description | Use Case | |---------|-------------|----------| | Swap API | Multi-DEX aggregated token swaps | Solana (Jupiter/Metis), EVM (0x, OpenOcean, Aerodrome, Velodrome, Titan) |
| Product | Description | Use Case | |---------|-------------|----------| | Solana Priority Fee API | Recommended priority fees for Solana transactions | Fee estimation, transaction landing | | Jito Bundles | Solana bundle submission and status APIs | MEV-aware transaction delivery | | Single Flight RPC | Request de-duplication for identical in-flight RPC calls | High-concurrency read workloads | | Multi-region Transaction Broadcast | Transaction propagation across multiple regions | Latency-sensitive submission | | Scorechain Risk Assessment API | Wallet and transaction risk data | Compliance, fraud monitoring | | Block Timestamp Lookup | Timestamp-to-block lookup utilities | Time-window to block-range conversion | | Multi-chain Stablecoin Balance API | Stablecoin balances across supported chains | Treasury, payments, portfolio state | | Covalent GoldRush APIs | Multi-chain wallet and portfolio data | Wallet summaries, token/NFT holdings |
| Product | Description | Use Case | |---------|-------------|----------| | x402 | Testnet monthly cap plus mainnet pay-per-request via stablecoins | Keyless RPC access, AI agents, pay-as-you-go | | MPP | Testnet monthly cap plus mainnet pay-per-request via IETF Payment Authentication | AI agents, multi-service payments, high-volume sessions | | Agent Subscriptions | Wallet-paid Quicknode account creation, returns a QN_* full platform API key | Autonomous agents needing full platform access | | Quicknode CLI | qn CLI for endpoints, Streams, Webhooks, KV, and SQL from the terminal | Scripting, CI/CD, infrastructure automation | | Quicknode MCP | Native Claude/OpenAI connector plus generic MCP server — Admin API via MCP | Manage Quicknode from Claude, ChatGPT, Codex, Cursor, or any MCP-capable AI tool |
| Product | Description | Use Case | |---------|-------------|----------| | Admin API | REST API for account management | Endpoint CRUD, usage monitoring, billing | | Key-Value Store | Serverless key-value and list storage (beta) | Persistent state for Streams, dynamic address lists | | Quicknode SDK | Official SDK for Quicknode product APIs | Admin API, Streams, Webhooks, KV, SQL Explorer |
Quicknode provides low-latency RPC endpoints for 80+ blockchain networks.
qn rpc call (CLI) and qn.rpc.call (SDK) reach any supported network via Tooling Access — a single multichain, read-only endpoint Quicknode provisions automatically with short-lived JWTs. No endpoint setup required. See references/cli-reference.md / references/sdk-reference.md. Use a dedicated endpoint below for a fixed URL, non-read-only methods, or dedicated throughput.
typescript// EVM chains (ethers.js) import { JsonRpcProvider } from 'ethers'; const provider = new JsonRpcProvider(process.env.QUICKNODE_RPC_URL!); // EVM chains (viem) import { createPublicClient, http } from 'viem'; import { mainnet } from 'viem/chains'; const client = createPublicClient({ chain: mainnet, transport: http(process.env.QUICKNODE_RPC_URL!), }); // Solana import { createSolanaRpc } from '@solana/kit'; const rpc = createSolanaRpc(process.env.QUICKNODE_RPC_URL!);
Quicknode endpoints include authentication in the URL:
https://{ENDPOINT_NAME}.{NETWORK}.quiknode.pro/{API_KEY}/For additional security, enable JWT authentication or IP allowlisting in the Quicknode dashboard.
| Category | Networks | |----------|----------| | EVM | Ethereum, Polygon, Arbitrum, Optimism, Base, BSC, Avalanche, Fantom, zkSync, Scroll, Linea, Hyperliquid EVM (HyperEVM) | | Non-EVM | Solana, Bitcoin, NEAR, Stacks, Cosmos, Sei, Aptos, Sui, TON, Hyperliquid (HyperCore) |
Not exhaustive. Full list: https://www.quicknode.com/chains
As of 2026-02-02. Verify current limits in Quicknode docs before sizing a production system.
| Plan | Requests/sec | Credits/month | |------|-------------|---------------| | Free Trial | 15 | 10M | | Build | 50 | 80M | | Accelerate | 125 | 450M | | Scale | 250 | 950M | | Business | 500 | 2B |
See references/rpc-reference.md for complete RPC documentation including method tables for EVM, Solana, and Bitcoin chains, WebSocket patterns, and batch request examples.
Decentralized file storage with Quicknode's IPFS gateway.
See references/ipfs-reference.md for upload examples, metadata examples, and complete IPFS documentation.
Dedicated private node clusters for teams requiring deterministic throughput, regional pinning, or compliance isolation. Agents typically do not provision Dedicated Clusters directly — this is an infrastructure decision made by the account owner.
Marketing: https://www.quicknode.com/clusters Docs: https://www.quicknode.com/docs/custom-rpc-options
Real-time & historical blockchain data pipelines that filter, transform, and deliver data to your destinations.
| Type | Data | Use Case | |------|------|----------| | Block | Full block data | Block explorers, analytics | | Transaction | Transaction details | Tx monitoring, indexing | | Logs | Contract events | DeFi tracking, NFT sales, token transfers | | Receipt | Transaction receipts | Gas analysis, status tracking |
See references/streams-reference.md for filter examples and full Streams documentation.
On-demand historical data delivery into an existing Stream. Use Backfills to recover gaps, seed a new data store with history, or re-index a range of blocks without rebuilding your pipeline.
Docs: https://www.quicknode.com/docs/streams/backfilling
When asking an agent to trigger a Backfill, provide:
latest)See references/streams-backfills-reference.md for dataset selection, range planning, batching, compression, cost guidance, and automation notes.
Event-driven notifications for blockchain activity.
| Feature | Webhooks | Streams | |---------|----------|---------| | Setup | Simple | More configuration | | Filtering | Address/event-based | Custom JavaScript | | Destinations | HTTP endpoint only | Webhook, S3, Postgres, Azure | | Processing | Basic | Full transformation | | Use Case | Simple alerts | Complex pipelines |
See references/webhooks-reference.md for API examples and full Webhooks documentation.
High-performance Solana Geyser plugin for real-time blockchain data streaming via gRPC. Included on Scale and Business plans; available as a Marketplace add-on on Build and Accelerate plans.
typescriptimport Client, { CommitmentLevel } from "@triton-one/yellowstone-grpc"; // Derive from HTTP URL: https://example.solana-mainnet.quiknode.pro/TOKEN/ const client = new Client( "https://example.solana-mainnet.quiknode.pro:10000", "TOKEN", {} ); const stream = await client.subscribe(); stream.on("data", (data) => { if (data.transaction) console.log("Tx:", data.transaction); }); stream.write({ transactions: { txn_filter: { vote: false, failed: false, accountInclude: ["PROGRAM_PUBKEY"], accountExclude: [], accountRequired: [], }, }, accounts: {}, slots: {}, blocks: {}, blocksMeta: {}, transactionsStatus: {}, entry: {}, accountsDataSlice: [], commitment: CommitmentLevel.CONFIRMED, });
| Filter | Description | |--------|-------------| | accounts | Account data changes by pubkey, owner, or data pattern | | transactions | Transaction events with vote/failure/account filters | | transactionsStatus | Lightweight transaction status updates | | slots | Slot progression and status changes | | blocks | Full block data with optional tx/account inclusion | | blocksMeta | Block metadata without full contents | | entry | PoH entry updates |
See references/solana-grpc-reference.md for complete Solana gRPC documentation.
Quicknode-built Solana WebSocket engine. Every standard Solana subscription method (blockSubscribe, accountSubscribe, transactionSubscribe, logsSubscribe, and more) rebuilt for reliability and speed. Included free on all plans — no add-on required. Uses the same WSS endpoint URL (QUICKNODE_WSS_URL) as standard Solana RPC.
Docs: https://www.quicknode.com/docs/solana
typescriptconst ws = new WebSocket(process.env.QUICKNODE_WSS_URL!); ws.on('open', () => { ws.send(JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'blockSubscribe', params: ['all', { commitment: 'confirmed', encoding: 'jsonParsed' }] })); }); ws.on('message', (raw) => { const msg = JSON.parse(raw.toString()); if (msg.params?.result?.value?.block) { console.log('New block slot:', msg.params.result.context.slot); } });
blockSubscribe, accountSubscribe, logsSubscribe, programSubscribe, signatureSubscribe, slotSubscribe, slotsUpdatesSubscribe, transactionSubscribe, voteSubscribe
Quicknode's data delivery infrastructure for the Hyperliquid L1 chain. Provides gRPC, JSON-RPC, WebSocket, and Info API access. Currently in public beta. Included on all paid plans.
| Method | Path / Port | Use Case | |--------|-------------|----------| | Info API | /info (POST) | 50+ methods for market data, positions, orders | | JSON-RPC | /hypercore (POST) | Block queries (hl_getBlock, hl_getBatchBlocks) | | WebSocket | /hypercore/ws | Real-time subscriptions (hl_subscribe) | | gRPC | Port 10000 | Lowest-latency streaming for trades, orders, books |
| Stream | Volume | Description | |--------|--------|-------------| | TRADES | High | Execution data: coin, price, size, side, fees | | ORDERS | Very High | Order lifecycle with 18+ status types | | BOOK_UPDATES | Very High | L2 order book diffs | | TWAP | Low | Time-weighted average price order updates | | EVENTS | High | Ledger updates, funding, deposits, withdrawals | | BLOCKS | Extreme | Raw HyperCore blocks (gRPC only) | | WRITER_ACTIONS | Low | System-level token transfers |
| Path | Debug/Trace | Archive | Use Case | |------|-------------|---------|----------| | /evm | No | Partial | Standard EVM operations | | /nanoreth | Yes | Extended | Debug, trace, WebSocket subscriptions |
See references/hypercore-hyperliquid-reference.md for complete HyperCore and Hyperliquid documentation.
Direct SQL access to indexed blockchain data without requiring infrastructure. Query billions of rows of on-chain data using standard SQL syntax and receive results in seconds.
Docs: https://www.quicknode.com/docs/sql-explorer
bashcurl -X POST 'https://api.quicknode.com/sql/rest/v1/query' \ -H 'x-api-key: YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "query": "SELECT timestamp, coin, side, price, size FROM hyperliquid_trades WHERE block_time > now() - INTERVAL 1 HOUR ORDER BY block_number DESC LIMIT 10", "clusterId": "hyperliquid-core-mainnet" }'
Hyperliquid (HyperCore) - Tables covering trades, orders, fills, funding, order book diffs, perpetual markets, spot markets, blocks, transactions, system actions, builder activity, staking, ledger updates, and more.
See references/sql-explorer.md for complete table schemas, query examples, optimization tips, and API reference.
On-chain agent identity and reputation discovery based on the ERC-8004 standard. erc-8004.quicknode.com indexes registrations, feedback, validations, and reputation across supported EVM networks.
API Base: https://erc-8004.quicknode.com REST prefix: /v1
See references/agent-identity-reference.md for verified endpoints, x402 behavior, rate limits, and on-chain registration guidance.
Wallet-centric blockchain data via the Blockbook JSON-RPC add-on. Provides address balances, UTXO sets, and transaction history across supported chains — particularly useful for UTXO-based chains like Bitcoin where standard RPC methods lack wallet-level indexing.
Marketing: https://www.quicknode.com/blockbook Docs: https://www.quicknode.com/docs/bitcoin/blockbook/overview
Bitcoin (BTC), Ethereum (ETH), Bitcoin Cash (BCH), Dogecoin (DOGE), Litecoin (LTC), Zcash (ZEC) — each as its own add-on on your endpoint.
See references/blockbook-reference.md for methods and examples.
Comprehensive API for querying Solana digital assets — standard NFTs, compressed NFTs (cNFTs), fungible tokens, MPL Core Assets, and Token 2022 Assets. Available as the Metaplex Digital Asset Standard (DAS) API add-on on your Quicknode Solana endpoint. Formerly documented in this skill as "Solana DAS API".
Marketing: https://www.quicknode.com/metaplex-das-api Docs: https://www.quicknode.com/docs/solana/solana-das-api
javascript// Get all assets owned by a wallet const response = await fetch(process.env.QUICKNODE_RPC_URL, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'getAssetsByOwner', params: { ownerAddress: 'E645TckHQnDcavVv92Etc6xSWQaq8zzPtPRGBheviRAk', limit: 10, options: { showFungible: true, showCollectionMetadata: true } } }) }); const { result } = await response.json(); // result.total — total assets // result.items — array of asset metadata // result.cursor — for pagination
| Method | Description | |--------|-------------| | getAsset | Get metadata for a single asset | | getAssets | Get metadata for multiple assets | | getAssetProof | Get Merkle proof for a compressed asset | | getAssetProofs | Get Merkle proofs for multiple assets | | getAssetsByAuthority | List assets by authority | | getAssetsByCreator | List assets by creator | | getAssetsByGroup | List assets by group (e.g., collection) | | getAssetsByOwner | List assets by wallet owner | | getAssetSignatures | Transaction signatures for compressed assets | | getTokenAccounts | Token accounts by mint or owner | | getNftEditions | Edition details of a master NFT | | searchAssets | Search assets with flexible filters |
See references/metaplex-das-reference.md for complete DAS API documentation with all methods, parameters, and examples.
Bitcoin inscription and Runes protocol data via a Quicknode Marketplace add-on. Query inscription metadata, satoshi data, Rune details, and collection data through JSON-RPC and ORD-compatible REST on your Bitcoin endpoint. 21 methods available.
Marketing: https://www.quicknode.com/ordinals-runes Docs: https://www.quicknode.com/docs/bitcoin/ord_getInscription
See references/ordinals-runes-reference.md for supported methods and examples.
Endpoint add-ons for specialized capabilities that can be enabled on Quicknode endpoints. Use the add-on docs or dashboard-provided endpoint details for exact API shapes.
javascript// Get recommended priority fees const response = await rpc.request('qn_estimatePriorityFees', { last_n_blocks: 100, account: 'YOUR_ACCOUNT' }).send();
MEV-aware Solana bundle submission and status APIs for users who have enabled the Jito add-on.
Request de-duplication for identical in-flight RPC calls. Useful for high-concurrency applications where many workers or users request the same data at the same time.
Broadcast signed transactions through multiple regions to improve propagation for latency-sensitive transaction submission.
Wallet and transaction risk data for compliance, fraud monitoring, and risk-aware transaction workflows.
Timestamp-to-block lookup utilities for converting human time windows into block ranges.
Stablecoin balances across supported chains for treasury, payments, and portfolio workflows.
Multi-chain wallet and portfolio data, including balances, token holdings, NFT holdings, and transaction history where supported.
See references/marketplace-addons.md for current add-on guidance and product-specific reference links.
Multi-DEX aggregated token swaps via Quicknode Marketplace add-ons. Supports Metis/Jupiter, 0x, OpenOcean, Aerodrome, Velodrome, Titan Meta Aggregator, and Hyperliquid Exchange API. Each provider is enabled as a separate add-on or product surface on your endpoint/account.
Marketing: https://www.quicknode.com/swap-api
typescriptimport { createJupiterApiClient } from '@jup-ag/api'; const jupiterApi = createJupiterApiClient({ basePath: process.env.QUICKNODE_METIS_URL! }); const quote = await jupiterApi.quoteGet({ inputMint: 'So11111111111111111111111111111111111111112', // SOL outputMint: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', // USDC amount: 1_000_000_000, // 1 SOL in lamports slippageBps: 50 }); const swapResult = await jupiterApi.swapPost({ swapRequest: { quoteResponse: quote, userPublicKey: 'YourPubkey...' } }); // swapResult.swapTransaction — serialized tx ready for signing
Set QUICKNODE_METIS_URL to your Metis endpoint (e.g., https://jupiter-swap-api.quiknode.pro/YOUR_TOKEN). Enable the Metis Jupiter Swap API add-on in the Quicknode dashboard.
See references/swap-api-reference.md for provider positioning, verified examples, safety defaults, and troubleshooting.
Pay-per-request RPC access via stablecoin payments. No API key required. Three payment models: pay-per-request ($0.001/call), nanopayment (batched via Circle Gateway), and credit drawdown (SIWX auth, $10/1M mainnet credits). Testnet wallets share a monthly cap of 1,000,000 credits per wallet; mainnet wallets are uncapped. Supports USDC on Base/Polygon/Solana and USDG on XLayer. Access 140+ chain endpoints.
typescriptimport { createQuicknodeX402Client } from "@quicknode/x402"; const client = await createQuicknodeX402Client({ baseUrl: "https://x402.quicknode.com", network: "eip155:84532", // Base Sepolia payment network evmPrivateKey: process.env.PRIVATE_KEY as `0x${string}`, paymentModel: "pay-per-request", }); // Use like normal fetch — payment negotiation is handled automatically const response = await client.fetch("https://x402.quicknode.com/ethereum-mainnet", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ jsonrpc: "2.0", method: "eth_blockNumber", params: [], id: 1, }), });
See references/x402-reference.md for complete x402 documentation including SIWX authentication, credit management, and @quicknode/x402 setup.
Pay-per-request RPC access via IETF Payment Authentication headers. No API key required. Two intent types: charge ($0.001/request) and session ($0.00001/request via off-chain vouchers). Tempo testnet wallets share a monthly cap of 1,000,000 credits per wallet; mainnet wallets are uncapped. Payment via PathUSD or USDC.e on Tempo mainnet, PathUSD on Tempo testnet, or USDC on Solana. Access 140+ chain endpoints.
typescriptimport { Mppx, tempo } from 'mppx/client' import { privateKeyToAccount } from 'viem/accounts' const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`) // Polyfills globalThis.fetch — handles 402 challenges automatically Mppx.create({ methods: [tempo({ account })], }) // Charge intent ($0.001/req) — payment is transparent const response = await fetch('https://mpp.quicknode.com/tempo-mainnet', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'eth_blockNumber', params: [], }), }) const { result } = await response.json() console.log('Block number:', BigInt(result))
See references/mpp-reference.md for complete MPP documentation including charge vs session intents, Solana setup, CLI usage, and payment receipts.
Programmatic Quicknode account creation for autonomous agents. A single POST to /api/v1/agent/subscriptions with an x402 or MPP payment creates a paid account synchronously and returns a QN_* full platform API key, no dashboard signup or email confirmation required. The same payment SDKs used for x402 and MPP per-request RPC sign the subscription payment.
Docs: https://www.quicknode.com/docs/build-with-ai/agent-subscriptions
To fetch the live plan list, prices, accepted payment networks, asset contract addresses, and recipient (payTo) addresses, send the request without a payment header. The server returns HTTP 402 with the details in the body and a PAYMENT-REQUIRED header (base64-encoded x402 requirement).
bashcurl -X POST https://www.quicknode.com/api/v1/agent/subscriptions \ -H "Content-Type: application/json" \ -d '{}'
Parse the 402 body, pick a plan, then retry the request through the SDK.
typescriptimport { createQuicknodeX402Client } from '@quicknode/x402' const client = await createQuicknodeX402Client({ baseUrl: 'https://www.quicknode.com', network: 'eip155:8453', // Base Mainnet evmPrivateKey: process.env.PRIVATE_KEY as `0x${string}`, }) const res = await client.fetch( 'https://www.quicknode.com/api/v1/agent/subscriptions', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ plan_name: 'b6_build', // b6_build | b6_accelerate | b6_scale | b6_business interval: 'monthly', // monthly | yearly email: 'agent@example.com', password: process.env.ACCOUNT_PASSWORD, password_confirmation: process.env.ACCOUNT_PASSWORD, full_name: 'Autonomous Agent', name: 'Agent Account', billing_address: { line1: '123 Main St', city: 'New York', postal_code: '10001', country: 'US', }, }), }, ) const { api_key } = await res.json() // "QN_..." full platform API key
The returned api_key is the same QUICKNODE_API_KEY used everywhere else in this skill. Use it against https://api.quicknode.com/v0/... to provision endpoints, configure security, top up credits, read balances, and so on.
> Paying with Solana? Use @quicknode/x402-solana to sign x402 payments with a Solana keypair instead of an EVM private key. Once configured, the subscription request body and Admin API steps are identical to the x402 example above. See the How to Access Solana RPC with x402 guide for setup details.
typescriptimport { Mppx, tempo } from 'mppx/client' import { privateKeyToAccount } from 'viem/accounts' const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`) Mppx.create({ methods: [tempo({ account })] }) const subscriptionRes = await fetch( 'https://www.quicknode.com/api/v1/agent/subscriptions', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ plan_name: 'b6_build', // b6_build | b6_accelerate | b6_scale | b6_business interval: 'monthly', // monthly | yearly email: 'agent@example.com', password: process.env.ACCOUNT_PASSWORD, password_confirmation: process.env.ACCOUNT_PASSWORD, full_name: 'Autonomous Agent', name: 'Agent Account', billing_address: { line1: '123 Main St', city: 'New York', postal_code: '10001', country: 'US', }, }), }, ) const { api_key } = await subscriptionRes.json() // "QN_..." full platform API key
| Method | Path | Auth | Rate limit | Purpose | |--------|------|------|------------|---------| | POST | /api/v1/agent/subscriptions | Payment header (x402 or MPP) | 20/min, 5/hour by IP + email | Create account and subscription | | POST | /api/v1/agent/top_up | API key + payment header | 30/min by API key | Add credits to an existing subscription | | GET | /api/v1/agent/balance | API key | 60/min by API key | Read current credit balance |
All requests target https://www.quicknode.com.
b6_build, b6_accelerate, b6_scale, b6_business. Map directly to the public Build / Accelerate / Scale / Business plans on pricing. Use the discovery 402 above when the agent needs to choose a plan dynamically.
email and password instead of creating a duplicate account.See references/agent-subscriptions-reference.md for complete endpoint reference, top-up flow, and balance checks.
Command-line tool (qn) for managing Quicknode infrastructure from the terminal. Available on all paid plans.
bash# Homebrew brew install quicknode/tap/qn # Docker docker pull quiknode/qn-cli:latest
Use interactive login for local work, or pass the API key explicitly in non-interactive environments:
bashqn auth login qn auth login --api-key <KEY> qn auth whoami
Credential precedence is --api-key, then --config-file, then ~/.config/qn/config.toml. The CLI does not read API keys directly from environment variables.
bashqn agent context qn agent context -o json
bash# Endpoints qn endpoint list qn endpoint create --chain ethereum --network mainnet # RPC (Tooling Access) — no endpoint setup required qn tooling-access status qn tooling-access enable qn rpc call eth_getBlockByNumber '["latest", false]' --network base-mainnet # Account and chain metadata qn auth whoami --format json qn chain credits ethereum --format json # SQL Explorer qn sql query "SELECT COUNT(*) FROM hyperliquid_trades" --cluster-id hyperliquid-core-mainnet --format json qn sql schema hyperliquid-core-mainnet # Streams / Webhooks / KV qn stream list qn webhook list qn kv set get my-key
Use --format json for machine-readable output. Mutating commands prompt before acting; require explicit user confirmation before bypassing prompts in automation.
See references/cli-reference.md for complete CLI documentation.
Native Claude/OpenAI connector and generic MCP server that exposes Quicknode Admin API capabilities to AI assistants via the Model Context Protocol (MCP).
Claude Web/Desktop: Settings → Customize → Connectors → find Quicknode → Connect.
Claude Code:
bashclaude mcp add --transport http quicknode https://mcp.quicknode.com/mcp
Interactive setup uses OAuth: log in to Quicknode, select Viewer or Admin, and approve access. Use Viewer for read-only inspection and Admin only when the assistant needs to create, delete, or modify resources.
OpenAI (ChatGPT/Codex): Install Quicknode from the ChatGPT Apps catalog or via /plugin in Codex when available. Use the consolidated OpenAI tab on the Quicknode MCP docs page for current setup details.
The MCP server provides tools for endpoint management (list, create, delete, rate limits), security rules, usage monitoring, billing, and chain discovery. Agents and users can manage their Quicknode workspace conversationally without leaving their AI tool.
See references/mcp-reference.md for the complete tool surface and setup instructions.
Official SDK for Quicknode product APIs: Admin API, Streams, Webhooks, Key-Value Store, and SQL Explorer. The rpc client (Node 3.7.0+, other languages 0.7.0+) also makes JSON-RPC calls to any supported network via Tooling Access — no endpoint setup required. Chain-specific client libraries still apply for typed chain abstractions or a dedicated endpoint.
bashnpm install @quicknode/sdk
typescriptimport { QuicknodeSdk } from '@quicknode/sdk'; const qn = QuicknodeSdk.fromEnv(); const endpoints = await qn.admin.getEndpoints({ limit: 20, sortBy: 'created_at', sortDirection: 'desc', }); const account = await qn.admin.accountInfo(); const apiCredits = await qn.admin.getApiCredits('ethereum'); const trades = await qn.sql.query( 'SELECT * FROM hyperliquid_trades LIMIT 5', 'hyperliquid-core-mainnet' );
See references/sdk-reference.md for complete SDK documentation.
REST API for programmatic management of Quicknode endpoints, usage, rate limits, security, billing, and teams. Enables infrastructure-as-code workflows.
| Resource | Methods | Endpoint | |----------|---------|----------| | Chains | GET | /v0/chains | | Account Info | GET | /v0/account/info | | API Credits | GET | /v0/api-credits/{chain} | | Endpoints | GET, POST, PATCH, DELETE | /v0/endpoints | | Metrics | GET | /v0/endpoints/{id}/metrics | | Rate Limits | GET, POST, PUT | /v0/endpoints/{id}/method-rate-limits, /v0/endpoints/{id}/rate-limits | | Security | GET | /v0/endpoints/{id}/security_options | | Tooling Access | GET, PATCH, POST | /v0/tooling-access, /v0/tooling-access/token | | Usage | GET | /v0/usage/rpc, by-endpoint, by-method, by-chain | | Billing | GET | /v0/billing/invoices | | Teams | GET | /v0/teams |
All requests use the x-api-key header against https://api.quicknode.com/v0/.
typescriptconst QN_API_KEY = process.env.QUICKNODE_API_KEY!; const res = await fetch('https://api.quicknode.com/v0/endpoints', { headers: { 'x-api-key': QN_API_KEY }, }); const endpoints = await res.json();
See references/admin-api-reference.md for full Admin API documentation including endpoint CRUD, usage monitoring, rate limit configuration, security options, Tooling Access, billing, and teams.
Serverless storage for lists and key-value sets, primarily accessed from within Streams filter functions via the qnLib helper library. Also available via REST API.
List operations — manage lists of items (e.g., wallet addresses):
qnLib.qnUpsertList — create or update a listqnLib.qnAddListItem — add item to a listqnLib.qnRemoveListItem — remove item from a listqnLib.qnContainsListItems — batch membership checkqnLib.qnDeleteList — delete a listSet operations — manage key-value pairs:
qnLib.qnAddSet — create a key-value setqnLib.qnGetSet — retrieve value by keyqnLib.qnBulkSets — bulk create/remove setsqnLib.qnListAllSets — list all set keysqnLib.qnDeleteSet — delete a setSee references/kv-reference.md for REST API usage, size limits, and CLI (qn kv) commands.
The following Quicknode products are available but agents typically do not invoke them directly. They are provisioned by account owners through the dashboard or by a human operator.
typescriptimport { JsonRpcProvider } from 'ethers'; const ethereum = new JsonRpcProvider(process.env.QUICKNODE_ETH_RPC_URL!); const base = new JsonRpcProvider(process.env.QUICKNODE_BASE_RPC_URL!); const [ethBlock, baseBlock] = await Promise.all([ ethereum.getBlockNumber(), base.getBlockNumber(), ]);
/info) for account state and market metadataSELECT * FROM hyperliquid_trades WHERE block_time > ...GROUP BY for volume, counts, averagesWHERE block_time > ...)https://www.quicknode.com/docs/{chain-or-product}/llms.txt)| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-17 | fail→pass | 14,797 | 9,294 | -37% | 1 | 1 | 0% | 1,800 | 13,883 | +671% | 0 | 0 | — |
case-18 | fail→pass | 17,636 | 12,791 | -27% | 1 | 1 | 0% | 2,178 | 13,732 | +530% | 0 | 0 | — |
case-19 | fail→pass | 21,331 | 16,701 | -22% | 1 | 1 | 0% | 2,725 | 14,422 | +429% | 0 | 0 | — |
case-10 | fail→pass | 17,638 | 10,403 | -41% | 1 | 1 | 0% | 2,350 | 13,354 | +468% | 0 | 0 | — |
case-01 | fail→fail | 13,844 | 18,364 | +33% | 1 | 1 | 0% | 1,783 | 15,043 | +744% | 0 | 0 | — |
case-02 | fail→pass | 16,702 | 15,201 | -9% | 1 | 1 | 0% | 2,361 | 14,295 | +505% | 0 | 0 | — |
case-03 | pass→pass | 8,584 | 8,489 | -1% | 1 | 1 | 0% | 664 | 12,790 | +1826% | 0 | 0 | — |
case-04 | pass→pass | 9,879 | 10,171 | +3% | 1 | 1 | 0% | 995 | 13,301 | +1237% | 0 | 0 | — |
case-11 | fail→pass | 20,770 | 12,883 | -38% | 1 | 1 | 0% | 2,891 | 13,678 | +373% | 0 | 0 | — |
case-05 | pass→pass | 12,392 | 9,338 | -25% | 1 | 1 | 0% | 1,572 | 13,054 | +730% | 0 | 0 | — |
case-06 | fail→pass | 18,837 | 14,371 | -24% | 1 | 1 | 0% | 2,494 | 13,901 | +457% | 0 | 0 | — |
case-07 | fail→pass | 11,465 | 12,402 | +8% | 1 | 1 | 0% | 1,003 | 13,500 | +1246% | 0 | 0 | — |
case-08 | pass→pass | 14,451 | 11,148 | -23% | 1 | 1 | 0% | 1,903 | 13,551 | +612% | 0 | 0 | — |
case-09 | fail→pass | 19,051 | 9,351 | -51% | 1 | 1 | 0% | 2,507 | 13,063 | +421% | 0 | 0 | — |
case-12 | fail→pass | 12,828 | 8,985 | -30% | 1 | 1 | 0% | 1,420 | 12,990 | +815% | 0 | 0 | — |
case-13 | fail→pass | 18,628 | 9,194 | -51% | 1 | 1 | 0% | 2,720 | 12,975 | +377% | 0 | 0 | — |
case-14 | pass→pass | 15,796 | 11,779 | -25% | 1 | 1 | 0% | 1,972 | 13,422 | +581% | 0 | 0 | — |
case-15 | pass→pass | 14,266 | 12,417 | -13% | 1 | 1 | 0% | 1,819 | 13,880 | +663% | 0 | 0 | — |
case-16 | fail→pass | 14,268 | 11,647 | -18% | 1 | 1 | 0% | 2,438 | 13,483 | +453% | 0 | 0 | — |
case-20 | fail→fail | 16,388 | 9,722 | -41% | 1 | 1 | 0% | 2,084 | 13,100 | +529% | 0 | 0 | — |
case-21 | fail→pass | 5,909 | 8,757 | +48% | 1 | 1 | 0% | 1,077 | 12,910 | +1099% | 0 | 0 | — |
case-22 | fail→pass | 17,626 | 6,994 | -60% | 1 | 1 | 0% | 1,930 | 12,546 | +550% | 0 | 0 | — |
case-23 | fail→pass | 12,978 | 6,892 | -47% | 1 | 1 | 0% | 1,371 | 12,470 | +810% | 0 | 0 | — |
case-24 | fail→pass | 14,437 | 12,645 | -12% | 1 | 1 | 0% | 1,834 | 13,724 | +648% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 24 cases were attempted. The headline lift of +67 percentage points is the difference between those two pass rates over the 24 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.