使用说明
项目简介
mcp-dice 是一个实现了 Model Context Protocol (MCP) 的服务器,专门为大型语言模型(LLMs)设计,提供掷骰子的功能。它允许 LLM 通过标准的骰子表示法(例如 '2d6'、'1d20+3')请求随机数,并返回详细的掷骰结果,包括每次掷骰的点数、总和以及可选的修正值。
主要功能点
- 支持标准骰子表示法: 能够解析和处理如 '1d6', '2d8+4', '3d10-2' 等常见的骰子表示法。
- 返回详细结果: 不仅返回总点数,还提供每次掷骰的具体点数,方便 LLM 进行更复杂的逻辑判断和应用。
- 易于集成: 可以方便地与支持 MCP 协议的 LLM 客户端集成,例如 Claude Desktop。
- 调试支持: 兼容 MCP Inspector,方便开发者调试和测试服务器。
安装步骤
- 安装 Smithery CLI: 如果希望通过 Smithery 自动安装到 Claude Desktop,首先需要安装 Smithery 的命令行工具。
npm install -g @smithery/cli - 安装 Dice Roller: 使用 Smithery CLI 安装 mcp-dice。
这个命令会自动下载并配置 Dice Roller 服务器,以便 Claude Desktop 可以识别和使用它。npx @smithery/cli install mcp-dice --client claude - 安装 uv: 根据仓库的 README,可能需要确保 'uv' 可用。uv 是一个快速的 Python 包安装和解析器。可以参考 uv 文档 进行安装。
服务器配置
对于 MCP 客户端(例如 Claude Desktop),需要配置 MCP 服务器的启动信息。以下是配置示例,可以直接添加到 Claude Desktop 的配置文件 'claude_desktop_config.json' 中。
配置信息 (JSON 格式):
{ "mcpServers": { "dice": { // 服务器名称,可以自定义,例如 "dice" "command": "uvx", // 启动服务器的命令,这里假设 uvx 可用,并且 mcp-dice 已安装 "args": ["mcp-dice"] // 命令参数,这里是 "mcp-dice",表示运行 mcp-dice 服务器 } } }
参数注释:
- '"dice"': 是服务器的名称,在客户端配置中用于标识这个骰子服务器。您可以自定义这个名称。
- '"command": "uvx"': 指定了启动 MCP 服务器的命令。'uvx' 是一个可以运行 Python 包的命令,假设 'mcp-dice' 包已经通过 'uv pip install mcp-dice' 或者 'pip install mcp-dice' 安装到了环境中,并且 'uvx' 命令可用。如果直接使用 'uv run mcp_dice.server' 或者 'python -m mcp_dice.server',则将 '"command"' 替换为 'uv' 或 'python',并在 '"args"' 中添加相应的参数。
- '"args": ["mcp-dice"]': 指定了传递给 'command' 的参数。 '"mcp-dice"' 作为参数传递给 'uvx' 命令,表示要运行 'mcp-dice' 这个 Python 包提供的服务器。
注意: 请根据您的实际 Python 环境和安装方式调整 'command' 和 'args'。如果使用虚拟环境,可能需要配置虚拟环境的 Python 路径。
基本使用方法
配置完成后,当 MCP 客户端(如 Claude Desktop)需要掷骰子时,它会向 mcp-dice 服务器发送请求。服务器接收请求后,会根据请求的骰子表示法生成随机数,并将结果以 JSON 格式返回给客户端。
例如,客户端可以请求掷一个 20 面的骰子:
客户端发送类似 "请帮我掷一个 1d20 的骰子" 的指令, Claude Desktop 等 MCP 客户端会自动识别并调用配置好的 mcp-dice 服务器来处理掷骰子请求,并将结果返回给用户。
命令行基本用法:
您也可以在命令行中直接运行 'mcp-dice' 服务器进行测试:
uvx mcp-dice
服务器启动后,它会监听来自 MCP 客户端的请求 (通过标准输入输出流)。虽然这个服务器主要是设计给 MCP 客户端使用,但开发者可以使用 MCP Inspector 等工具与其交互进行调试。
信息
分类
AI与计算