Rand MCP服务器使用说明

项目简介

Rand MCP服务器是一个基于Model Context Protocol (MCP) 的后端实现,旨在为LLM客户端提供各种随机数据生成工具。它通过标准化的MCP协议与客户端通信,允许LLM应用安全、可扩展地获取随机数据。

主要功能点

  • UUID生成: 生成符合RFC 4122版本4标准的UUID。
  • 随机数生成: 在指定范围内生成随机整数。
  • 高斯分布随机数生成: 生成符合高斯(正态)分布的随机数(0-1之间)。
  • 随机字符串生成: 生成指定长度和字符集的随机字符串,支持字母数字、数字、大小写字母和特殊字符集。
  • 密码生成: 生成包含大小写字母、数字和特殊字符的强密码。
  • 骰子roll点: 根据标准骰子表示法(如 "2d6")进行roll点,并返回每次roll点结果和总和。
  • 扑克牌抽牌: 从标准52张扑克牌中抽牌,支持指定抽牌数量,并能维护牌堆状态以便连续抽牌。

安装步骤

  1. 安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm (Node 包管理器)。
  2. 安装 mcp-rand 包: 可以通过 npm 在本地或全局安装 'mcp-rand' 包。
    • 本地安装 (推荐):
      npm install mcp-rand
    • 全局安装:
      npm install -g mcp-rand

服务器配置

要将 'mcp-rand' 服务器集成到MCP客户端,你需要在客户端的配置文件中添加服务器信息。以下是一个示例配置,你需要根据你的实际安装路径进行调整。

{
  "mcpServers": {
    "mcp-rand": {
      "command": "node",
      "args": ["/path/to/your/project/node_modules/mcp-rand/build/index.js"],
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

配置参数说明:

  • '"mcpServers"': MCP客户端服务器配置的根节点。
  • '"mcp-rand"': 服务器名称,可以自定义,用于在客户端中引用该服务器。
  • '"command": "node"': 启动服务器的命令,这里使用 'node' 运行 JavaScript 代码。
  • '"args": ["/path/to/your/project/node_modules/mcp-rand/build/index.js"]': 启动命令的参数,指向 'mcp-rand' 包的入口文件 'index.js' 的构建后路径。 请务必将 '/path/to/your/project' 替换为你实际的项目路径。 如果是全局安装,可以使用 'which mcp-rand' 或 'where mcp-rand' 查找 'mcp-rand' 的可执行文件路径,并将其替换到 'args' 中,例如 '["/usr/local/bin/mcp-rand"]'。
  • '"disabled": false': 设置服务器是否禁用,'false' 表示启用。
  • '"alwaysAllow": []': 允许始终访问的工具列表,默认为空,表示需要根据客户端的权限设置进行访问控制。

基本使用方法

  1. 启动 MCP 服务器: 在安装 'mcp-rand' 的目录下,或者如果全局安装,则在任何目录下,运行以下命令启动服务器:

    npx mcp-rand

    或 (如果全局安装):

    mcp-rand

    服务器默认通过标准输入/输出 (stdio) 与客户端通信。

  2. 在 MCP 客户端中调用工具: 使用 MCP 客户端 SDK (如 'modelcontextprotocol/sdk'),通过 'client.callTool()' 方法调用 'mcp-rand' 服务器提供的工具。

    例如,在客户端代码中生成 UUID:

    import { Client } from '@modelcontextprotocol/sdk/client';
    import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio';
    
    async function main() {
      const transport = new StdioClientTransport();
      const client = new Client();
      await client.connect(transport);
    
      const uuidResult = await client.callTool('generate_uuid', {}, 'mcp-rand');
      console.log("Generated UUID:", uuidResult.content[0].text);
    
      await client.close();
    }
    
    main();

    注意: ''mcp-rand'' 参数需要与你在客户端配置文件中 '"mcpServers"' 下配置的服务器名称一致。 你可以参考 'README.md' 中的 "Example Usage" 部分,了解如何调用其他工具,例如 'generate_random_number', 'roll_dice', 'draw_cards' 等。

通过以上步骤,你就可以成功安装、配置和使用 Rand MCP服务器,为你的LLM应用提供丰富的随机数据生成能力。

信息

分类

AI与计算