项目简介

该项目是一个I Ching(易经)卜卦服务,以Model Context Protocol (MCP) 服务器的形式运行,旨在为大型语言模型(LLM)客户端提供标准化的易经卜卦和解读功能。它采用了传统的三枚硬币卜卦法和权威的威尔海姆-贝恩斯(Wilhelm-Baynes)译本,能够生成卦象、解析卦辞、爻辞及相关意象。

主要功能点

  • 三枚硬币卜卦: 遵循传统方式随机生成易经卦象(乾、坤等64卦)。
  • 威尔海姆-贝恩斯译本: 提供完整卦象的名称、判断词、象辞和爻辞的详细解读。
  • 多种输入: 支持通过卦象数字(1-64)、Unicode 卦象字符(如䷀)、爻位数字序列(如'7,8,9,6,7,8')或变化卦表示法(如'32→34'或'䷟→䷡')来指定卦象。
  • MCP 工具: 通过 'cast_hexagram' 工具生成新卦象,通过 'interpret_reading' 工具获取详细解读。
  • 灵活输出: 支持简洁、完整、JSON 等多种格式输出,方便集成和解析。

安装步骤

  1. 安装 Rust 环境: 确保您的系统已安装 Rust 1.85.1 或更高版本,以及 Cargo (Rust 包管理器,随 Rust 一同安装)。您可以访问 Rust 官方网站 (https://www.rust-lang.org/) 获取安装指南。

  2. 通过 Cargo 安装 (推荐): 打开终端,运行以下命令安装 MCP 服务器及配套命令行工具:

    cargo install i-ching

    这会在您的系统 PATH 中安装 'i-ching' (命令行工具) 和 'i-ching-mcp-server' (MCP 服务器)。

  3. 从源代码构建安装 (备选): 如果您想从源代码编译,可以执行以下步骤:

    git clone https://github.com/threemachines/i-ching.git
    cd i-ching
    cargo install --path .

    完成安装后,'i-ching-mcp-server' 将作为可执行文件存在于您的系统 PATH 中。

服务器配置 (MCP 客户端用)

为了让您的MCP客户端(如Goose Desktop)能够连接并使用这个易经卜卦服务,您需要进行如下配置。这是一个JSON格式的配置示例,您需要将其添加到MCP客户端的扩展或服务器列表中:

{
  "id": "i-ching-divination", 
  "name": "I Ching 易经卜卦", 
  "description": "提供基于威尔海姆-贝恩斯译本的易经卜卦和详细解读服务。",
  "type": "STDIO", 
  "command": "i-ching-mcp-server", 
  "args": [], 
  "serverInfo": {
    "name": "i-ching",
    "version": "(由服务器运行时自动提供)",
    "description": "I Ching divination with Wilhelm-Baynes translation. Cast hexagrams and interpret readings using the complete classical text.",
    "instructions": "该MCP服务器提供易经卜卦工具。当LLM客户端请求卜卦或易经解读时:1) 使用 'cast_hexagram' 工具生成一个卦象,2) 使用 'interpret_reading' 工具获取威尔海姆-贝恩斯译本的解读文本,3) 结合用户的现代情境解读古代智慧。卦象的含义是永恒的——你的职责是将古典智慧与当代应用联系起来。请LLM保持平静和开放的心态,真诚和善意地进行卜卦。请确保用户在卜卦前已经明确提出了他们的问题。"
  }
}

配置说明:

  • 'id': 扩展的唯一标识符,可自定义,例如 'i-ching-divination'。
  • 'name': 在客户端界面中显示的名称,例如 'I Ching 易经卜卦'。
  • 'description': 对该服务的简要说明。
  • 'type': 通信协议类型,'STDIO' 表示通过标准输入输出进行通信。
  • 'command': 启动 'i-ching-mcp-server' 可执行文件的命令。如果您已通过 'cargo install' 安装,通常直接写 'i-ching-mcp-server' 即可。
  • 'args': 启动服务器所需的额外命令行参数。当前版本无需额外参数,可留空 '[]'。
  • 'serverInfo': 服务器的自我声明信息,LLM 客户端会读取这些信息以理解服务器的能力和使用指南。

基本使用方法

配置完成后,您的MCP客户端(如Goose Desktop)即可通过调用 'i-ching-mcp-server' 提供的工具进行卜卦。用户通常无需直接操作这些工具,只需向LLM提出自然语言请求。

  • 卜卦 (LLM 内部调用 'cast_hexagram' 工具): 当LLM需要进行卜卦时,它会调用 'cast_hexagram' 工具。

    • 作用: 使用三枚硬币法生成新的易经卦象。
    • 可选参数:
      • 'lines': 一个包含6个数字的数组(每个数字在6到9之间),用于指定具体的爻位值,而非随机生成。
    • LLM调用示例 (用户无需直接操作):
      {
        "name": "cast_hexagram",
        "arguments": {
          "lines": [7, 8, 9, 6, 7, 8] // 或省略此参数进行随机卜卦
        }
      }
  • 获取解读 (LLM 内部调用 'interpret_reading' 工具): LLM在获得卦象后,可以调用 'interpret_reading' 工具获取详细的威尔海姆-贝恩斯译本解读。

    • 作用: 获取指定卦象的详细解读,包括卦辞、象辞、判断和变爻解释。
    • 必要参数:
      • 'hexagram': 主卦的卦象数字 (1-64)。
    • 可选参数:
      • 'changing_lines': 变爻的位置数组 (1-6)。
      • 'transformed_hexagram': 变卦的卦象数字(如果有变爻)。
    • LLM调用示例 (用户无需直接操作):
      {
        "name": "interpret_reading",
        "arguments": {
          "hexagram": 32,
          "changing_lines": [2, 5],
          "transformed_hexagram": 34
        }
      }

    用户只需向LLM提出“我想卜卦”或“请为我解读易经”等请求,LLM便会通过这些工具与MCP服务器互动,并根据服务器返回的信息进行分析和回应。

信息

分类

AI与计算