mcpField
D
Dune Analytics MCP Server

Dune Analytics MCP Server

本地服务
github.com/ekailabs数据与分析277 周前更新

关于 Dune Analytics MCP Server

Dune Analytics MCP 服务为 AI Agent 提供链上数据查询,涵盖 DEX、EigenLayer 和 Solana 代币余额,并以结构化 JSON 返回结果。

主要功能

  1. 01查询链上 DEX 交易对指标
  2. 02查找链上最高流动性交易对
  3. 03获取 Solana 钱包代币余额
  4. 04查询 EigenLayer AVS 指标
  5. 05获取 AVS 运营者统计

适用场景

  1. 01比较指定链上交易对的指标
  2. 02查找某条链的高流动性交易对
  3. 03检查 Solana 钱包持有的代币
  4. 04分析 EigenLayer AVS 及其运营者

MCP 相关

作为 MCP 服务,向客户端提供 Dune Analytics 数据查询工具,结果以结构化 JSON 返回。需要 Dune Analytics API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Dune Analytics MCP 服务

一个 Model Context Protocol(MCP)服务,可将 Dune Analytics 数据接入 AI Agent,提供 DEX 指标、EigenLayer 运营者和 AVS 统计数据,以及 Solana 上的代币余额。该工具使用 Dune 提供的预设端点和回显端点。

功能

  • 工具:
    • get_dex_pair_metrics:获取指定链上给定代币对的基本元数据和统计数据
    • get_token_pairs_liquidity:查找指定链上 USD 流动性最高的代币对
    • get_svm_token_balances:获取 Solana 上指定钱包地址的代币余额
    • get_eigenlayer_avs_metrics:获取指定 AVS 的统计数据
    • get_eigenlayer_operator_metrics:获取指定 AVS 中所有运营者的统计数据
  • 数据格式:所有结果均以结构化 JSON 格式返回,便于处理

前置条件

  • Node.js 16+ 或 Bun 1.0+
  • 有效的 Dune Analytics API 密钥(可从 Dune Analytics 获取)

安装

  1. 克隆代码库:

    git clone https://github.com/ekailabs/dune-mcp-server.git
    cd dune-mcp-server
    
  2. 安装依赖项: 使用 Bun:

    bun install
    

    或使用 npm:

    npm install
    
  3. 设置环境变量: 根据 .env.example 在项目根目录创建 .env 文件:

    DUNE_API_KEY=your_api_key_here
    

    也可以将其设置为系统环境变量:

    export DUNE_API_KEY="your_api_key_here"
    

用法

运行服务

使用 Bun:

# Development mode with hot reload
bun dev

# Production mode
bun start

# Or build and run
bun build src/index.ts --outdir dist
bun dist/index.js

使用 npm:

# Development mode with hot reload
npm run dev

# Production mode
npm start

# Or build and run
npm run build
npm run start:prod
添加到 Claude for Desktop

若要与 Claude for Desktop 配合使用,请添加服务配置:

MacOS:~/Library/Application Support/Claude/claude_desktop_config.json Windows:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "dune": {
      "command": "bun",
      "args": [
        "/ABSOLUTE/PATH/TO/dune-mcp-server/src/index.ts",
        "stdio"
      ]
    }
  }
}
工具用法
  1. get_dex_pair_metrics(chain, token_pair)

    • 说明:获取给定代币对的基本元数据和统计数据
    • 输入:
      • chain(string)- 要获取 DEX 统计数据的区块链
      • token_pair(string)- 要获取 DEX 统计数据的代币对
    • 输出:包含 DEX 指标的 JSON 对象
  2. get_token_pairs_liquidity(chain)

    • 说明:识别指定链上 USD 流动性最高的代币对
    • 输入:chain(string)- 要获取 DEX 统计数据的区块链
    • 输出:包含排名最高的代币对指标的 JSON 对象
  3. get_svm_token_balances(wallet_address)

    • 说明:获取 Solana 区块链上指定钱包地址的余额
    • 输入:wallet_address(string)- 要查询余额的钱包地址
    • 输出:代币余额的 JSON 数组
  4. get_eigenlayer_avs_metrics(avs_name)

    • 说明:获取指定 AVS 的统计数据
    • 输入:avs_name(string)- 要查询统计数据的 AVS 名称
    • 输出:包含 AVS 指标的 JSON 对象
  5. get_eigenlayer_operator_metrics(avs_name)

    • 说明:获取指定 AVS 中所有运营者的统计数据
    • 输入:avs_name(string)- 要查询运营者统计数据的 AVS 名称
    • 输出:包含运营者指标的 JSON 对象
Claude for Desktop 中的示例指令
  • “请告诉我 ethereum 上 'USDC-WETH' 代币对的流动性。”
  • “显示 arbitrum 上流动性最高的代币对。”
  • “请绘制 EigenDA 运营者的质押分布图。”
  • “EigenDA AVS 上有多少名质押者?”

许可证

本项目采用 MIT License 授权 - 详情请参阅 LICENSE 文件。

运行评估

evals 包会加载一个 MCP 客户端,然后运行 index.ts 文件,因此测试之间无需重新构建。可以在 npx 命令前添加环境变量来加载它们。完整文档请参阅 此处。

OPENAI_API_KEY=your-key  npx mcp-eval src/evals/evals.ts src/index.ts

致谢

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。