mcpdotdirect/evm-mcp-server

mcpdotdirect/evm-mcp-server

от mcpdotdirect
MCP-сервер для взаимодействия с 60+ EVM-сетями. Предоставляет AI-агентам 22 инструмента для чтения контрактов, перевода токенов, NFT и транзакций. Работает с ENS и автоматически подтягивает ABI из блокчейн-эксплореров.

EVM MCP Server

License: MIT EVM Networks TypeScript MCP Viem

A comprehensive Model Context Protocol (MCP) server that provides blockchain services across 60+ EVM-compatible networks. This server enables AI agents to interact with Ethereum, Optimism, Arbitrum, Base, Polygon, and many other EVM chains with a unified interface through 22 tools and 10 AI-guided prompts.

📋 Contents

🔭 Overview

The MCP EVM Server leverages the Model Context Protocol to provide blockchain services to AI agents. It supports a wide range of services including:

  • Reading blockchain state (balances, transactions, blocks, etc.)
  • Interacting with smart contracts with automatic ABI fetching from block explorers
  • Transferring tokens (native, ERC20, ERC721, ERC1155)
  • Querying token metadata and balances
  • Chain-specific services across 60+ EVM networks (34 mainnets + 26 testnets)
  • ENS name resolution for all address parameters (use human-readable names like 'vitalik.eth' instead of addresses)
  • AI-friendly prompts that guide agents through complex workflows

Часто задаваемые вопросы

Инструменты были проиндексированы:
approve_token_spendingвнешний мир

Утверждает расходщика (контракт) для траты токенов от вашего имени. Требуется перед взаимодействием с DEX, протоколами кредитования и т.д.

Параметры
  • amountstringобязательный

    Сумма для одобрения (в токенах). Введите «0», чтобы отозвать одобрение.

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • spenderAddressstringобязательный

    Адрес, которому будет разрешено тратить токены (обычно контракт).

  • tokenAddressstringобязательный

    Адрес контракта токена ERC20

get_allowanceтолько чтениеидемпотентныйвнешний мир

Проверяет разрешение, выданное расходователю на токен. Это показывает, сколько токенов адрес может потратить от вашего имени.

Параметры
  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • ownerAddressstring

    Адрес владельца (по умолчанию используется настроенный кошелек)

  • spenderAddressstringобязательный

    Адрес, которому разрешено тратить токен (обычно адрес контракта)

  • tokenAddressstringобязательный

    Адрес контракта токена ERC20

get_balanceтолько чтениеидемпотентныйвнешний мир

Получить баланс нативного токена (ETH, MATIC и т.д.) для адреса

Параметры
  • addressstringобязательный

    Адрес кошелька или ENS-имя

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

get_blockтолько чтениеидемпотентныйвнешний мир

Получить детали блока по номеру блока или хешу

Параметры
  • blockIdentifierstringобязательный

    Номер блока (в виде строки) или хэш блока.

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

get_chain_infoтолько чтениеидемпотентныйвнешний мир

Получить информацию о сети EVM: идентификатор цепочки, текущий номер блока и RPC-эндпоинт.

Параметры
  • networkstring

    Название сети (например, 'ethereum', 'optimism', 'arbitrum', 'base') или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

get_contract_abiтолько чтениеидемпотентныйвнешний мир

Получает полный ABI контракта с Etherscan и других блокчейн-обозревателей. Используйте это, чтобы изучить верифицированные контракты перед взаимодействием. Требуется ETHERSCAN_API_KEY. Поддерживает более 30 EVM-сетей. Лучше всего работает с верифицированными контрактами на блокчейн-обозревателях.

Параметры
  • contractAddressstringобязательный

    Адрес контракта (0x...)

  • networkstring

    Название сети или ID цепочки. По умолчанию ethereum. Поддерживаются: ethereum, polygon, arbitrum, optimism, base, avalanche, gnosis, fantom, bsc, celo, scroll, linea, zksync, manta, blast и тестовые сети (sepolia, mumbai, arbitrum-sepolia, optimism-sepolia, base-sepolia, avalanche-fuji).

get_erc1155_balanceтолько чтениеидемпотентныйвнешний мир

Получить баланс токена ERC1155 для адреса

Параметры
  • addressstringобязательный

    Адрес владельца или имя ENS

  • contractAddressstringобязательный

    Адрес контракта ERC1155

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • tokenIdstringобязательный

    Идентификатор токена

get_gas_priceтолько чтениевнешний мир

Получить текущие цены на газ (base fee, standard и fast) для сети

Параметры
  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

get_latest_blockтолько чтениевнешний мир

Получить последний блок из сети

Параметры
  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

get_nft_infoтолько чтениеидемпотентныйвнешний мир

Получает информацию об ERC721 NFT, включая metadata URI.

Параметры
  • contractAddressstringобязательный

    Адрес контракта NFT

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • tokenIdstringобязательный

    ID токена NFT

get_supported_networksтолько чтениеидемпотентный

Получить список всех поддерживаемых EVM-сетей

Параметры

Без параметров.

get_token_balanceтолько чтениеидемпотентныйвнешний мир

Получить баланс токенов ERC20 для адреса

Параметры
  • addressstringобязательный

    Адрес кошелька или ENS-имя

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • tokenAddressstringобязательный

    Адрес контракта токена ERC20

get_transactionтолько чтениеидемпотентныйвнешний мир

Получить детали транзакции по хешу транзакции

Параметры
  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • txHashstringобязательный

    Хэш транзакции (0x...)

get_transaction_receiptтолько чтениеидемпотентныйвнешний мир

Получает квитанцию транзакции (статус подтверждения, использованный газ, логи). Используйте это, чтобы проверить, была ли транзакция подтверждена.

Параметры
  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • txHashstringобязательный

    Хэш транзакции (0x...)

get_wallet_addressтолько чтениеидемпотентный

Получите адрес настроенного кошелька. Используйте его, чтобы проверить, какой кошелек активен.

Параметры

Без параметров.

lookup_ens_addressтолько чтениеидемпотентныйвнешний мир

Найти ENS-имя для Ethereum-адреса (обратное разрешение)

Параметры
  • addressstringобязательный

    Ethereum-адрес для поиска

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

multicallтолько чтениеидемпотентныйвнешний мир

Объединяет несколько вызовов чтения контрактов в один RPC-запрос. Значительно снижает задержки и нагрузку на RPC при запросе множества функций. Использует контракт Multicall3, развернутый во всех основных сетях. Идеально подходит для анализа портфелей, агрегации цен и эффективного опроса состояний нескольких контрактов.

Параметры
  • allowFailureboolean

    Если значение true, возвращает частичные результаты, даже если часть вызовов завершилась ошибкой. По умолчанию true.

  • callsobject[]обязательный

    Массив вызовов контрактов для объединения в пакет

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

read_contractтолько чтениеидемпотентныйвнешний мир

Вызывает read-only функции смарт-контракта. Автоматически получает ABI из обозревателя блокчейна, если он не указан (требуется ETHERSCAN_API_KEY). Если контракт не верифицирован, использует стандартные функции. Используйте для запроса состояния и данных контракта.

Параметры
  • abiJsonstring

    Полный ABI контракта в виде JSON-строки (необязательно - если не указано, будет автоматически загружен проверенный ABI контракта)

  • argsstring[]

    Аргументы функции в виде строк (например, ['0xAddress'] для balanceOf)

  • contractAddressstringобязательный

    Адрес контракта

  • functionNamestringобязательный

    Название функции (например, 'name', 'symbol', 'balanceOf', 'totalSupply', 'owner')

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

resolve_ens_nameтолько чтениеидемпотентныйвнешний мир

Разрешить имя ENS в адрес Ethereum

Параметры
  • ensNamestringобязательный

    ENS-имя для разрешения (например, 'vitalik.eth')

  • networkstring

    Название сети или ID цепочки. Разрешение ENS лучше всего работает в основной сети Ethereum. По умолчанию используется основная сеть Ethereum.

sign_messageидемпотентный

Подписывает произвольное сообщение с помощью настроенного кошелька. Полезно для аутентификации (SIWE), метатранзакций и внецепочечных подписей. Подпись можно проверить как в цепочке, так и вне цепочки.

Параметры
  • messagestringобязательный

    Сообщение для подписи (обычный текст или данные в hex-формате)

sign_typed_dataидемпотентный

Подписывает структурированные данные (EIP-712) с использованием настроенного кошелька. Используется для газлесс-транзакций, мета-транзакций, подписей permit и протокол-специфичных подписей. Подпись соответствует стандарту EIP-712.

Параметры
  • domainJsonstringобязательный

    EIP-712 домен в виде JSON-строки с полями: name, version, chainId, verifyingContract, salt (все необязательные)

  • messageJsonstringобязательный

    Данные сообщения для подписи в виде JSON-строки.

  • primaryTypestringобязательный

    Основное имя типа (например, «Mail», «Permit», «MetaTransaction»)

  • typesJsonstringобязательный

    Определение типов EIP-712 в виде JSON-строки (исключая тип EIP712Domain, он добавляется автоматически).

transfer_erc20внешний мир

Переводит ERC20-токены на указанный адрес. Использует настроенный кошелёк.

Параметры
  • amountstringобязательный

    Сумма для отправки (в единицах токена, с учётом десятичных знаков)

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • tostringобязательный

    Адрес получателя или ENS-имя

  • tokenAddressstringобязательный

    Адрес контракта токена ERC20

transfer_nativeвнешний мир

Переводит нативные токены (ETH, MATIC и т.д.) на адрес. Использует настроенный кошелек.

Параметры
  • amountstringобязательный

    Сумма для отправки в эфире (например, «0.5» для 0.5 ETH)

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • tostringобязательный

    Адрес получателя или ENS-имя

wait_for_transactionтолько чтениевнешний мир

Ожидает подтверждения транзакции (майнинга). Опрашивает сеть до подтверждения.

Параметры
  • confirmationsnumber

    Требуемое количество подтверждений блоков. По умолчанию — 1.

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • txHashstringобязательный

    Хэш транзакции (0x...)

write_contractвнешний мир

Выполняет функции, изменяющие состояние смарт-контракта. Автоматически получает ABI из блок-эксплорера, если он не указан (требуется ETHERSCAN_API_KEY). Используйте это, чтобы вызвать любую функцию записи на верифицированных контрактах. Требуется настроенный кошелек (через приватный ключ или мнемоническую фразу).

Параметры
  • abiJsonstring

    Полный ABI контракта в виде JSON-строки (необязательно - если не указано, будет автоматически загружен проверенный ABI контракта)

  • argsstring[]

    Аргументы функции в виде строк (например, ['0xAddress', '1000000'])

  • contractAddressstringобязательный

    Адрес контракта

  • functionNamestringобязательный

    Имя функции для вызова (например, 'mint', 'swap', 'stake', 'approve')

  • networkstring

    Название сети или идентификатор цепочки. По умолчанию используется основная сеть Ethereum.

  • valuestring

    Сумма ETH для отправки в транзакции в эфире (например, «0.1» для payable-функций)

2.0.4основная

Выберите клиент, чтобы установить mcpdotdirect/evm-mcp-server:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"mcpdotdirect-evm-mcp-server-nmxrlpi2v0\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"@mcpdotdirect/evm-mcp-server\"]}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add mcpdotdirect-evm-mcp-server-nmxrlpi2v0 -- npx -y @mcpdotdirect/evm-mcp-server

Либо через JSON-конфиг:

claude mcp add-json mcpdotdirect-evm-mcp-server-nmxrlpi2v0 "{\"command\":\"npx\",\"args\":[\"-y\",\"@mcpdotdirect/evm-mcp-server\"]}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add mcpdotdirect-evm-mcp-server-nmxrlpi2v0 -- npx -y @mcpdotdirect/evm-mcp-server

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.mcpdotdirect-evm-mcp-server-nmxrlpi2v0]
command = "npx"
args = ["-y", "@mcpdotdirect/evm-mcp-server"]
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите mcpdotdirect/evm-mcp-server, а в поле команды запуска — строку ниже:
npx -y @mcpdotdirect/evm-mcp-server

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например mcpdotdirect-evm-mcp-server-nmxrlpi2v0.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: mcpdotdirect-evm-mcp-server-nmxrlpi2v0
    command: npx
    args:
      - "-y"
      - "@mcpdotdirect/evm-mcp-server"
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "mcpdotdirect-evm-mcp-server-nmxrlpi2v0": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ]
    }
  }
}

Похожие MCP-сервера

bnb-chain/bnbchain-mcp

bnb-chain/bnbchain-mcp

от bnb-chain

MCP сервер BNBChain даёт разработчикам доступ к BNB Chain и EVM-сетям через AI и естественный язык. Включает инструменты для работы с контрактами, NFT, токенами, транзакциями, файлами на Greenfield и агентами ERC-8004. Идеален для создания dApps и управления on-chain активами.

TypeScript⭐ 59
kukapay/chainlist-mcp

kukapay/chainlist-mcp

от kukapay

MCP-сервер для быстрого поиска проверенных данных об EVM-сетях: chain ID, RPC-адреса, эксплореры и нативные токены из Chainlist. Полезен AI-агентам и разработчикам для автоматизации работы с блокче...

Python⭐ 2
sei-protocol/sei-mcp-server

sei-protocol/sei-mcp-server

от sei-protocol

MCP сервер для Sei блокчейна, который даёт AI-агентам доступ к данным on-chain, смарт-контрактам и токенам. Включает балансы, транзакции, переводы ERC20 и NFT - всё через единый интерфейс.

TypeScript⭐ 13
hifriendbot/agentwallet-mcp

hifriendbot/agentwallet-mcp

от hifriendbot

Создаёт и управляет криптокошельками на EVM-сетях и Solana: переводы, стейблкоины, оплата x402-счетов. Без KYC, дешевле Coinbase.

TypeScript⭐ 3
calintzy/evmscope

calintzy/evmscope

от calintzy

MCP сервер evmscope предоставляет AI агентам 26 on-chain инструментов для 7 EVM-сетей: от цен и газа до детекции скамов и управления портфелем. Работает как CLI, не требует настройки.

TypeScript⭐ 3
mcpdotdirect/starknet-mcp-server

mcpdotdirect/starknet-mcp-server

от mcpdotdirect

MCP-сервер для интеграции AI-агентов с блокчейном Starknet. Предоставляет инструменты для запросов данных сети, управления кошельками, работы со смарт-контрактами и StarknetID. Полезен разработчика...

TypeScript⭐ 7
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин