Information
Dune Query MCP
一个现代化的桥梁,通过模型控制协议(MCP)将Dune Analytics的数据连接到智能代理。
概述
dune-query-mcp 使区块链数据分析能够无缝集成到您的AI应用程序中。通过利用Dune Analytics强大的查询功能与模型控制协议相结合,该服务允许LLMs和其他AI系统通过简单的自然语言交互访问链上数据。
核心功能
数据检索工具
工具描述使用场景get_latest_result检索预先计算的查询结果快速访问现有数据run_query按需执行查询实时数据分析
数据格式
所有数据以CSV格式返回,提供:
通用兼容性
大多数数据分析工具易于解析
人类可读的输出
开始使用
系统要求
Python 3.10 或更高版本
有效的Dune Analytics API密钥 (在这里获取)
快速设置
克隆并导航
bash
git clone https://github.com/olaxbt/dune-query-mcp-mcp.git
cd dune-query-mcp
环境设置
bash
创建虚拟环境
python -m venv .venv
激活它
source .venv/bin/activate # Linux/Mac
或者
.venvScriptsactivate # Windows
安装依赖
pip install -r requirements.txt
配置API访问
bash
复制示例配置
cp .env.example .env
使用您的API密钥编辑
echo "DUNE_API_KEY=your_key_here" > .env
使用方法
运行服务
dune-query-mcp 提供两种运行方式:
作为MCP服务
bash
python run.py
这将在默认端口8000上启动MCP服务。
作为Web服务器
bash
python flask_app.py
这提供了对Web界面和REST API端点的访问。
与应用程序集成
MCP客户端集成
python
from mcp.client import Client
连接到Dune-query-mcp
client = Client("http://localhost:8000")
获取查询的最新结果
csv_data = client.call("get_latest_result", query_id=1234567)
执行查询
query_results = client.call("run_query", query_id=1234567)
REST API
端点方法描述/dune/healthGET服务健康检查/dune/query/\{query_id\}/latestGET检索最新结果/dune/query/\{query_id\}/executePOST运行查询
示例REST调用:
bash
curl -X GET http://localhost:5000/dune/query/1234567/latest
架构
dune-query-mcp/
├── app/ # 应用程序核心
│ ├── init.py # Flask & MCP 设置
│ ├── routes/ # API 端点定义
│ │ └── dune_routes/ # Dune Analytics 路由
│ │ └── templates/ # Web 界面
│ └── templates/ # Web 界面
├── config/ # 配置文件
├── logs/ # 运行日志
├── flask_app.py # Web 服务器入口点
├── run.py # MCP 服务器入口点
└── requirements.txt # 依赖项
高级配置
环境变量
变量目的默认值DUNE_API_KEYDune API 的身份验证无 (必需)PORT服务器端口8000
性能调优
对于高容量查询执行:
bash
为长时间运行的查询设置更高的超时时间
export DUNE_QUERY_TIMEOUT=600 # 10分钟(秒)
故障排除
常见问题及解决方案:
问题解决方案API 密钥错误确保 .env 文件存在且包含有效密钥CSV 解析问题检查查询是否返回正确的表格数据
贡献
欢迎贡献!请遵循以下步骤:
叉分仓库
创建一个功能分支:git checkout -b feature/amazing-feature
提交你的更改:git commit -am 'Add some amazing feature'
推送到分支:git push origin feature/amazing-feature
打开一个 Pull Request
许可证
本项目在 MIT 许可证下发布。详情请参阅 LICENSE 文件。
致谢
使用 FastMCP 构建
查询功能由 Dune Analytics 提供支持