Dune数据查询服务

一个为AI代理提供直接访问Dune Analytics数据的MCP服务器,支持执行查询、发现表结构和表数据,并通过优化的类型安全接口管理保存的查询。

  • by Evan-Kim2028
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Evan-Kim2028/spice-mcp

使用说明

香料mcp

MCP服务器,为AI代理提供直接访问 沙丘分析 数据。执行查询、发现模式和表以及管理保存的查询——所有这些都是通过一个针对AI工作流程优化的干净、类型安全的界面完成的。

发现高品质餐桌:杠杆 沙丘咒语书Dune的官方GitHub存储库,其中包含精心策划的dbt模型,以展示经过验证的、可用于生产的表,并提供丰富的元数据。

为什么选择spice mcp?

  • 代理商友好:为使用模型上下文协议(MCP)的AI代理设计
  • 高质量发现:利用Dune Spellbook的GitHub存储库查找经过验证的、具有丰富元数据的生产就绪表
  • 高效:Polars-first管道使数据在需要之前保持惰性,从而减少内存使用
  • 发现:内置工具,从Dune API和Spellbook探索Dune广泛的区块链数据集
  • 类型安全:使用FastMCP的全类型参数和响应
  • 可复现的:自动查询历史记录和SQL工件存储

快速开始

  1. 安装:

    uv pip install spice-mcp
    
  2. 设置API密钥 (选择一种方法):

    • 选项A:创建一个 .env 项目根目录中的文件:
      echo "DUNE_API_KEY=your-api-key-here" > .env
      
    • 选项B:在shell中导出:
      export DUNE_API_KEY=your-api-key-here
      
  3. 与游标IDE一起使用: 添加到光标设置→ MCP服务器:

    {
      "name": "spice-mcp",
      "command": "spice-mcp",
      "env": {
        "DUNE_API_KEY": "your-dune-api-key-here"
      }
    }
    

备注:默认情况下启用查询历史记录。日志保存到 logs/queries.jsonl (或 ~/.spice_mcp/logs/queries.jsonl 如果不在项目目录中)。要自定义路径,请设置 SPICE_QUERY_HISTORY 和 SPICE_ARTIFACT_ROOT 环境变量。 管理操作(创建/更新/分叉/归档/取消归档)记录如下 action_type="admin_action" 并包括 query_id 为了可追溯性。

核心工具

工具 说明 关键参数
dune_query 按ID、URL或原始SQL执行查询 query (str), parameters (对象), limit (int), offset (int), format (preview|raw|metadata|poll), refresh (布尔), timeout_seconds (浮动)
dune_query_info 获取已保存查询的元数据 query (str-ID或URL)
dune_discover Dune API和Spellbook之间的统一发现(仅返回经过验证的表)。 利用Dune Spellbook GitHub存储库 高品质、精心策划的餐桌。 keyword (str
dune_describe_table 获取表的列元数据 schema (str), table (str)
dune_health_check 验证API密钥和配置 (无参数)
dune_query_create 创建新的已保存查询 name (str), query_sql (str), description (str), tags (列表), parameters (列表)
dune_query_update 更新已保存的现有查询 query_id (int), name (str), query_sql (str), description (str), tags (列表), parameters (列表)
dune_query_fork 分叉现有的已保存查询 source_query_id (int), name (str)
dune_query_archive 存档已保存的查询 query_id (int)
dune_query_unarchive 取消存档已保存的查询 query_id (int)

资源

  • spice:history/tail/{n} --查看查询历史的最后N行(1-1000)
  • spice:artifact/{sha} --通过SHA-256哈希检索存储的SQL

沙丘是什么?

沙丘 是一个加密数据平台,提供精心策划的区块链数据集和公共API。它将来自以太坊、Solana、Polygon和其他链的链上数据聚合到可查询的SQL表中。请参阅 沙丘文档 了解更多信息。

什么是沙丘咒语书?

沙丘咒语书 是Dune的官方GitHub存储库,其中包含数千个精心策划的dbt模型。这些模型代表了高质量、可生产的桌子,它们是:

  • 已验证:在归还之前,所有桌子都经过核实存在于沙丘
  • 有据可查:丰富的元数据,包括列描述和类型
  • 维护:沙丘社区和团队定期更新
  • 生产准备就绪:供整个生态系统的分析师和仪表板使用

spice mcp会自动克隆和解析Spellbook存储库以发现这些高质量的表,解析dbt配置块以解析实际的Dune表名,并在将其返回给您之前验证其存在。

安装

来自PyPI (推荐):

uv pip install spice-mcp

来源:

git clone https://github.com/Evan-Kim2028/spice-mcp.git
cd spice-mcp
uv sync
uv pip install -e .

需求:Python 3.13+

文档

许可证

看 许可证 文件以获取详细信息。