✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

RandomUser MCP Server

An MCP server that provides enhanced access to the randomuser.me API with additional features like custom formatting, password generation, and weighted nationality distribution.

Installation

Clone the repository:

git clone https://github.com/rycid/randomuserMCP.git
cd randomuserMCP

# Install dependencies
npm install

# Build the project
npm run build

Usage

Add to your MCP settings file (claude_desktop_config.json or cline_mcp_settings.json):

{
  "mcpServers": {
    "randomuser": {
      "command": "node",
      "args": ["path/to/randomuserMCP/build/index.js"]
    }
  }
}

Available Tools

get_random_user

Get a single random user with customizable options.

{
  "gender": "female",
  "nationality": "US",
  "fields": {
    "mode": "include",
    "values": ["name", "email", "phone"]
  },
  "format": {
    "type": "json",
    "structure": {
      "flattenObjects": true,
      "nameFormat": "full"
    }
  },
  "password": {
    "charsets": ["special", "upper", "lower", "number"],
    "minLength": 8,
    "maxLength": 12
  }
}

get_multiple_users

Get multiple random users with weighted nationality distribution.

{
  "count": 10,
  "nationality": ["US", "GB", "FR"],
  "nationalityWeights": {
    "US": 0.5,
    "GB": 0.3,
    "FR": 0.2
  },
  "fields": {
    "mode": "include",
    "values": ["name", "email", "nat"]
  },
  "format": {
    "type": "csv",
    "csv": {
      "delimiter": ",",
      "includeHeader": true
    }
  }
}

Output Formats

The server supports multiple output formats:

JSON (default)

  • Nested or flattened objects
  • Customizable name formats (full, first_last, separate)
  • Date formatting options (iso, unix, formatted)

CSV

  • Customizable delimiter
  • Optional headers
  • Automatically flattened data structure

SQL

  • Multiple dialect support (MySQL, PostgreSQL, SQLite)
  • Optional CREATE TABLE statements
  • Proper escaping and type handling

XML

  • Standard XML format
  • Nested data structure
  • Proper escaping of special characters

Field Selection

Include or exclude specific fields:

{
  "fields": {
    "mode": "include",  // or "exclude"
    "values": [
      "name",
      "phone",
      "email",
      "location",
      "picture",
      "dob",
      "login",
      "registered",
      "id",
      "cell",
      "nat"
    ]
  }
}

Supported Nationalities

  • AU: Australia
  • BR: Brazil
  • CA: Canada
  • CH: Switzerland
  • DE: Germany
  • DK: Denmark
  • ES: Spain
  • FI: Finland
  • FR: France
  • GB: United Kingdom
  • IE: Ireland
  • IN: India
  • IR: Iran
  • MX: Mexico
  • NL: Netherlands
  • NO: Norway
  • NZ: New Zealand
  • RS: Serbia
  • TR: Turkey
  • UA: Ukraine
  • US: United States

Development

# Install dependencies
npm install

# Build the project
npm run build

# Start in development mode (with watch mode)
npm run dev

# Start the server
npm start

License

MIT

Featured Templates

View More
Customer service
Service ERP
126 1188
AI Assistants
Image to text with Claude 3
151 1366
Verified Icon
AI Assistants
Speech to Text
137 1882

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.