Skip to main content
Glama
QianJue-CN

Random.org MCP Server

by QianJue-CN

generateIntegers

Generate true random integers within a specified range for applications requiring genuine randomness. Specify quantity, minimum, maximum, and format options.

Instructions

Generate true random integers within a specified range

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nYesNumber of integers to generate (1-10,000)
minYesMinimum value (inclusive)
maxYesMaximum value (inclusive)
replacementNoAllow replacement (duplicates)
baseNoNumber base (2, 8, 10, or 16)

Implementation Reference

  • MCP tool handler for generateIntegers: calls RandomOrgClient.generateIntegers and formats response as MCP content block.
    private async handleGenerateIntegers(args: any) { const result = await this.randomOrgClient.generateIntegers(args); return { content: [ { type: 'text', text: JSON.stringify({ data: result.random.data, completionTime: result.random.completionTime, bitsUsed: result.bitsUsed, bitsLeft: result.bitsLeft, requestsLeft: result.requestsLeft, advisoryDelay: result.advisoryDelay, }, null, 2), }, ], }; }
  • Input schema (JSON Schema) for the generateIntegers tool, defining parameters n, min, max, replacement, base.
    inputSchema: { type: 'object', properties: { n: { type: 'number', description: 'Number of integers to generate (1-10,000)', minimum: 1, maximum: 10000, }, min: { type: 'number', description: 'Minimum value (inclusive)', minimum: -1000000000, maximum: 1000000000, }, max: { type: 'number', description: 'Maximum value (inclusive)', minimum: -1000000000, maximum: 1000000000, }, replacement: { type: 'boolean', description: 'Allow replacement (duplicates)', default: true, }, base: { type: 'number', description: 'Number base (2, 8, 10, or 16)', enum: [2, 8, 10, 16], default: 10, }, }, required: ['n', 'min', 'max'], },
  • src/server.ts:38-76 (registration)
    Registration of the generateIntegers tool in the MCP server's tools list, including name, description, and input schema.
    { name: 'generateIntegers', description: 'Generate true random integers within a specified range', inputSchema: { type: 'object', properties: { n: { type: 'number', description: 'Number of integers to generate (1-10,000)', minimum: 1, maximum: 10000, }, min: { type: 'number', description: 'Minimum value (inclusive)', minimum: -1000000000, maximum: 1000000000, }, max: { type: 'number', description: 'Maximum value (inclusive)', minimum: -1000000000, maximum: 1000000000, }, replacement: { type: 'boolean', description: 'Allow replacement (duplicates)', default: true, }, base: { type: 'number', description: 'Number base (2, 8, 10, or 16)', enum: [2, 8, 10, 16], default: 10, }, }, required: ['n', 'min', 'max'], }, },
  • RandomOrgClient method that validates params and makes the JSON-RPC request to Random.org API for generateIntegers.
    async generateIntegers(params: IntegerParams): Promise<IntegerResult> { this.validateIntegerParams(params); return this.makeRequest<IntegerResult>('generateIntegers', params); }
  • Validation helper for IntegerParams used in generateIntegers.
    private validateIntegerParams(params: IntegerParams): void { if (params.n < 1 || params.n > 10000) { throw new Error('n must be between 1 and 10,000'); } if (params.min < -1000000000 || params.min > 1000000000) { throw new Error('min must be between -1,000,000,000 and 1,000,000,000'); } if (params.max < -1000000000 || params.max > 1000000000) { throw new Error('max must be between -1,000,000,000 and 1,000,000,000'); } if (params.min >= params.max) { throw new Error('min must be less than max'); } if (params.base && ![2, 8, 10, 16].includes(params.base)) { throw new Error('base must be 2, 8, 10, or 16'); } }

Latest Blog Posts

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/QianJue-CN/TRUERandomMCP'

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