使用说明
项目简介
DexScreener MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在为大型语言模型 (LLM) 应用提供访问 DexScreener API 的能力。通过此服务器,LLM 可以获取实时的去中心化交易所 (DEX) 数据、代币信息以及市场统计数据,从而增强 LLM 在 DeFi 和加密货币领域的应用能力。
主要功能点
- 实时 DEX 数据访问: 提供对 DexScreener API 的实时访问,获取最新的 DEX 交易对数据和代币信息。
- 工具化 API 调用: 将 DexScreener API 的功能封装为一系列易于 LLM 调用的工具 (Tools),例如获取最新代币信息、查询交易对等。
- 速率限制处理: 内置速率限制机制,遵守 DexScreener API 的速率限制,确保服务的稳定运行。
- 错误处理: 提供全面的错误处理机制,能够处理 API 错误、网络错误和参数错误等,并以标准化的格式返回错误信息。
- 资源文档: 内置 API 文档和 memecoin 交易最佳实践等资源 (Resources),方便 LLM 获取相关背景知识。
安装步骤
一键安装 (推荐,自动配置 Claude Desktop):
打开终端,复制并执行以下命令:
curl -L https://raw.githubusercontent.com/opensvm/dexscreener-mcp-server/main/install.sh | bash
此命令会自动下载、安装并配置 DexScreener MCP Server,并将其添加到 Claude Desktop 的 MCP 服务器配置中。
手动安装:
-
克隆仓库:
git clone https://github.com/openSVM/dexscreener-mcp-server.git cd dexscreener-mcp-server -
安装依赖:
npm install -
构建项目:
npm run build -
设置 (可选,用于 Claude Desktop 集成):
npm run setup
服务器配置
对于 MCP 客户端(例如 Claude Desktop),您需要配置服务器的启动命令和参数。以下是 DexScreener MCP Server 的配置信息示例 (JSON 格式):
{ "dexscreener": { "command": "node", // 启动服务器的命令,这里使用 Node.js "args": ["/path/to/dexscreener-mcp-server/build/index.js"], // 启动命令的参数,指向服务器入口文件 "env": { "NODE_OPTIONS": "--experimental-vm-modules" // Node.js 环境变量,启用 ES 模块支持 }, "restart": true // 是否在服务器崩溃时自动重启 } }
注意:
- 请将 '/path/to/dexscreener-mcp-server' 替换为您实际的项目路径。
- 如果您使用一键安装脚本,则无需手动配置,脚本会自动完成配置。
基本使用方法
DexScreener MCP Server 提供了一系列工具 (Tools) 供 LLM 调用。以下是一些常用的工具及其调用示例 (假设您已经使用了 MCP 客户端,例如 Claude Desktop):
1. 获取最新代币信息 (get_latest_token_profiles):
const result = await mcpClient.callTool('dexscreener', 'get_latest_token_profiles'); console.log(result);
2. 获取最新热门代币 (get_latest_boosted_tokens):
const result = await mcpClient.callTool('dexscreener', 'get_latest_boosted_tokens'); console.log(result);
3. 获取最热门代币 (get_top_boosted_tokens):
const result = await mcpClient.callTool('dexscreener', 'get_top_boosted_tokens'); console.log(result);
4. 查询代币订单 (get_token_orders):
const result = await mcpClient.callTool('dexscreener', 'get_token_orders', { chainId: 'solana', // 链 ID,例如 'solana', 'ethereum' tokenAddress: 'So11111111111111111111111111111111111111112' // 代币地址 }); console.log(result);
5. 根据链 ID 和交易对地址查询交易对 (get_pairs_by_chain_and_address):
const result = await mcpClient.callTool('dexscreener', 'get_pairs_by_chain_and_address', { chainId: 'solana', // 链 ID pairId: 'HxFLKUAmAMLz1jtT3hbvCMELwH5H9tpM2QugP8sKyfhc' // 交易对地址 }); console.log(result);
6. 根据代币地址查询交易对 (get_pairs_by_token_addresses):
const result = await mcpClient.callTool('dexscreener', 'get_pairs_by_token_addresses', { tokenAddresses: 'So11111111111111111111111111111111111111112' // 代币地址 (多个地址用逗号分隔,最多 30 个) }); console.log(result);
7. 搜索交易对 (search_pairs):
const result = await mcpClient.callTool('dexscreener', 'search_pairs', { query: 'SOL' // 搜索关键词,例如代币符号或名称 }); console.log(result);
请参考仓库的 'README.md' 文件和 'docs/api-reference.md' 获取更详细的工具和 API 使用说明。
信息
分类
网页与API