README
🚀 DeBanK MCP 服务器
DeBanK MCP 服务器是一个无状态的模型上下文协议(MCP)服务器,可与 DeBanK API 交互,获取区块链和 DeFi 数据,为用户提供便捷的数据查询服务。
🚀 快速开始
先决条件
安装
- 克隆仓库
git clone https://github.com/yourusername/debank-mcp-server.git
cd debank-mcp-server
- 设置环境变量
export ACCESS_KEY=your_debank_api_key
运行服务器
使用以下命令启动服务器:
deno run --allow-net --allow-env main.ts
服务器将启动并侦听默认的 8080 端口。现在您可以向 http://localhost:8080/mcp 发送 MCP 请求。
✨ 主要特性
- 无状态架构:每个请求创建一个新的服务器实例和传输。
- 全面 DeFi 数据工具:可访问链、协议、代币、池和用户数据。
- 分页支持:所有返回列表的端点都支持分页。
- 错误处理:具备强大的错误处理和报告机制。
📦 安装指南
克隆仓库
git clone https://github.com/yourusername/debank-mcp-server.git
cd debank-mcp-server
设置环境变量
export ACCESS_KEY=your_debank_api_key
💻 使用示例
基础用法
以下是启动服务器的基本命令:
deno run --allow-net --allow-env main.ts
高级用法
可以通过配置环境变量来调整服务器的运行参数,例如指定端口:
export PORT=8081
deno run --allow-net --allow-env main.ts
📚 详细文档
可用工具
| 属性 | 详情 |
|------|------|
| get_chain_info | 获取区块链信息 |
| get_protocol_info | 获取 DeFi 协议信息 |
| get_token_info | 获取代币信息 |
| get_pool_info | 获取特定流动资金池的详细信息 |
| get_user_assets | 获取用户在不同链上的资产信息 |
| get_user_activities | 获取用户的协议位置、交易记录和余额图表信息 |
| get_user_authorizations | 获取用户的代币和 NFT 授权信息 |
| get_collection_nft_list | 获取特定收藏集中的 NFT 列表 |
| wallet_tools | 访问与钱包相关的功能 |
配置
可以配置以下环境变量:
ACCESS_KEY- 您的 DeBanK API 访问密钥PORT- (可选)服务器运行的端口(默认:8080)
🔧 技术细节
MCP HTTP 可流式传输实现
该项目使用 Model Context Protocol SDK 中的 StreamableHTTPServerTransport 来处理 MCP 请求。每个请求都会创建一个新的服务器实例和传输,使服务完全无状态:
// 为每个请求创建新的服务器实例和传输
const server = createServer();
const transport = new StreamableHTTPServerTransport({
sessionIdGenerator: () => randomUUID(),
});
// 连接到服务器
await server.connect(transport);
// 处理请求
await transport.handleRequest(req, res, req.body);
这种实现简化了部署和扩展,因为不需要在多个实例之间管理会话状态。
项目结构
├── main.ts # 主服务器文件,包含 MCP 端点处理
├── deno.json # Deno 配置文件
├── deno.lock # 依赖锁定文件
├── tool/
│ ├── toolInfo.ts # 工具定义
│ └── toolHandler.ts # 工具处理器实现
└── README.md # 本文件
📄 许可证
本项目在 MIT 许可证下,有关详细信息,请参阅 LICENSE 文件。
扫码联系在线客服