使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 构建的海龟汤游戏服务器。它提供谜题资源、游戏规则 Prompt 模板和谜题操作工具,旨在帮助用户通过支持 MCP 协议的 LLM 客户端与服务器进行互动式的海龟汤游戏。用户可以向 LLM 客户端提问,服务器根据谜题内容和游戏规则进行回答,引导用户逐步解开谜题。
主要功能点
- 谜题资源管理: 提供谜题的存储和访问,支持通过 'puzzles://{puzzle_title}' 格式的资源 URI 获取指定谜题。
- 游戏规则 Prompt 模板: 内置 'game_rules' Prompt 模板,为 LLM 提供清晰的海龟汤游戏规则,确保 LLM 能够理解并扮演游戏主持人的角色。
- 谜题操作工具:
- 'get_prompt': 获取完整的海龟汤游戏玩法说明,方便用户和 LLM 理解游戏规则。
- 'get_puzzle': 根据谜题标题获取特定谜题的完整内容,用于加载和选择要进行游戏的谜题。
- 'list_puzzles_tool': 列出所有可用的谜题列表,方便用户浏览和选择。
安装步骤
- 克隆仓库: 首先,你需要将 GitHub 仓库克隆到本地。
git clone https://github.com/wangyafu/haiguitangmcp/ cd haiguitangmcp - 安装依赖: 使用 'uv sync' 命令安装项目依赖。确保你已安装 Python 和 uv。
uv sync
服务器配置
MCP 服务器需要配置在 MCP 客户端中。以下是在 MCP 客户端中配置 'haiguitang-mcp' 服务器的示例配置 (JSON 格式),你需要将这段配置添加到你的 MCP 客户端的服务器配置中。
{ "servers": { "haiguitang-mcp": { // 服务器名称,客户端内唯一标识 "type": "stdio", // 连接类型,本项目使用 stdio "command": "uv", // 启动服务器的命令,这里使用 uv "args": [ // 启动命令的参数 "--directory", // 指定工作目录参数 "E:\\haiguitangmcp\\haiguitang_mcp", // 服务器代码所在目录,请替换为你的实际路径,注意使用双反斜杠或单斜杠 "run", // uv 的 run 命令,用于运行 Python 脚本 "server.py" // 服务器启动脚本名称 ] } } }
注意:
- '"E:\haiguitangmcp\haiguitang_mcp"' 需要替换为你本地 'haiguitang_mcp' 目录的实际路径。请根据你的项目存放位置修改。
- 如果你的 MCP 客户端配置格式不同,请参考客户端的文档进行相应配置,但核心配置信息('type', 'command', 'args')是类似的。
基本使用方法
- 启动服务器: 在 MCP 客户端中配置并启动 'haiguitang-mcp' 服务器。客户端会根据配置的命令和参数启动 'server.py',建立与服务器的连接。
- 客户端交互: 在 MCP 客户端中,你可以:
- 调用 'list_puzzles_tool' 工具列出所有谜题。
- 调用 'get_puzzle' 工具并传入谜题标题,获取特定谜题的内容。
- 使用 'game_rules' Prompt 模板,让 LLM 获取游戏规则。
- 基于获取的谜题和规则,与 LLM 进行对话,开始海龟汤游戏。你可以像正常玩海龟汤游戏一样向 LLM 提问,LLM (作为海龟汤服务器) 会根据谜题内容和游戏规则进行回答。
示例交互流程:
用户在 MCP 客户端中:
- 请求调用 'list_puzzles_tool',服务器返回可用谜题列表。
- 用户选择一个谜题标题,例如 "忠诚的狗"。
- 用户请求调用 'get_puzzle' 工具,参数为 "忠诚的狗",服务器返回 "忠诚的狗" 谜题的详细内容。
- 用户使用 'game_rules' Prompt 模板初始化 LLM 的角色设定。
- 用户开始向 LLM 提问,例如 "谜题中有人死了吗?",LLM 基于服务器的谜题信息和游戏规则进行回答,例如 "是"。
- 用户继续提问和推理,直到解开谜题。
通过以上步骤,你就可以使用 'haiguitang-mcp' 服务器,在 MCP 客户端上与 LLM 进行海龟汤游戏。
信息
分类
AI与计算