项目简介

RandomWeb3MCP 是一个基于 Model Context Protocol (MCP) 构建的 Web3 随机数生成服务。它利用以太坊虚拟机 (EVM) 区块链的哈希值作为熵源,提供了一系列可验证、可靠的随机数生成工具,适用于游戏、金融、测试等多种场景。

主要功能点

  • 链上可验证的随机数生成: 所有随机数均基于区块链哈希生成,保证了结果的公平性和可验证性,避免了传统中心化随机数服务的信任问题。
  • 多样化的随机数工具: 提供丰富的随机数生成工具,包括基础随机数、随机数组、带权重的随机选择、特征随机分配、概率分布随机数、随机事件触发、随机种子生成、数组洗牌、随机坐标生成以及稀有度分配等,满足各种复杂场景的需求。
  • 简单易用的API接口: 通过 MCP 协议以 JSON-RPC 格式提供工具调用接口,易于集成到各类 LLM 应用中。
  • 灵活的参数配置: 每个工具都支持丰富的参数配置,例如随机数范围、数组长度、权重列表、概率分布参数等,并支持使用 Salt 值增加随机性。

安装步骤

  1. 克隆仓库

    git clone https://github.com/suxiongye/random-web3-mcp.git
    cd random-web3-mcp
  2. 安装 Python 包

    确保你的 Python 环境已安装 pip 和 virtualenv(推荐)。

    pip install -e .

    或者如果未使用 virtualenv:

    pip install .

服务器配置

MCP 服务器需要配置在 MCP 客户端中才能使用,例如 Cursor 或 tico 等支持 MCP 协议的客户端。以下是在 Cursor 中配置 'random-web3-mcp' 服务的 JSON 配置示例:

{
  "mcpServers": {
    "random-web3-mcp": {
      "command": "uv",
      "args": ["--directory", "/path/to/random-web3-mcp", "run", "main.py"]
    }
  }
}

配置参数说明:

  • '"random-web3-mcp"': 服务器名称,可以自定义,用于在客户端中标识和调用该服务。
  • '"command": "uv"': 启动服务器的命令,这里假设你使用 'uv' 运行 Python 代码。如果使用 'python',则修改为 '"command": "python"'。
  • '"args"': 启动命令的参数列表。
    • '"--directory"': 指定服务器代码所在的目录,请将 '/path/to/random-web3-mcp' 替换为 你本地仓库 'random-web3-mcp' 文件夹的绝对路径
    • '"run"': 'uv run' 的子命令,用于运行 Python 模块或脚本。
    • '"main.py"': 指定要运行的 Python 脚本为 'main.py',即服务器的入口文件。

注意:

  • 请根据你的实际环境修改 'command' 和 'args' 中的路径。
  • 确保 MCP 客户端(如 Cursor)能够找到并执行 'uv' 或 'python' 命令。
  • 首次运行可能需要一些时间来启动服务器和建立连接。

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端中,你可以通过自然语言指令或特定的调用方式来使用 'random-web3-mcp' 提供的各种随机数生成工具。

例如,在 Cursor 中,你可以通过 '@tool_code' 或类似的机制来调用这些工具,并传递相应的参数。具体的调用方式和参数格式请参考各个工具的文档说明和 MCP 客户端的使用指南。

示例 (假设在 Cursor 中使用):

# 生成一个 1 到 100 的随机数
random_number = @tool_code generate_basic_random(min_value=1, max_value=100)

# 生成一个长度为 5 的随机数组
random_array = @tool_code generate_random_array(array_length=5)

# 进行带权重的随机选择
options = ["A", "B", "C"]
weights = [500, 300, 200]
selected_option = @tool_code generate_random_weighted(options=options, weights=weights)

请根据你使用的 MCP 客户端的具体文档来了解如何调用和使用这些工具。

信息

分类

AI与计算