
EVM MCP Server

2025.04.13
0
TypeScript区块链服务EVM兼容网络智能合约交互代币管理ENS解析金融服务
EVM MCP Server 是一个基于模型上下文协议(MCP)的区块链服务服务器,支持30+ EVM兼容网络。它为AI代理提供统一的接口,用于与以太坊、Optimism、Arbitrum、Base、Polygon等多种EVM链进行交互。核心功能包括读取区块链状态、智能合约交互、代币转移、查询代币元数据和余额等。该服务器特别支持ENS名称解析,允许使用人类可读的名称(如'vitalik.eth')代替地址。
View on GitHub
Overview
产品定位
EVM MCP Server 是一个为AI代理提供区块链服务的中间件,支持多种EVM兼容网络,简化了区块链交互的复杂性。
核心功能
- 多链支持:支持30+ EVM兼容网络
- 区块链数据访问:包括区块、交易、地址余额等信息
- 代币服务:支持ERC20、ERC721、ERC1155代币的元数据查询、余额检查和转移
- 智能合约交互:读取合约状态和写入操作
- ENS名称解析:所有接受地址参数的接口都支持ENS名称
- 交易支持:原生代币转移、Gas估算和交易状态查询
适用场景
- AI代理需要与区块链交互的场景
- 需要统一接口访问多个EVM链的应用
- 使用ENS名称简化地址管理的应用
- 需要查询代币信息和余额的应用
工具列表
代币服务工具
get-token-info
: 获取ERC20代币元数据get-token-balance
: 检查ERC20代币余额transfer-token
: 转移ERC20代币approve-token-spending
: 批准代币支出get-nft-info
: 获取NFT元数据check-nft-ownership
: 验证NFT所有权transfer-nft
: 转移NFTget-nft-balance
: 计算拥有的NFT数量get-erc1155-token-uri
: 获取ERC1155元数据get-erc1155-balance
: 检查ERC1155余额transfer-erc1155
: 转移ERC1155代币
区块链服务工具
get-chain-info
: 获取网络信息get-balance
: 获取原生代币余额transfer-eth
: 发送原生代币get-transaction
: 获取交易详情read-contract
: 读取智能合约状态write-contract
: 写入智能合约is-contract
: 检查地址是否为合约resolve-ens
: 解析ENS名称到地址
常见问题解答
- 如何修改默认链ID? 编辑
src/core/chains.ts
文件 - 如何更改服务器端口? 编辑
src/server/http-server.ts
文件 - 是否支持ENS名称? 所有接受地址参数的接口都支持ENS名称
- 如何添加新的网络支持? 在
src/core/chains.ts
中添加新的网络定义
使用教程
使用依赖
- Bun 1.0.0或更高版本
- Node.js 18.0.0或更高版本(如果不使用Bun)
安装教程
# 克隆仓库
git clone https://github.com/mcpdotdirect/mcp-evm-server.git
cd mcp-evm-server
# 使用Bun安装依赖
bun install
# 或使用npm
npm install
调试方式
启动stdio服务器(用于CLI工具)
# 启动stdio服务器
bun start
# 开发模式(自动重载)
bun dev
启动HTTP服务器(用于Web应用)
# 启动HTTP服务器
bun start:http
# 开发模式(自动重载)
bun dev:http
使用npx直接运行(无需安装)
# 运行stdio模式服务器
npx @mcpdotdirect/evm-mcp-server
# 运行HTTP模式服务器
npx @mcpdotdirect/evm-mcp-server --http