一个模型上下文协议(MCP)服务器,提供按需访问DexPaprika的加密货币和去中心化交易所(DEX)数据API。专门为像Claude这样的AI助手设计,可以编程地获取实时代币、池和DEX数据,无需配置。
# 全局安装
npm install -g dexpaprika-mcp
# 启动服务器
dexpaprika-mcp
# 或者不安装直接运行
npx dexpaprika-mcp
DexPaprika MCP连接Claude到多个区块链上的实时DEX数据。无需API密钥。安装 | 配置 | API参考
新增: 批量代币价格工具getTokenMultiPrices和增强的getNetworkDexes参数。见下文示例。
重大变更: 已移除全局/pools端点。如果您从v1.0.x升级,请参阅下面的迁移指南。
要通过Smithery自动为Claude Desktop安装DexPaprika:
npx -y @smithery/cli install @coinpaprika/dexpaprika-mcp --client claude
# 全局安装(推荐用于常规使用)
npm install -g dexpaprika-mcp
# 验证安装
dexpaprika-mcp --version
# 启动服务器
dexpaprika-mcp
服务器默认在8010端口运行。成功启动后,您会看到MCP服务器正在http://localhost:8010运行。
观看我们关于设置和使用DexPaprika MCP服务器的逐步教程:
在您的Claude Desktop配置文件中添加以下内容:
macOS: ~/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工具将自动对Claude可用。
由于API废弃,已移除全局getTopPools函数。
之前(v1.0.x):
// 这将不再工作
getTopPools({ page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })
之后(v1.1.0):
// 使用网络特定查询代替
getNetworkPools({ network: 'ethereum', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })
getNetworkPools({ network: 'solana', page: 0, limit: 10, sort: 'desc', orderBy: 'volume_usd' })
// 查询多个网络时,为每个网络调用getNetworkPools
// 或使用搜索功能进行跨网络搜索
MCP服务器暴露了Claude可以访问的具体端点:
| 函数 | 描述 | 示例 |
|---|---|---|
getNetworks | 获取所有支持的区块链网络及其元数据 | {"id": "ethereum", "name": "以太坊", "symbol": "ETH", ...} |
getNetworkDexes | 列出特定网络上的DEX | {"dexes": [{"id": "uniswap_v3", "name": "Uniswap V3", ...}]} |
| 函数 | 描述 | 必填参数 | 示例用法 |
|---|---|---|---|
getNetworkPools | [主要] 获取特定网络上的顶级池 | network, limit | 获取Solana最高流动性的池 |
getDexPools | 获取特定DEX的顶级池 | network, dex | 列出Uniswap V3上的池 |
getPoolDetails | 获取详细的池度量 | network, poolAddress | 完整的USDC/ETH池度量 |
getPoolOHLCV | 获取时间序列价格数据,用于各种分析目的(技术分析、ML模型、回测) | network, poolAddress, start, interval | SOL/USDC的7天每小时蜡烛图 |
getPoolTransactions | 列出池中的最近交易 | network, poolAddress | 特定池中的最后20次交换 |
| 函数 | 描述 | 必填参数 | 输出字段 |
|---|---|---|---|
getTokenDetails | 获取全面的代币数据 | network, tokenAddress | price_usd, volume_24h, liquidity_usd等 |
getTokenPools | 列出包含代币的池 | network, tokenAddress | 返回所有具有流动度量的池 |
getTokenMultiPrices | 批量USD价格,适用于多个代币 | network, tokens[] | 数组{ id, chain, price_usd } |
search | 通过名称/ID查找代币、池、DEX | query | 多实体搜索结果 |
// 使用Claude,获取特定代币的详细信息:
const solanaJupToken = await getTokenDetails({
network: "solana",
tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN"
});
// 查找特定代币的所有池,并按成交量排序:
const jupiterPools = await getTokenPools({
network: "solana",
tokenAddress: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
orderBy: "volume_usd",
limit: 5
});
// 获取以太坊上的顶级池(v1.1.0方法):
const ethereumPools = await getNetworkPools({
network: "ethereum",
orderBy: "volume_usd",
limit: 10
});
// 获取用于各种分析目的的历史价格数据(技术分析、ML模型、回测):
const ohlcvData = await getPoolOHLCV({
network: "ethereum",
poolAddress: "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", // Uniswap V3上的ETH/USDC
start: "2023-01-01",
interval: "1d",
limit: 30
});
// 1.2.0: 获取多个代币的批量价格(重复代币查询)
const prices = await getTokenMultiPrices({
network: "ethereum",
tokens: [
"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", // WETH
"0xdac17f958d2ee523a2206206994597c13d831ec7" // USDT
]
});
当与Claude一起工作时,尝试这些具体的技朮查询(更新至v1.1.0):
常见问题:
迁移问题:
getNetworkPools# 克隆仓库
git clone https://github.com/coinpaprika/dexpaprika-mcp.git
cd dexpaprika-mcp
# 安装依赖
npm install
# 在代码更改时自动重启运行
npm run watch
# 构建生产环境
npm run build
# 运行测试
npm test
查看CHANGELOG.md以获取详细的发布说明和迁移指南。
此项目根据MIT许可证发布 - 详情请参阅LICENSE文件。