EVM(Ethereum Virtual Machine)服务器是基于 MCP 协议的扩展工具,可与以太坊区块链交互。它支持智能合约操作、代币管理、交易处理等多种功能,为区块链应用开发提供便利。
EVM 服务器使用简单,按以下步骤操作即可开启服务:
npm 安装所需依赖。npm install
npm start
使用 npm 安装所需依赖:
npm install
运行主程序启动服务器:
npm start
以下是一个典型的服务器配置示例:
const config = {
port: 3000,
networks: ['eth', 'bsc'],
chains: {
eth: { providerUrl: 'https://mainnet.infura.io/v3/YOUR_API_KEY' },
bsc: { providerUrl: 'https://bsc-dataseed1.binance.org' }
}
};
所有请求均采用 JSON 格式:
{
"method": "eth_getBalance",
"params": ["0x1234567890123456789012345678901234567890", "latest"],
"id": 1,
"jsonrpc": "2.0"
}
{
"jsonrpc": "2.0",
"result": "0x123",
"error": null,
"id": 1
}
以下是项目的目录结构:
mcp-evm-server/
├── src/
│ ├── index.ts # 主控制台服务器入口文件
│ ├── server/ # 服务器相关文件
│ │ ├── http-server.ts # 基于 SSE 的 HTTP 服务器
│ │ └── server.ts # 通用服务器设置
│ ├── core/
│ │ ├── chains.ts # 网络定义与工具
│ │ ├── resources.ts # MCP 资源实现
│ │ ├── tools.ts # MCP 工具实现
│ │ ├── prompts.ts # MCP 提示实现
│ │ └── utils/ # 辅助工具函数
│ │ └── abi_decoder.ts # ABI 解码器
└── package.json # 项目依赖和脚本
欢迎社区贡献代码!请遵循以下步骤:
遇到问题请联系维护团队:contact@evm-server.com
本项目遵循 MIT 协议。详情请查看 LICENSE 文件。