Random Number Mcp

io.github.zazencodes由 GitHub 帳號 zazencodes 發布v0.1.2更新於 Oct 24, 2026

Essential random number generation utilities from the Python standard library

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

本機 MCP 伺服器,為助理提供隨機數工具:整數、浮點數、加權抽取、洗牌、取樣與安全權杖。

可以做什麼
在指定範圍內產生偽隨機整數與浮點數。從清單中依選用權重抽取項目、無放回抽取若干不重複項目,或回傳打亂順序的新清單。產生加密安全的十六進位權杖,以及小於上限的安全隨機整數。一般工具使用 Python 的 random 模組,安全工具使用 secrets 模組。
適用情境
適合助理需要擲骰、模擬、測試資料、隨機取樣或洗牌,以及在本機產生安全權杖與金鑰材料,而不是由模型自行編造的情境。
執行需求
以本機 stdio 程序在使用者電腦上執行,透過 uvx 從 PyPI 套件 random-number-mcp 啟動。需要 Python 3.10+ 與 uv 套件管理員。未宣告驗證、環境變數或標頭。
安裝前請注意
只有安全工具(secure_token_hex、secure_random_int)具備加密安全性,一般工具不適合產生權杖或金鑰。產生的權杖會回傳給助理,可能出現在對話紀錄中,用於真實金鑰時應視為已曝光。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Random Number Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Random Number MCP

Essential random number generation utilities from the Python standard library, including pseudorandom and cryptographically secure operations for integers, floats, weighted selections, list shuffling, and secure token generation.

Looking for the agent skill version? random-number-skills implements the same random number generation strategy as an agent skill instead of an MCP server.

Demo Video

https://github.com/user-attachments/assets/303a441a-2b10-47e3-b2a5-c8b51840e362

[Random Number MCP server]

Tools

ToolPurposePython function
random_intGenerate random integersrandom.randint()
random_floatGenerate random floatsrandom.uniform()
random_choicesChoose items from a list (optional weights)random.choices()
random_shuffleReturn a new list with items shuffledrandom.sample()
random_sampleChoose k unique items from populationrandom.sample()
secure_token_hexGenerate cryptographically secure hex tokenssecrets.token_hex()
secure_random_intGenerate cryptographically secure integerssecrets.randbelow()

Setup

Claude Desktop

Add this to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

json
{  "mcpServers": {    "random-number": {      "command": "uvx",      "args": ["random-number-mcp"]    }  }}

Tool Reference

random_int

Generate a random integer between low and high (inclusive).

Parameters:

  • low (int): Lower bound (inclusive)
  • high (int): Upper bound (inclusive)

Example:

json
{  "name": "random_int",  "arguments": {    "low": 1,    "high": 100  }}

random_float

Generate a random float between low and high.

Parameters:

  • low (float, optional): Lower bound (default: 0.0)
  • high (float, optional): Upper bound (default: 1.0)

Example:

json
{  "name": "random_float",  "arguments": {    "low": 0.5,    "high": 2.5  }}

random_choices

Choose k items from a population with replacement, optionally weighted.

Parameters:

  • population (list): List of items to choose from
  • k (int, optional): Number of items to choose (default: 1)
  • weights (list, optional): Weights for each item (default: equal weights)

Example:

json
{  "name": "random_choices",  "arguments": {    "population": ["red", "blue", "green", "yellow"],    "k": 2,    "weights": [0.4, 0.3, 0.2, 0.1]  }}

random_shuffle

Return a new list with items in random order.

Parameters:

  • items (list): List of items to shuffle

Example:

json
{  "name": "random_shuffle",  "arguments": {    "items": [1, 2, 3, 4, 5]  }}

random_sample

Choose k unique items from population without replacement.

Parameters:

  • population (list): List of items to choose from
  • k (int): Number of items to choose

Example:

json
{  "name": "random_sample",  "arguments": {    "population": ["a", "b", "c", "d", "e"],    "k": 2  }}

secure_token_hex

Generate a cryptographically secure random hex token.

Parameters:

  • nbytes (int, optional): Number of random bytes (default: 32)

Example:

json
{  "name": "secure_token_hex",  "arguments": {    "nbytes": 16  }}

secure_random_int

Generate a cryptographically secure random integer below upper_bound.

Parameters:

  • upper_bound (int): Upper bound (exclusive)

Example:

json
{  "name": "secure_random_int",  "arguments": {    "upper_bound": 1000  }}

Security Considerations

This package provides both standard pseudorandom functions (suitable for simulations, games, etc.) and cryptographically secure functions (suitable for tokens, keys, etc.):

  • Standard functions (random_int, random_float, random_choices, random_shuffle): Use Python's random module - fast but not cryptographically secure
  • Secure functions (secure_token_hex, secure_random_int): Use Python's secrets module - slower but cryptographically secure

Development

Prerequisites

  • Python 3.10+
  • uv package manager

Setup

bash
# Clone the repositorygit clone https://github.com/example/random-number-mcpcd random-number-mcp
# Install dependenciesuv sync --dev
# Run testsuv run pytest
# Run lintinguv run ruff check --fixuv run ruff format
# Type checkinguv run mypy src/

MCP Client Config

json
{  "mcpServers": {    "random-number-dev": {      "command": "uv",      "args": [        "--directory",        "<path_to_your_repo>/random-number-mcp",        "run",        "random-number-mcp"      ]    }  }}

Note: Replace <path_to_your_repo>/random-number-mcp with the absolute path to your cloned repository.

Building

bash
# Build packageuv build
# Test installationuv run --with dist/*.whl random-number-mcp

Release Checklist

  1. Update Version:

    • Increment the version number in pyproject.toml, src/random_number_mcp/__init__.py, and server.json.
  2. Update Changelog:

    • Add a new entry in CHANGELOG.md for the release.

      • Draft notes with coding agent using git diff context.
      Update the @CHANGELOG.md for the latest release.List all significant changes, bug fixes, and new features.Here's the git diff:[GIT_DIFF]
    • Commit along with any other pending changes.

  3. Create GitHub Release:

    • Draft a new release on the GitHub UI.
      • Tag release using UI.
    • The GitHub workflow will automatically build and publish the package to PyPI.

Testing with MCP Inspector

For exploring and/or developing this server, use the MCP Inspector npm utility:

bash
# Install MCP Inspectornpm install -g @modelcontextprotocol/inspector
# Run local development server with the inspectornpx @modelcontextprotocol/inspector uv run random-number-mcp
# Run PyPI production server with the inspectornpx @modelcontextprotocol/inspector uvx random-number-mcp

MCP Registry

mcp-name: io.github.zazencodes/random-number-mcp

License

MIT License - see LICENSE file for details.

來源:README.md,提交 575338c

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分