local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
基础 MCP 服务器
模型上下文协议 (MCP) 服务器为 Claude Desktop 和 Cursor 等 AI 应用程序提供链上工具,允许它们与 Base Network 和 Coinbase API 进行交互。
概述
该 MCP 服务器通过提供在 Base 上执行任何操作的工具来扩展任何 MCP 客户端的功能:
- 检索钱包地址
- 列出钱包余额
- 在钱包之间转移资金
- 部署智能合约
- 与 Morpho 保险库互动,实现链上借贷
- 调用合约函数
- 通过Coinbase进行 Onramp 融资
- 管理 ERC20 代币
- 列出并转移 NFT(ERC721 和 ERC1155)
- 使用 USDC 购买OpenRouter积分
服务器与 Base 交互,由 Base Developer Tools 和AgentKit提供支持。
使用第三方协议、工具和数据源扩展基础 MCP
Base MCP 的设计具有可扩展性,允许您添加自己的第三方协议、工具和数据源。本节概述了如何扩展 Base MCP 服务器的新功能。
添加新工具
如果您想向 Base MCP 服务器添加新工具,请按照以下步骤操作:
- 在
src/tools
目录中为你的工具创建一个新目录 - 按照现有模式实现该工具:
index.ts
:定义并导出你的工具schemas.ts
:定义工具的输入模式handlers.ts
:实现工具的功能
- 将您的工具添加到
src/tools/index.ts
中的可用工具列表中 - 在 README.md 中添加工具文档
- 在 examples.md 中添加如何使用工具的示例
- 为您的工具编写测试
项目结构
Base MCP 服务器的工具结构如下:
工具开发的最佳实践
为 Base MCP 开发新工具时:
- 遵循现有的代码风格和模式
- 确保您的工具具有明确、集中的用途
- 提供全面的输入验证
- 包括详细的错误处理
- 撰写详尽的文档
- 添加示例来演示如何使用您的工具
- 包括工具的测试
有关对 Base MCP 做出贡献的更多详细信息,包括添加新工具和协议,请参阅CONTRIBUTING.md文件。
先决条件
- Node.js(v16 或更高版本)
- npm 或 yarn
- Coinbase API 凭证(API 密钥名称和私钥)
- 钱包种子短语
- Coinbase 项目 ID(用于 onramp 功能)
- Alchemy API 密钥(NFT 功能所需)
- 可选:OpenRouter API 密钥(用于购买 OpenRouter 积分)
安装
选项 1:从 npm 安装(推荐)
安装软件包后,您可以使用以下命令配置客户端:
选项 2:从源安装
- 克隆此存储库:Copy
- 安装依赖项:Copy
- 构建项目:Copy
- 或者,将其全局链接:Copy
配置
使用您的凭证创建一个.env
文件:
测试
测试 MCP 服务器以验证其是否正常工作:
该脚本将通过测试连接和可用工具来验证您的 MCP 服务器是否正常工作。
示例
有关如何通过 Claude 与 Base MCP 工具交互的详细示例,请参阅examples.md文件。
与 Claude Desktop 集成
要将此 MCP 服务器添加到 Claude Desktop:
- 创建或编辑 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
您可以通过 Claude Desktop 应用程序导航至 Claude > 设置 > 开发人员 > 编辑配置轻松访问此文件。
- 添加以下配置:Copy
- 重新启动 Claude Desktop 以使更改生效。
可用工具
获取地址
检索您的钱包的地址。
对 Claude 的查询示例:
“我的钱包地址是什么?”
清单余额
列出您的钱包的所有余额。
对 Claude 的查询示例:
“显示我的钱包余额。”
转移资金
将资金从您的钱包转移到另一个地址。
参数:
destination
:资金转账的地址assetId
:要转移的资产IDamount
:转账金额
对 Claude 的查询示例:
“将 0.01 ETH 转移到 0x1234567890abcdef1234567890abcdef12345678。”
部署合约
将智能合约部署到区块链。
参数:
constructorArgs
:合约构造函数的参数contractName
:要部署的合约名称solidityInputJson
:包含合约源和设置的 Solidity 编译器的 JSON 输入solidityVersion
:solidity 编译器的版本
对 Claude 的查询示例:
“为我部署一个简单的 ERC20 代币合约。”
检查地址信誉
检查地址的信誉。
参数:
address
:需要检查的以太坊地址
对 Claude 的查询示例:
“0x1234567890abcdef1234567890abcdef12345678 的声誉如何?”
获取形态库
获取 Morpho 上给定资产的保险库。
参数:
assetSymbol
:用于筛选保险库的资产符号(可选)
对 Claude 的查询示例:
“向我展示可用于 USDC 的 Morpho 金库。”
调用合约
调用区块链上的合约函数。
参数:
contractAddress
:要调用的合约地址functionName
:要调用的函数的名称functionArgs
:传递给函数的参数abi
:合约的 ABIvalue
:随交易发送的 ETH 价值(可选)
对 Claude 的查询示例:
“在 0x1234567890abcdef1234567890abcdef12345678 处调用合约上的 balanceOf 函数。”
获取上线资产
获取特定国家/地区/细分市场中可用的资产。
参数:
country
:ISO 3166-1 两位数国家代码字符串,代表购买用户居住的国家/地区subdivision
:ISO 3166-2 两位数国家细分代码(美国必需)
对 Claude 的查询示例:
“我可以在美国,特别是在纽约投资哪些资产?”
入口匝道
获取通过 Coinbase 注入资金的 URL。
参数:
amountUsd
:需要入场的资金量assetId
:要进入的资产 ID
对 Claude 的查询示例:
“我想获得价值 100 美元的 ETH。”
erc20_balance
获取 ERC20 代币的余额。
参数:
contractAddress
:ERC20 合约的地址
对 Claude 的查询示例:
“我的 0x1234567890abcdef1234567890abcdef12345678 代币余额是多少?”
erc20_transfer
将 ERC20 代币转移到另一个地址。
参数:
contractAddress
:ERC20 合约的地址toAddress
:收件人的地址amount
:要转移的代币数量
对 Claude 的查询示例:
“将 10 USDC 转移到 0x1234567890abcdef1234567890abcdef12345678。”
列表_nfts
列出特定地址拥有的 NFT。
参数:
ownerAddress
:要上架 NFT 的所有者的地址limit
:返回的 NFT 的最大数量(默认值:50)
对 Claude 的查询示例:
“向我显示 0x89A93a48C6Ef8085B9d07e46AaA96DFDeC717040 拥有的 NFT。”
转移_nft
将 NFT 转移到另一个地址。支持 ERC721 和 ERC1155 标准。
参数:
contractAddress
:NFT 合约的地址tokenId
:要转移的 NFT 的代币 IDtoAddress
:收件人的地址amount
:转账金额(仅用于 ERC1155,默认值:1)
对 Claude 的查询示例:
“将我的合约编号为 0x3F06FcF75f45F1bb61D56D68fA7b3F32763AA15c、代币 ID 为 56090175025510453004781233574040052668718235229192064098345825090519343038548 的 NFT 转移到 0x1234567890abcdef1234567890abcdef12345678。”
购买 openrouter 积分
使用 USDC 购买 OpenRouter 信用。
参数:
amountUsd
:购买的信用额度(美元)
对 Claude 的查询示例:
“购买价值 20 美元的 OpenRouter 积分。”
安全注意事项
- 配置文件包含敏感信息(API 密钥和种子短语)。请确保妥善保护这些信息,切勿将其共享。
- 考虑使用环境变量或安全凭证管理器,而不是硬编码敏感信息。
- 转移资金或部署合约时要小心谨慎,因为这些操作在区块链上是不可逆的。
- 使用 onramp 功能时,请确保您处于安全连接中。
- 确认之前请验证所有交易细节,尤其是在转账或购买信用时。
故障排除
如果您遇到问题:
- 检查您的 Coinbase API 凭证是否正确
- 验证你的种子短语是否有效
- 确保您在正确的网络上(基本主网)
- 检查 Claude Desktop 日志中是否有任何错误消息
执照
贡献
欢迎贡献代码!欢迎提交 Pull 请求。
有关对 Base MCP 做出贡献的详细指南,包括:
- 报告错误
- 建议改进
- 开发设置
- 编码标准
- 添加新工具、协议和数据源(另请参阅上面的“扩展基础 MCP”部分)
- 测试要求
- 文档标准
请参阅我们全面的CONTRIBUTING.md指南。
基本贡献步骤:
- 分叉存储库
- 创建你的功能分支(
git checkout -b feature/amazing-feature
) - 提交您的更改(
git commit -m 'Add some amazing feature'
) - 推送到分支(
git push origin feature/amazing-feature
) - 打开拉取请求
请确保您的代码遵循现有风格并包含适当的测试。
This server cannot be installed
为 Claude AI 提供链上工具,以便与 Base 区块链和 Coinbase API 进行交互,从而实现钱包管理、资金转移和智能合约部署。
- Overview
- Extending Base MCP with 3P Protocols, Tools, and Data Sources
- Prerequisites
- Installation
- Configuration
- Testing
- Examples
- Integration with Claude Desktop
- Available Tools
- Security Considerations
- Troubleshooting
- License
- Contributing