使用说明
项目简介
R2D2 是一个数据分析助手服务器,旨在为用户提供便捷的区块链数据查询和分析能力。它集成了 Dune Analytics 和 OpenAI 的 API,允许用户通过自然语言提问,R2D2 服务器会利用 OpenAI 将自然语言转换为 SQL 查询,然后在 Dune Analytics 上执行查询,并将结果返回给用户。同时,R2D2 还提供 API 密钥管理、查询历史记录和仪表盘功能,方便用户管理和使用数据分析服务。
主要功能点
- 自然语言查询转 SQL: 使用 OpenAI 将用户的自然语言查询转换为 Dune Analytics 可执行的 SQL 查询。
- Dune Analytics 数据查询: 集成 Dune Analytics API,执行 SQL 查询并获取区块链数据。
- API 密钥管理: 支持存储和管理 Dune Analytics 和 OpenAI 的 API 密钥。
- 查询历史记录: 记录用户的查询历史,方便回顾和复用。
- 仪表盘功能: 允许用户创建和管理数据仪表盘,将常用的查询结果可视化展示。
- HTTP API 接口: 提供基于 HTTP 的 API 接口,方便 MCP 客户端或其他应用集成。
安装步骤
- 安装 Go 环境: 确保你的机器上已经安装了 Go 语言环境 (建议 Go 1.16 或更高版本)。
- 克隆仓库: 将 r2d2 仓库克隆到本地:
git clone https://github.com/blockopsnetwork/r2d2 cd r2d2 - 构建服务器: 在仓库根目录下,使用 Go 命令构建服务器程序:
go build -o r2d2 - 运行服务器: 运行构建生成的可执行文件 'r2d2'。你可以通过设置 'PORT' 环境变量来指定服务器端口,默认端口为 '5000'。例如:
PORT=8080 ./r2d2
服务器配置
MCP 客户端需要配置服务器连接信息才能与 R2D2 服务器通信。以下是 R2D2 服务器的 MCP 客户端配置信息示例 (JSON 格式):
{ "serverName": "R2D2 Server", "command": "r2d2", "args": [], "host": "http://0.0.0.0:5000" }
配置参数说明:
- 'serverName': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器连接。
- 'command': 启动服务器的命令。这里假设 'r2d2' 可执行文件与 MCP 客户端在同一目录下,或者在系统的 PATH 环境变量中可以找到。如果不在同一目录,需要填写 'r2d2' 可执行文件的完整路径。
- 'args': 启动服务器命令的参数。R2D2 服务器默认情况下不需要额外的启动参数,所以这里为空数组 '[]'。
- 'host': R2D2 服务器的访问地址。默认情况下,服务器监听 '0.0.0.0:5000',如果服务器运行在本地,并且 MCP 客户端也访问本地服务器,则可以使用 'http://0.0.0.0:5000'。如果服务器运行在远程机器上,需要将 '0.0.0.0' 替换为服务器的 IP 地址或域名。
注意: MCP 客户端需要能够访问到 R2D2 服务器的网络地址。
基本使用方法
- 启动 R2D2 服务器 (参考安装步骤)。
- 配置 MCP 客户端,将上述 JSON 配置信息添加到 MCP 客户端的服务器列表中。
- 在 MCP 客户端中连接 R2D2 服务器。
- 在 MCP 客户端中使用自然语言提问,例如 "以太坊最近 7 天的交易量是多少?"。
- R2D2 服务器会处理查询,调用 OpenAI 进行 SQL 分析,调用 Dune Analytics 执行查询,并将结果返回给 MCP 客户端进行展示。
- 可以通过 API 密钥管理界面配置 Dune Analytics 和 OpenAI 的 API 密钥,或者通过设置环境变量 'DUNE_API_KEY' 和 'OPENAI_API_KEY' 来配置。
- 可以使用仪表盘功能创建和管理数据看板,方便长期监控和分析数据。
信息
分类
AI与计算