使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 的服务器实现,它利用 OpenRPC 协议提供 JSON-RPC 功能。该服务器作为 LLM 应用的后端,主要提供工具 (Tools) 能力,使得 LLM 能够通过调用预设的工具与外部 JSON-RPC 服务进行交互,实现诸如远程方法调用、服务发现等功能。

主要功能点

  • JSON-RPC 方法调用 (rpc_call): 允许 LLM 客户端指示服务器调用任意 JSON-RPC 服务器上的指定方法。用户只需提供目标服务器的 URL、要调用的方法名以及方法所需的参数,即可通过 LLM 客户端触发远程调用并获取返回结果。
  • JSON-RPC 服务发现 (rpc_discover): 允许 LLM 客户端查询指定 JSON-RPC 服务器所支持的方法列表。该功能基于 OpenRPC 规范的 'rpc.discover' 方法实现,帮助 LLM 客户端了解目标服务器的能力。

安装步骤

  1. 环境准备: 确保您的机器上已安装 Node.js 和 npm (Node.js 包管理器)。
  2. 下载代码: 从 GitHub 仓库 'MCP-Mirror/shanejonas_openrpc-mpc-server' 克隆代码到本地,或下载 ZIP 包并解压。
  3. 安装依赖: 打开终端,进入代码仓库根目录,运行命令 'npm install',安装项目所需的依赖包。
  4. 构建项目: 在终端中运行命令 'npm run build',编译 TypeScript 代码,生成可执行的 JavaScript 文件。

服务器配置

此 MCP 服务器设计为与 MCP 客户端协同工作。以 Claude Desktop 为例,您需要在 Claude Desktop 的配置文件 ('claude_desktop_config.json') 中添加服务器配置信息。配置文件通常位于:

  • MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

在配置文件中,'mcpServers' 字段下添加如下 JSON 配置,用于告知 Claude Desktop 如何启动和连接此 MCP 服务器:

{
  "mcpServers": {
    "openrpc": {
      "command": "node",
      "args": ["/path/to/openrpc-mcp-server/build/index.js"]
    }
  }
}

配置参数说明:

  • '"openrpc"': 服务器名称 (server name),客户端使用此名称来标识和引用该服务器。您可以自定义名称,但需要与客户端配置保持一致。
  • '"command": "node"': 启动命令 (command),指定用于启动服务器进程的命令。这里使用 'node' 命令来运行 JavaScript 文件。
  • '"args": ["/path/to/openrpc-mcp-server/build/index.js"]': 命令参数 (args),传递给启动命令的参数,以数组形式表示。'"/path/to/openrpc-mpc-server/build/index.js"' 是服务器入口文件 'index.js' 的路径。请务必将其替换为服务器文件在您本地文件系统中的实际路径。

基本使用方法

  1. 启动服务器: 配置完成后,启动 Claude Desktop 或其他 MCP 客户端,客户端将根据配置文件自动启动 MCP 服务器。
  2. LLM 指令: 在 LLM 客户端中,您可以使用自然语言指令来指示 LLM 使用 'rpc_call' 或 'rpc_discover' 工具。
    • 调用 JSON-RPC 方法: 例如,您可以提示 LLM "调用方法 'getUser' 在服务器 'http://example.com/rpc' 上,参数为 '{"id": 123}'"。服务器会将此指令转换为 JSON-RPC 请求发送到 'http://example.com/rpc',并将返回结果提供给 LLM。
    • 发现服务方法: 例如,您可以提示 LLM "查询 'http://example.com/rpc' 这个服务器有哪些 JSON-RPC 方法?"。服务器将调用 'rpc.discover' 方法查询服务描述,并将方法列表返回给 LLM。

通过以上步骤,您就可以利用此 MCP 服务器,使 LLM 具备与外部 JSON-RPC 服务交互的能力,从而扩展 LLM 的应用场景。

信息

分类

网页与API