BNBChain MCP(模型上下文协议)
通过自然语言处理和人工智能辅助与 BNB Chain 和其他 EVM 兼容网络进行交互的强大工具包。
描述
BNBChain MCP 是一个模型上下文协议 (MCP) 的实现,它能够通过 AI 驱动的接口与区块链网络无缝交互。它为区块链开发、智能合约交互和网络管理提供了一套全面的工具和资源。
核心模块
该项目分为几个核心模块:
- Blocks :查询和管理区块链区块
- 合约:与智能合约交互
- 网络:网络信息和管理
- NFT : NFT(ERC721/ERC1155)操作
- 代币:代币(ERC20)操作
- 交易:交易管理
- 钱包:钱包操作和管理
- 通用:共享实用程序和类型
- Greenfield :支持Greenfield网络上的文件管理操作,包括上传、下载、管理文件和存储桶
- 即将推出的附加功能(Greenfield、Swap、Bridge 等)
与 Cursor 集成
要从 Cursor 连接到 MCP 服务器:
- 打开 Cursor 并转到“设置”(右上角的齿轮图标)
- 点击左侧边栏中的“MCP”
- 点击“添加新的全局 MCP 服务器”
- 输入以下详细信息:
默认模式
SSE 模式
与 Claude Desktop 集成
要从 Claude Desktop 连接到 MCP 服务器:
- 打开 Claude Desktop 并转到“设置”
- 点击左侧边栏中的“开发者”
- 点击“编辑配置”按钮
- 在
claude_desktop_config.json
文件中添加以下配置:
- 保存文件并重新启动Claude Desktop
连接后,您可以直接在 Claude Desktop 对话中使用所有 MCP 提示和工具。例如:
- “分析这个地址:0x123……”
- “解释一下EVM中的gas概念”
- “查看BSC上的最新区块”
与其他客户端集成
如果您想将 BNBChain MCP 集成到您自己的客户端中,请查看示例目录以获取更多详细信息和参考实现。
这些例子表明:
- 如何设置 MCP 客户端
- 身份验证和配置
- 进行 API 调用以与区块链网络进行交互
- 处理响应和错误
- 集成最佳实践
本地开发
先决条件
快速入门
- 克隆存储库:
- 设置环境变量:
使用您的配置编辑.env
文件:
PRIVATE_KEY
:您的钱包私钥(交易操作所需)LOG_LEVEL
:设置日志级别(DEBUG、INFO、WARN、ERROR)PORT
:服务器端口号(默认值:3001)
- 安装依赖项并启动开发服务器:
使用 MCP 客户端进行测试
使用此模板在 MCP 客户端中配置本地服务器:
使用 Web UI 进行测试
我们使用@modelcontextprotocol/inspector
进行测试。启动测试 UI:
可用脚本
bun dev:sse
:使用热重载启动开发服务器bun build
:构建项目bun test
:运行测试套件
可用的提示和工具
提示
姓名 | 描述 |
---|---|
分析_块 | 分析区块并提供有关其内容的详细信息 |
分析交易 | 分析特定交易 |
分析_地址 | 分析EVM地址 |
与合同交互 | 获取与智能合约交互的指导 |
解释 evm_concept | 获取 EVM 概念的解释 |
比较网络 | 比较不同的 EVM 兼容网络 |
分析令牌 | 分析 ERC20 或 NFT 代币 |
工具
姓名 | 描述 |
---|---|
通过哈希获取区块 | 通过哈希获取区块 |
按数字获取区块 | 通过数字获取区块 |
获取最新区块 | 获取最新区块 |
获取交易 | 通过哈希值获取特定交易的详细信息 |
获取交易收据 | 通过哈希值获取交易收据 |
估计气体 | 估算交易的 gas 成本 |
转移原生代币 | 将原生代币(BNB、ETH、MATIC 等)转移到某个地址 |
批准代币支出 | 批准另一个地址来使用你的 ERC20 代币 |
转移_nft | 将 NFT(ERC721 代币)从一个地址转移到另一个地址 |
转移_erc1155 | 将 ERC1155 代币转移到另一个地址 |
转移_erc20 | 将 ERC20 代币转移到某个地址 |
从私钥获取地址 | 获取从私钥派生的 EVM 地址 |
获取链信息 | 获取特定网络的链信息 |
获取支持的网络 | 获取支持的网络列表 |
resolve_ens | 将 ENS 名称解析为 EVM 地址 |
是合同 | 检查地址是否为智能合约或外部拥有账户(EOA) |
读取合同 | 通过调用 view/pure 函数从智能合约读取数据 |
写入合同 | 通过调用状态改变函数将数据写入智能合约 |
获取 erc20_token_info | 获取ERC20代币信息 |
获取本机余额 | 获取地址的原生代币余额 |
获取 erc20 余额 | 获取地址的 ERC20 代币余额 |
获取nft信息 | 获取有关特定 NFT 的详细信息 |
检查nft所有权 | 检查地址是否拥有特定的 NFT |
获取 erc1155_token_uri | 获取 ERC1155 代币的元数据 URI |
获取nft余额 | 从特定集合中获取某个地址拥有的 NFT 总数 |
获取 erc1155 余额 | 获取某个地址拥有的特定 ERC1155 代币 ID 的余额 |
gnfd_get_bucket_info | 获取特定 bucket 的详细信息 |
gnfd_list_buckets | 列出某个地址拥有的所有存储桶 |
gnfd_create_bucket | 创建新存储桶 |
gnfd_delete_bucket | 删除存储桶 |
gnfd_get_object_info | 获取有关特定对象的详细信息 |
gnfd_list_objects | 列出存储桶中的所有对象 |
gnfd_upload_对象 | 将对象上传到存储桶 |
gnfd_download_对象 | 从存储桶下载对象 |
gnfd_delete_object | 从存储桶中删除对象 |
gnfd_创建文件夹 | 在存储桶中创建文件夹 |
支持的网络
支持 BSC、opBNB、Greenfield、以太坊以及其他主流 EVM 兼容网络。更多详情,请参阅src/evm/chains.ts
。
贡献
欢迎为 BNBChain MCP 做出贡献!您可以通过以下方式提供帮助:
- 分叉存储库
- 创建功能分支
- 提交你的更改
- 推送到你的分支
- 创建拉取请求
请确保您的代码符合我们的编码标准并包含适当的测试。
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
参考文献和致谢
该项目建立在以下开源项目的基础上并受到其启发:
- TermiX-official/bsc-mcp - 原始 BSC MCP 实现
- mcpdotdirect/evm-mcp-server - 与 EVM 兼容的 MCP 服务器实现
我们感谢原作者对区块链生态系统的贡献。
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
bnbchain-mcp
Related Resources
Related MCP Servers
- PythonApache 2.0
- PythonMIT License
- PythonMIT License
- TypeScriptMIT License