secure_random_int
Generate cryptographically secure random integers within a specified range [0, upper_bound) for applications requiring reliable randomness. Ideal for secure and unbiased number generation.
Instructions
Generate a secure random integer below upper_bound.
Args: upper_bound: Upper bound (exclusive)
Returns: Random integer in range [0, upper_bound)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| upper_bound | Yes |
Implementation Reference
- src/random_number_mcp/server.py:109-119 (handler)MCP tool handler for 'secure_random_int', registered via @app.tool() decorator, delegates to the implementation in tools.py.@app.tool() def secure_random_int(upper_bound: int) -> int: """Generate a secure random integer below upper_bound. Args: upper_bound: Upper bound (exclusive) Returns: Random integer in range [0, upper_bound) """ return tools.secure_random_int(upper_bound)
- Core implementation of secure_random_int using secrets.randbelow for cryptographic randomness, with input validation.def secure_random_int(upper_bound: int) -> int: """Generate a secure random integer below upper_bound. Args: upper_bound: Upper bound (exclusive) Returns: Random integer in range [0, upper_bound) Raises: ValueError: If upper_bound <= 0 TypeError: If upper_bound is not an integer """ if not isinstance(upper_bound, int): raise TypeError("upper_bound must be an integer") if upper_bound <= 0: raise ValueError("upper_bound must be positive") return secrets.randbelow(upper_bound)