venice-crypto-rpc
Use Venice as a pay-per-call JSON-RPC proxy to 27 EVM, Starknet, and Solana networks.
Skill by veniceai
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/veniceai-venice-crypto-rpc
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: finance
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/venice-crypto-rpc
What's inside
- Skill name
venice-crypto-rpc- Description
- Use Venice as a pay-per-call JSON-RPC proxy to 27 EVM, Starknet, and Solana networks. Covers the public GET /crypto/rpc/networks, POST /crypto/rpc/{network}, chain families and their explicit per-family method allowlists, the 1×/2×/4× method-tier pricing model (~$7e-7 per credit), the per-minute rate limit and per-user request serialization, idempotency keys for safe retries, single vs batch (≤100) requests, and the unsupported stateful/WebSocket methods (eth_subscribe, eth_newFilter, *Subscribe, etc.).
- License
- MIT
- Instructions
- 198 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
# Venice Crypto RPC (JSON-RPC proxy)
Venice exposes a **multi-chain JSON-RPC proxy** billed per call. Same request shape as Alchemy / Infura — change the base URL and pay per credit from your Venice balance (DIEM → earned credits → bundled credits → USD) or an x402 wallet.
| Endpoint | Auth | Notes |
|---|---|---|
| `GET /crypto/rpc/networks` | **None** (public) | Returns `{ "networks": [...] }`, sorted alphabetically. |
| `POST /crypto/rpc/{network}` | Bearer API key (`INFERENCE` or `ADMIN`) or `SIGN-IN-WITH-X` (x402 wallet) | Forward a JSON-RPC 2.0 request (single or batch). |
## Supported networks
```bash
curl https://api.venice.ai/api/v1/crypto/rpc/networks
```
It currently returns 27 slugs (always verify — the catalog grows):
```
arbitrum-mainnet arbitrum-sepolia
avalanche-mainnet avalanche-fuji
base-mainnet base-sepolia
blast-mainnet blast-sepolia
bsc-mainnet bsc-testnet
ethereum-mainnet ethereum-sepolia ethereum-holesky
linea-mainnet linea-sepolia
optimism-mainnet optimism-sepolia
polygon-mainnet polygon-amoy
robinhood-mainnet robinhood-testnet
solana-mainnet solana-devnet
starknet-mainnet starknet-sepolia
zksync-mainnet zksync-sepolia
```
Use the slug as `{network}` in the proxy path. An unknown slug is a `400`. The spec's example list for `/networks` omits `blast-mainnet` / `blast-sepolia`, but the live endpoint and proxy include them — trust `GET /crypto/rpc/networks`, and don't hardcode a client-side allowlist.
### Chain families
Each network speaks exactly one method family, and the allowlist is enforced per family. Sending an EVM method to a Solana network (or the reverse) is a `400`, not a pass-through.
| Family | Networks |
|---|---|
| `evm` | Everything except Starknet and Solana, including Robinhood Chain (an Arbitrum Orbit L2). |
| `starknet` | `starknet-mainnet`, `starknet-sepolia` |
| `solana` | `solana-mainnet`, `solana-devnet` |
The allowlists are **explicit method names**, not prefixes: a method in a supported namespace that isn't on the list (e.g. an unlisted `debug_*` or `trace_*` method) is rejected. The EVM list is shared by every EVM network, so a chain-specific method (`zks_*`, `linea_*`, `bor_*`) passes Venice's check on any EVM chain but only works upstream on its own chain.
## Send a JSON-RPC request
### Single call
```bash
curl -X POST https://api.venice.ai/api/v1/crypto/rpc/ethereum-mainnet \
-H "Authorization: Bearer $VENICE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
```
```json
{ "jsonrpc": "2.0", "id": 1, "result": "0x1" }
```
Each request object must have a string `method`; otherwise `400`.
### Batch (up to 100 calls)
```bash
curl -X POST https://api.venice.ai/api/v1/crypto/rpc/base-mainnet \
-H "Authorization: Bearer $VENICE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1},
{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":2}
]'
```
- An empty array or more than 100 items ⇒ `400`.
- A single unsupported method in a batch ⇒ the **entire batch** fails with `400`, and the message lists every offending method. (A WebSocket-only method fails the batch immediately with its own message naming just that method.)
- Give every item a unique `id`: billing pairs response items to requests by `id`.
### Drop-in with `viem`
```ts
import { createPublicClient, http } from 'viem'
import { mainnet } from 'viem/chains'
const client = createPublicClient({
chain: mainnet,
transport: http('https://api.venice.ai/api/v1/crypto/rpc/ethereum-mainnet', {
fetchOptions: { headers: { Authorization: `Bearer ${process.env.VENICE_API_KEY}` } },
}),
})
```
## Pricing
Credits per call = `baseCredits[chain] × methodTier`, at `$0.0000007` (7e-7) per credit.
| Base credits | Chains |
|---|---|
| `20` | Ethereum, Base, Optimism, Arbitrum, Polygon, Linea, Avalanche, BSC, Blast, Robinhood, Starknet (mainnets and testnets). |
| `30` | zkSync Era, Solana. |
| Tier | Multiplier | Methods |
|---|---|---|
| **Standard** | `1×` | EVM core (`eth_call`, `eth_getBalance`, `eth_blockNumber`, `eth_chainId`, `eth_getLogs`, `eth_estimateGas`, `eth_feeHistory`, `eth_getBlockReceipts`, `eth_getProof`, `eth_simulateV1`, `eth_sendRawTransaction`, …), `net_version` / `net_listening` / `net_peerCount`, `web3_clientVersion` / `web3_sha3`, ERC-4337 bundler (`eth_sendUserOperation`, `eth_estimateUserOperationGas`, `eth_getUserOperationByHash`, `eth_getUserOperationReceipt`, `eth_supportedEntryPoints`, `pimlico_getUserOperationGasPrice`, `pimlico_getUserOperationStatus`), chain extensions (`zks_*`, `linea_*`, `bor_*` — listed methods only), all listed `starknet_*` methods, and Solana methods (`getAccountInfo`, `getBalance`, `getLatestBlockhash`, `getProgramAccounts`, `sendTransaction`, `simulateTransaction`, …). |
| **Advanced** | `2×` | `trace_block`, `trace_call`, `trace_callMany`, `trace_filter`, `trace_transaction`, `trace_rawTransaction`, `debug_traceBlock`, `debug_traceBlockByHash`, `debug_traceBlockByNumber`, `debug_traceCall`, `debug_traceTransaction`, `debug_storageRangeAt`, `txpool_inspect`, `txpool_status`, `arbtrace_block` / `_call` / `_callMany` / `_filter` / `_transaction`. EVM only. |
| **Large** | `4×` | `trace_replayBlockTransactions`, `trace_replayTransaction`, `txpool_content`, `arbtrace_replayBlockTransactions`, `arbtrace_replayTransaction`, and Solana `getLargestAccounts` / `getSupply`. |
Examples:
- Standard EVM call (20 × 1 = 20 credits) = **$0.000014**
- Advanced trace on Ethereum (20 × 2) = **$0.000028**
- Large trace replay (20 × 4) = **$0.000056**
- zkSync or Solana standard call (30 × 1) = **$0.000021**
- Solana `getLargestAccounts` (30 × 4) = **$0.000084**
Error billing:From veniceai/skills, MIT.
More from veniceai/skills
- 0.785score
venice-text-routing
veniceai
Route a prompt to the right Venice text model based on privacy tier (anonymized / private / TEE / E2EE), modality (vision / audio / video input), capability…
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-api-overview
veniceai
High-level map of the Venice AI API - base URL, which auth mode each endpoint accepts (API key, x402 wallet, or none), endpoint categories (including…
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-music
veniceai
Async music, sound-effect and long-form voice generation via Venice.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-speech
veniceai
Generate speech from text via POST /audio/speech, and clone a voice via POST /audio/voices.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-transcription
veniceai
Transcribe audio files to text via POST /audio/transcriptions.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-voice-changer
veniceai
Async speech-to-speech voice conversion via Venice — re-record a source recording in a different voice while keeping delivery and timing.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-augment
veniceai
Venice augmentation endpoints for agent pipelines.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-auth
veniceai
Authenticate to the Venice API with a Bearer API key or with an x402 / SIWX wallet (EVM on Base, including EIP-1271 smart wallets, or Ed25519 on Solana).
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-billing
veniceai
Venice billing and usage analytics - GET /billing/balance, GET /billing/usage-history (keyset-paginated per-request ledger, JSON or CSV), and GET…
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-characters
veniceai
Discover and use Venice public characters (persona-driven system prompts with a suggested model).
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-chat
veniceai
Call POST /chat/completions on Venice.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-decisions
veniceai
Call Venice's Beta POST /decisions (and its TypeSafe-compatible alias POST /systemone) to get typed judgments instead of generated text.
SkillAFreshness: A★ 155Claude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 155
- Forks
- 26
- Open issues
- 1
- Last commit (this folder)
- Oct 2, 2026 (25 days ago)
- Last release
- Oct 5, 2026 (22 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/veniceai/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from veniceai
- 0.785score
venice-text-routing
veniceai
Route a prompt to the right Venice text model based on privacy tier (anonymized / private / TEE / E2EE), modality (vision / audio / video input), capability…
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-music
veniceai
Async music, sound-effect and long-form voice generation via Venice.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-speech
veniceai
Generate speech from text via POST /audio/speech, and clone a voice via POST /audio/voices.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-transcription
veniceai
Transcribe audio files to text via POST /audio/transcriptions.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-audio-voice-changer
veniceai
Async speech-to-speech voice conversion via Venice — re-record a source recording in a different voice while keeping delivery and timing.
SkillAFreshness: A★ 155Claude Code +9 - 0.784score
venice-api-overview
veniceai
High-level map of the Venice AI API - base URL, which auth mode each endpoint accepts (API key, x402 wallet, or none), endpoint categories (including…
SkillAFreshness: A★ 155Claude Code +9
Cite this page
venice-crypto-rpc skill. Agent Mart. https://agentmart.dev/skills/veniceai-venice-crypto-rpc (last updated 2026-10-24)