加密货币数据API服务

DexPaprika MCP Server是一个提供实时加密货币和去中心化交易所(DEX)数据访问的模型上下文协议服务器,专为AI助手设计,无需配置即可获取代币、流动池和DEX数据。

  • by jamesbarlow
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 jamesbarlow/Crypto-dex-mcp

使用说明

DexPaprika MCP 服务器

一个模型上下文协议(MCP)服务器,提供按需访问DexPaprika的加密货币和去中心化交易所(DEX)数据API的服务。该服务器专为像Claude这样的AI助手设计,使其能够以零配置的方式程序化地获取实时代币、池和DEX数据。

太长,读不下去了

# Install globally
npm install -g dexpaprika-mcp

# Start the server
dexpaprika-mcp

# Or run directly without installation
npx dexpaprika-mcp

DexPaprika MCP将Claude连接到多个区块链上的实时DEX数据。无需API密钥。 安装 | 配置 | API 参考

🚨 版本1.2.0更新亮点

新批量代币价格查询工具 getTokenMultiPrices 并且增强了 getNetworkDexes 参数。见下例。

🚨 版本1.1.0更新通知

重大变更全球 /pools 端点已被移除。如果您是从v1.0.x版本升级,请参阅 迁移指南 在......下面

你能建造什么?

  • 代币分析工具追踪价格走势、流动性深度变化以及交易量模式
  • DEX对比分析不同去中心化交易所(DEX)的费用结构、交易量和可用资金池
  • 流动性池分析监控TVL(总锁定价值)变化、计算临时损失,并评估价格影响
  • 市场分析跨链代币比较、交易量趋势及交易活动指标
  • 投资组合追踪器实时价值追踪,历史绩效分析,收益机会
  • 技术分析利用历史开盘价、最高价、最低价、收盘价和成交量(OHLCV)数据进行高级技术分析,包括趋势识别、形态识别和指标计算

安装

通过Smithery进行安装

通过自动方式为Claude Desktop安装DexPaprika Smithery(根据上下文,可译为“铁匠铺”或“锻造工坊”,这里选择更通用的翻译):

npx -y @smithery/cli install @coinpaprika/dexpaprika-mcp --client claude

手动安装

# Install globally (recommended for regular use)
npm install -g dexpaprika-mcp

# Verify installation
dexpaprika-mcp --version

# Start the server
dexpaprika-mcp

服务器默认在8010端口上运行。你会看到 MCP server is running at http://localhost:8010 当成功启动时。

视频教程

观看我们关于设置和使用DexPaprika MCP服务器的分步教程:

Claude 桌面集成

在您的Claude桌面配置文件中添加以下内容:

macOS(发音为“Mac OS”,其中“OS”代表“操作系统”): ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "dexpaprika": {
      "command": "npx",
      "args": ["dexpaprika-mcp"]
    }
  }
}

重启Claude Desktop后,DexPaprika工具将自动可用。

从v1.0.x版本迁移到v1.1.0版本

⚠️ 突破性变更

全球的 getTopPools 该函数已被 移除 由于API已弃用。

迁移步骤

在之前版本(v1.0.x):

// This will no longer work
getTopPools({ page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })

之后(v1.1.0):

// Use network-specific queries instead
getNetworkPools({ network: 'ethereum', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })
getNetworkPools({ network: 'solana', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })

// To query multiple networks, call getNetworkPools for each network
// Or use the search function for cross-network searches

新方法的优势

  • 更佳性能针对特定网络的查询更快且更高效
  • 更多相关结果获取与您使用场景实际相关的数据池
  • 提高了可扩展性更适合处理跨网络的大数据量

技术能力

MCP服务器公开了这些Claude可以访问的特定端点:

网络运营

功能 描述 示例
getNetworks 获取所有支持的区块链网络和元数据 {"id": "ethereum", "name": "Ethereum", "symbol": "ETH", ...}
getNetworkDexes 列出特定网络上可用的DEX(去中心化交易所) {"dexes": [{"id": "uniswap_v3", "name": "Uniswap V3", ...}]}

泳池运营

功能 描述 必需参数 示例用法
getNetworkPools [PRIMARY] 翻译为中文是“主要的”或“首要的” 获取特定网络上的顶级矿池 network, limit 获取Solana最高流动性的资金池
getDexPools 获取特定DEX的顶级交易池 network, dex 列出Uniswap V3上的池子
getPoolDetails 获取详细的池指标 network, poolAddress USDC/ETH 池的完整指标
getPoolOHLCV 为各种分析目的(技术分析、机器学习模型、回测)获取时间序列价格数据 network, poolAddress, start, interval SOL/USDC 7天每小时蜡烛图
getPoolTransactions 列出池中的最近交易 network, poolAddress 特定池中的最后20次交换

代币操作

功能 描述 必需参数 输出字段
getTokenDetails 获取全面的代币数据 network, tokenAddress price_usd, volume_24h, liquidity_usd等。
getTokenPools 列出包含特定代币的池 network, tokenAddress 返回所有包含流动性指标的池子
getTokenMultiPrices 多个代币的批量美元价格 network, tokens[] 数组 of { id, chain, price_usd }
search 通过名称/ID查找代币、池、去中心化交易所(DEX) query 多实体搜索结果

示例用法

// With Claude, get details about a specific token:
const solanaJupToken = await getTokenDetails({
  network: "solana", 
  tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN"
});

// Find all pools for a specific token with volume sorting:
const jupiterPools = await getTokenPools({
  network: "solana", 
  tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
  orderBy: "volume_usd",
  limit: 5
});

// Get top pools on Ethereum (v1.1.0 approach):
const ethereumPools = await getNetworkPools({
  network: "ethereum",
  orderBy: "volume_usd",
  limit: 10
});

// Get historical price data for various analytical purposes (technical analysis, ML models, backtesting):
const ohlcvData = await getPoolOHLCV({
  network: "ethereum",
  poolAddress: "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", // ETH/USDC on Uniswap V3
  start: "2023-01-01",
  interval: "1d",
  limit: 30
});

// 1.2.0: Get batched prices for multiple tokens (repeatable tokens query)
const prices = await getTokenMultiPrices({
  network: "ethereum",
  tokens: [
    "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", // WETH
    "0xdac17f958d2ee523a2206206994597c13d831ec7"  // USDT
  ]
});

Claude的示例提示

在与Claude合作时,尝试使用以下针对v1.1.0版本更新的特定技术查询:

  • “分析Solana上的JUP代币。获取价格、交易量和顶级流动性池信息。”
  • “比较以太坊上Uniswap V3和SushiSwap的交易量。”
  • “获取Raydium上SOL/USDC的7天开盘、最高、最低、收盘和成交量(OHLCV)数据,并绘制价格图表。”
  • “找出Fantom网络上流动性最高的前5个池子,并分析它们的费用结构。”
  • “获取Uniswap上ETH/USDT交易池的最新交易记录,并分析买入与卖出压力。”
  • “使用getNetworkPools显示以太坊上24小时内交易量排名前10的池子。”
  • “搜索所有包含ARB代币的池子,并按交易量进行排名。”
  • “获取BTC/USDT的OHLCV数据,以分析波动性模式并构建价格预测模型。”
  • “首先获取所有可用的网络,然后向我展示每个主要网络上的顶级矿池。”

速率限制与性能

  • 免费层级限制每分钟60个请求
  • 响应时间对于大多数端点,延迟在100-500毫秒之间(取决于网络状况)
  • 数据新鲜度池和代币数据每15-30秒更新一次
  • 错误处理429状态码表示速率限制
  • OHLCV数据的可用性通常可从代币/池创建日期获取的历史数据

故障排除

常见问题:

  • 速率限制如果收到429错误,请降低请求频率
  • 缺失数据一些较新的代币/池子可能具有不完整的历史数据
  • 超时错误大数据请求可能需要更长时间,请考虑分页处理
  • 网络错误检查网络连接,该服务需要互联网访问
  • OHLCV的局限性开始日期和结束日期之间的最大范围为1年;如需更长的时间范围,请使用分页功能

移民问题:

  • **“未找到getTopPools方法”**这个功能已被移除。请使用 getNetworkPools 而是使用一个特定的网络参数
  • “410 Gone”错误您正在使用一个已弃用的终端节点。请查看错误信息,以获取应使用的正确终端节点的指导

发展

# Clone the repository
git clone https://github.com/coinpaprika/dexpaprika-mcp.git
cd dexpaprika-mcp

# Install dependencies
npm install

# Run with auto-restart on code changes
npm run watch

# Build for production
npm run build

# Run tests
npm test

更新日志

看 CHANGELOG.md 翻译为中文是:“变更日志文件(Markdown 格式)” 请参阅详细的发行说明和迁移指南。

许可证

这个项目遵循MIT许可证授权——详见 许可证 文件中详细说明。

额外资源