使用说明

项目简介

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 客户端或其他应用集成。

安装步骤

  1. 安装 Go 环境: 确保你的机器上已经安装了 Go 语言环境 (建议 Go 1.16 或更高版本)。
  2. 克隆仓库: 将 r2d2 仓库克隆到本地:
    git clone https://github.com/blockopsnetwork/r2d2
    cd r2d2
  3. 构建服务器: 在仓库根目录下,使用 Go 命令构建服务器程序:
    go build -o r2d2
  4. 运行服务器: 运行构建生成的可执行文件 '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 服务器的网络地址。

基本使用方法

  1. 启动 R2D2 服务器 (参考安装步骤)。
  2. 配置 MCP 客户端,将上述 JSON 配置信息添加到 MCP 客户端的服务器列表中。
  3. 在 MCP 客户端中连接 R2D2 服务器
  4. 在 MCP 客户端中使用自然语言提问,例如 "以太坊最近 7 天的交易量是多少?"。
  5. R2D2 服务器会处理查询,调用 OpenAI 进行 SQL 分析,调用 Dune Analytics 执行查询,并将结果返回给 MCP 客户端进行展示。
  6. 可以通过 API 密钥管理界面配置 Dune Analytics 和 OpenAI 的 API 密钥,或者通过设置环境变量 'DUNE_API_KEY' 和 'OPENAI_API_KEY' 来配置。
  7. 可以使用仪表盘功能创建和管理数据看板,方便长期监控和分析数据。

信息

分类

AI与计算