Skip to main content
Glama

Random Number MCP

by zazencodes
MIT License
3
  • Apple

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.

📺 Demo Video

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

🎲 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

{ "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:

{ "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:

{ "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:

{ "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:

{ "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:

{ "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:

{ "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:

{ "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

# Clone the repository git clone https://github.com/example/random-number-mcp cd random-number-mcp # Install dependencies uv sync --dev # Run tests uv run pytest # Run linting uv run ruff check --fix uv run ruff format # Type checking uv run mypy src/

MCP Client Config

{ "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

# Build package uv build # Test installation uv run --with dist/*.whl random-number-mcp

Release Checklist

  1. Update Version:
    • Increment the version number in pyproject.toml and src/__init__.py.
  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:

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

📝 License

MIT License - see LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Production-ready MCP server that provides LLMs with essential random generation abilities, including random integers, floats, choices, shuffling, and cryptographically secure tokens.

  1. 📺 Demo Video
    1. 🎲 Tools
      1. 🔧 Setup
        1. Claude Desktop
      2. 📋 Tool Reference
        1. random_int
        2. random_float
        3. random_choices
        4. random_shuffle
        5. random_sample
        6. secure_token_hex
        7. secure_random_int
      3. 🔒 Security Considerations
        1. 🛠️ Development
          1. Prerequisites
          2. Setup
          3. MCP Client Config
          4. Building
          5. Release Checklist
        2. Testing with MCP Inspector
          1. 📝 License
            1. 🤝 Contributing
              1. 📚 Links

                Related MCP Servers

                • -
                  security
                  A
                  license
                  -
                  quality
                  A MCP server enabling LLMs to roll dice
                  Last updated -
                  1
                  1
                  Python
                  MIT License
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  An MCP server that provides LLMs access to other LLMs
                  Last updated -
                  4
                  14
                  12
                  JavaScript
                  MIT License
                • -
                  security
                  F
                  license
                  -
                  quality
                  An MCP server that implements a structured workflow for LLM-based coding, guiding development through feature clarification, documentation generation, phased implementation, and progress tracking.
                  Last updated -
                  8
                  TypeScript
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  An MCP server that enables LLMs to interact with Moodle platforms to manage courses, students, assignments, and quizzes through natural language commands.
                  Last updated -
                  7
                  7
                  JavaScript
                  MIT License
                  • Apple

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/zazencodes/random-number-mcp'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server