RPC blockchain et MCP de documentation pour les frameworks d'agents

Configurez le RPC blockchain pour ElizaOS, viem, wagmi et Coinbase AgentKit, et découvrez les fonctionnalités via le MCP de documentation.

Configurez le RPC blockchain dans ElizaOS, viem, wagmi ou Coinbase AgentKit à l'aide des recettes ci-dessous. Les développeurs et les agents IA peuvent d'abord utiliser le MCP de documentation pour découvrir les méthodes et la documentation, puis suivre le flux d'inscription HTTP distinct pour créer une clé API. Utilisez cette clé dans les requêtes RPC et Data API ou dans l'en-tête x-api-key du client MCP pour les outils avec clé ; l'accès RPC sans clé est limité aux public.methods de chaque chaîne.

ElizaOS

Dans elizaOS, les interactions EVM sont prises en charge par le plugin @elizaos/plugin-evm. Le plugin lit les points de terminaison des fournisseurs RPC à partir de variables d'environnement nommées selon le modèle ETHEREUM_PROVIDER_<NETWORK>, ou la variable de secours EVM_PROVIDER_URL.

Configurez votre fichier .env avec la clé privée de votre portefeuille et vos points de terminaison RPC :

# EVM wallet private key for signing transactions
export EVM_PRIVATE_KEY=0x...

# Dedicated endpoints with API key
export ETHEREUM_PROVIDER_ETHEREUM=https://api.blockvectra.com/v1/eth_mainnet/${BLOCKVECTRA_API_KEY}
export ETHEREUM_PROVIDER_BASE=https://api.blockvectra.com/v1/base_mainnet/${BLOCKVECTRA_API_KEY}

# Keyless public RPC endpoint
# export ETHEREUM_PROVIDER_ETHEREUM=https://api.blockvectra.com/v1/eth_mainnet/public

Incluez @elizaos/plugin-evm dans la configuration de personnage de votre agent :

{
  "name": "DeFiAgent",
  "plugins": ["@elizaos/plugin-evm"]
}

viem

Dans viem, configurez les transports clients à l'aide de http() ou webSocket().

Transport HTTP avec clé API

import { createPublicClient, http } from "viem";
import { mainnet } from "viem/chains";

export const client = createPublicClient({
  chain: mainnet,
  transport: http(`https://api.blockvectra.com/v1/eth_mainnet/${process.env.BLOCKVECTRA_API_KEY}`),
});

Transport HTTP avec point de terminaison public sans clé

Pour les requêtes de lecture sur les méthodes publiques autorisées sans clé API :

import { createPublicClient, http } from "viem";
import { mainnet } from "viem/chains";

export const publicClient = createPublicClient({
  chain: mainnet,
  transport: http("https://api.blockvectra.com/v1/eth_mainnet/public"),
});

Transport WebSocket

Le transport WebSocket (webSocket(...)) est pris en charge sur les chaînes avec ws: true dans GET /v1/chains, comme sur Robinhood Chain (robinhood_mainnet) :

import { createPublicClient, webSocket } from "viem";

export const wsClient = createPublicClient({
  transport: webSocket(`wss://api.blockvectra.com/v1/robinhood_mainnet/${process.env.BLOCKVECTRA_API_KEY}`),
});

Pour connaître les paramètres de connexion et les types d'abonnement, consultez le guide des abonnements WebSocket.

wagmi

Dans wagmi, transmettez l'URL du RPC BlockVectra à la table transports dans createConfig.

Configuration avec clé API

import { createConfig, http } from "wagmi";
import { mainnet } from "wagmi/chains";

export const config = createConfig({
  chains: [mainnet],
  transports: {
    [mainnet.id]: http(`https://api.blockvectra.com/v1/eth_mainnet/${process.env.BLOCKVECTRA_API_KEY}`),
  },
});

Configuration avec point de terminaison public sans clé

import { createConfig, http } from "wagmi";
import { mainnet } from "wagmi/chains";

export const config = createConfig({
  chains: [mainnet],
  transports: {
    [mainnet.id]: http("https://api.blockvectra.com/v1/eth_mainnet/public"),
  },
});

Coinbase AgentKit

Coinbase AgentKit utilise des fournisseurs de portefeuille pour exécuter des actions on-chain. En TypeScript, le ViemWalletProvider de @coinbase/agentkit encapsule un WalletClient viem standard, vous permettant d'acheminer l'exécution des transactions et les requêtes RPC via les points de terminaison BlockVectra.

Configuration avec ViemWalletProvider

import { AgentKit, ViemWalletProvider } from "@coinbase/agentkit";
import { createWalletClient, http } from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { mainnet } from "viem/chains";

const account = privateKeyToAccount(process.env.WALLET_PRIVATE_KEY as `0x${string}`);

const client = createWalletClient({
  account,
  chain: mainnet,
  transport: http(`https://api.blockvectra.com/v1/eth_mainnet/${process.env.BLOCKVECTRA_API_KEY}`),
});

const walletProvider = new ViemWalletProvider(client);

export const agentKit = await AgentKit.from({
  walletProvider,
});

Pour les opérations de lecture sur les méthodes autorisées, configurez http("https://api.blockvectra.com/v1/eth_mainnet/public").

MCP distant

Si votre agent se connecte via le Model Context Protocol (Streamable HTTP MCP), connectez-vous au point de terminaison du serveur MCP BlockVectra :

https://docs.blockvectra.com/mcp

Pour les instructions de configuration client sur Claude Code, Cursor, VS Code, Codex, Gemini CLI, OpenAI Responses API et Windsurf, consultez Connexion depuis les clients MCP dans le guide des agents IA.

Prochaines étapes

Dernière mise à jour :

Sur cette page