使用说明

项目简介

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 服务器配置中。

手动安装:

  1. 克隆仓库:

    git clone https://github.com/openSVM/dexscreener-mcp-server.git
    cd dexscreener-mcp-server
  2. 安装依赖:

    npm install
  3. 构建项目:

    npm run build
  4. 设置 (可选,用于 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