Блокчейн RPC в агентах Coinbase AgentKit с BlockVectra
Направьте чтения и транзакции агента Coinbase AgentKit через BlockVectra, передав ViemWalletProvider клиент viem с публичным эндпоинтом без ключа, затем добавьте API key и инструменты MCP.
Coinbase AgentKit отправляет ончейн-действия через провайдер кошелька, а ViemWalletProvider принимает любой WalletClient из viem. Укажите этому клиенту https://api.blockvectra.com/v1/base_mainnet/public в качестве транспорта, и RPC-трафик AgentKit пойдет через BlockVectra без API key. Ключ открывает остальные методы; Free Plan дает 30,000,000 CU за каждое окно в 30 дн. Проверено .
import { AgentKit, ViemWalletProvider } from "@coinbase/agentkit";
import { getLangChainTools } from "@coinbase/agentkit-langchain";
import { createWalletClient, http } from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { base } from "viem/chains";
const client = createWalletClient({
account: privateKeyToAccount(process.env.WALLET_PRIVATE_KEY as `0x${string}`),
chain: base,
transport: http("https://api.blockvectra.com/v1/base_mainnet/public"),
});
const agentKit = await AgentKit.from({ walletProvider: new ViemWalletProvider(client) });
const tools = await getLangChainTools(agentKit);Установите зависимости командой npm install @coinbase/agentkit @coinbase/agentkit-langchain viem. tools — это список, который интеграция AgentKit с LangChain передает в createAgent({ model, tools }); ключ кошелька остается в вашем окружении.
Использование API key
Публичный эндпоинт обслуживает только методы из public.methods каждой сети. Для остальных передавайте ключ в заголовке x-api-key и храните его в окружении, чтобы он не попадал в URL:
const transport = http("https://api.blockvectra.com/v1/base_mainnet", {
fetchOptions: { headers: { "x-api-key": process.env.BLOCKVECTRA_API_KEY! } },
});Если клиент не умеет задавать заголовки, ключ можно передать в пути URL (/v1/{chain}/{api_key}); URL могут попадать в журналы доступа, поэтому лучше использовать заголовок.
Создайте ключ без браузера по четырем шагам из руководства по программной регистрации: challenge, подпись, login, затем POST /keys. Разработчики также могут создать ключ в консоли. Один ключ работает во всех сетях, поэтому при переключении агента на другую сеть меняются только идентификатор сети и объект сети viem.
Совмещение действий AgentKit с MCP-сервером документации
Пакет AgentKit для TypeScript предоставляет свои действия как инструменты LangChain, поэтому инструменты MCP из адаптера LangChain попадают в тот же массив tools. Следуйте руководству по LangChain, чтобы загрузить https://docs.blockvectra.com/mcp, затем объедините списки:
const agent = createAgent({ model: "claude-sonnet-5", tools: [...tools, ...(await adapter.listTools())] });Агент получает действия кошелька AgentKit и инструменты BlockVectra list_chains, get_status, rpc_call и read_doc, перечисленные на странице MCP-сервера. Для подключения ключ не нужен.
Ошибки, которые вы можете увидеть
| Ответ | Значение | Что делать |
|---|---|---|
HTTP 401, -32024, missing_api_key | Запрос, требующий ключ, отправлен без ключа | Передайте ключ в заголовке x-api-key (или в пути URL) |
HTTP 401, -32024, invalid_api_key | Ключ неизвестен, отключен или отозван | Проверьте ключ в консоли; новый ключ активируется за несколько секунд |
-32601, method_not_public | Метода нет в public.methods сети | Замените в транспорте /public на URL с ключом |
Каждая ошибка BlockVectra содержит data.reason и docs_url; полный список приведен на странице ошибок.
Официальная документация
Частые вопросы
Видит ли BlockVectra приватный ключ кошелька? Нет. Аккаунт viem подписывает локально; эндпоинт получает чтения и подписанные сырые транзакции.
Может ли агент читать логи через публичный эндпоинт? Нет. Для eth_getLogs и Data API нужен API key.
Передается ли ключ в аргументах инструмента MCP? Нет. Храните его в окружении или в заголовках MCP-клиента.
Дальнейшие шаги
- Обзор фреймворков для агентов: LangChain, ElizaOS, viem и wagmi.
- Подключение ИИ-агента: поиск эндпоинтов через MCP, llms.txt и OpenAPI.
- Правила тарификации: учет CU, лимиты запросов и ошибки, которые не тарифицируются.
Последнее обновление:
Выбор RPC-провайдера
Оценивайте стоимость методов RPC, диапазоны логов, бесплатные кредиты, лимиты скорости, покрытие сетей, Push и Data API, аутентификацию и доступ для агентов с помощью тестов нагрузки.
Развертывание контракта
Разверните Hello.sol в EVM-сети с помощью Foundry или Hardhat 2, проверьте chain ID, квитанцию транзакции и ответ контракта.