使用说明

该仓库包含多个独立的 MCP 服务器实现,每个服务器都通过 Dialect Blink API 提供对特定 Solana 生态应用(如 Jupiter, Raydium, Drift 等)功能的访问。此处以 Jupiter Swap 服务器为例进行说明。

项目简介

该项目旨在将各种 Solana 生态应用的功能封装成符合 Model Context Protocol (MCP) 标准的服务器,使 LLM 客户端能够以结构化方式访问和调用这些区块链操作。每个服务器专注于一个或一组特定操作,例如代币交易、质押、借贷或永续合约操作。

主要功能点

  • 代币兑换 (Swap): 允许通过 Jupiter DEX 在 Solana 网络上进行代币之间的兑换。
  • 工具调用 (Tool Execution): 暴露标准化的工具接口,供 MCP 客户端(如 LLM 应用)调用,执行链上操作。
  • 通过 Dialect Blink 集成: 利用 Dialect Blink API 与 Solana 上的各种 DeFi 协议进行交互。
  • 能力声明: 通过 MCP 协议向客户端声明可用的工具、输入参数及其描述。

安装步骤

该仓库中的每个 MCP 服务器都是一个独立的 Python 应用,需要单独安装和运行。

  1. 确保您的系统安装了 Python 3.10 或更高版本。
  2. 安装 'uv' 包管理器:请参考 uv 官方文档进行安装。
  3. 克隆该 GitHub 仓库到本地:
    git clone https://github.com/darkresearch/dialect-mcps.git
  4. 进入您想要运行的特定服务器目录,例如 Jupiter Swap 服务器:
    cd dialect-mcps/jupiter/swap
  5. 安装该服务器所需的依赖:
    uv sync
  6. 创建 '.env' 文件并配置必要的环境变量。根据服务器的不同,通常需要配置 'BLINK_CLIENT_KEY' 和 'BIN_UUID'。请查阅对应子目录下的 README 文件获取详细的环境变量配置信息。

服务器配置

MCP 服务器是为 MCP 客户端提供服务的后台应用。MCP 客户端(例如集成 MCP 功能的 LLM 应用)需要配置如何启动和连接到这个服务器。通常,这涉及到指定服务器的可执行命令、参数和必要的环境变量。

一个典型的 MCP 客户端配置会包含以下信息(具体格式取决于客户端):

  • 服务器名称 (server name): 用于标识此 MCP 服务器,例如 '"Jupiter Swap MCP"'。
  • 启动命令 (command): 启动服务器脚本的命令,例如 '["python", "main.py"]'。
  • 命令参数 (args): 传递给启动命令的额外参数(如果需要)。
  • 环境变量 (env): 启动进程所需的环境变量,例如 '{ "BLINK_CLIENT_KEY": "您的密钥", "BIN_UUID": "您的 UUID" }'。

MCP 客户端会使用这些配置信息来启动服务器进程,并通过标准输入/输出 (stdio) 或其他协议与服务器进行 JSON-RPC 通信。

基本使用方法

一旦 MCP 服务器被 MCP 客户端启动并成功连接,客户端就可以通过 JSON-RPC 调用服务器暴露的工具。

例如,对于 Jupiter Swap 服务器,客户端可以构造一个 JSON-RPC 请求来调用名为 'jupiter_swap' 的工具,并提供交易所需的参数(如 'token_in', 'token_out', 'amount', 'tx_sender_pubkey')。服务器接收到请求后,将执行相应的 Python 函数,通过 Dialect Blink API 与 Jupiter 协议交互,处理交易逻辑,并将结果(包括交易信息或错误)通过 JSON-RPC 响应返回给客户端。

用户与 LLM 的交互(例如“我想用 0.1 SOL 换取 DARK 代币”)会被 LLM 客户端理解,并转化为对 MCP 服务器工具的结构化调用。

信息

分类

网页与API