
Random Number MCP
Production-ready MCP server that provides LLMs with essential random generation abilities, including random integers, floats, choices, shuffling, and cryptographically secure tokens.
Tools
random_int
Generate a random integer between low and high (inclusive). Args: low: Lower bound (inclusive) high: Upper bound (inclusive) Returns: Random integer between low and high
random_float
Generate a random float between low and high. Args: low: Lower bound (default 0.0) high: Upper bound (default 1.0) Returns: Random float between low and high
random_choices
Choose k items from population with replacement, optionally weighted. Args: population: List of items to choose from k: Number of items to choose (default 1) weights: Optional weights for each item (default None for equal weights) Returns: List of k chosen items
random_shuffle
Return a new list with items in random order. Args: items: List of items to shuffle Returns: New list with items in random order
secure_token_hex
Generate a secure random hex token. Args: nbytes: Number of random bytes to generate (default 32) Returns: Hex string containing 2*nbytes characters
secure_random_int
Generate a secure random integer below upper_bound. Args: upper_bound: Upper bound (exclusive) Returns: Random integer in range [0, upper_bound)
README
Random Number MCP
Production-ready MCP server that provides LLMs with essential random generation abilities --- built entirely on Python's standard library.
🎲 Tools
Tool | Purpose | Python function |
---|---|---|
random_int |
Generate random integers | random.randint() |
random_float |
Generate random floats | random.uniform() |
random_choices |
Choose items from a list (optional weights) | random.choices() |
random_shuffle |
Return a new list with items shuffled | random.sample() |
secure_token_hex |
Generate cryptographically secure hex tokens | secrets.token_hex() |
secure_random_int |
Generate cryptographically secure integers | secrets.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 fromk
(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]
}
}
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'srandom
module - fast but not cryptographically secure - Secure functions (
secure_token_hex
,secure_random_int
): Use Python'ssecrets
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
uv run ruff format
# Type checking
uv run mypy src/
Building
# Build package
uv build
# Test installation
uv run --with dist/*.whl random-number-mcp
Notes
- The server communicates via STDIO using JSON-RPC 2.0 protocol.
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.
📚 Links
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.