{
  "name": "id.generate",
  "group": "crypto",
  "summary": "Generate UUIDv4, UUIDv7, ULID, nanoid or short random IDs.",
  "description": "Cryptographically random identifiers from the edge. UUIDv7 and ULID embed a millisecond timestamp and sort lexicographically in creation order, which makes them the right default for database primary keys; UUIDv4 is fully random and does not sort. The embedded timestamp is decoded back for you.",
  "keywords": [
    "uuid",
    "uuid v4",
    "uuid v7",
    "ulid",
    "nanoid",
    "generate id",
    "random id",
    "primary key"
  ],
  "endpoint": "https://fluentedi.com/v1/id/generate",
  "mcp_name": "id_generate",
  "makes_network_request": false,
  "parameters": {
    "type": "object",
    "properties": {
      "type": {
        "description": "Identifier format.",
        "type": "string",
        "enum": [
          "uuid4",
          "uuid7",
          "ulid",
          "nanoid",
          "hex",
          "numeric"
        ],
        "default": "uuid4"
      },
      "count": {
        "description": "How many to generate.",
        "type": "integer",
        "default": 1,
        "minimum": 1,
        "maximum": 500
      },
      "length": {
        "description": "Length for nanoid, hex and numeric types.",
        "type": "integer",
        "default": 21,
        "minimum": 1,
        "maximum": 256
      },
      "uppercase": {
        "description": "Uppercase the output where the format allows it.",
        "type": "boolean",
        "default": false
      }
    },
    "required": [],
    "additionalProperties": false
  },
  "examples": [
    {
      "description": "One UUIDv4",
      "url": "https://fluentedi.com/v1/id/generate",
      "args": {}
    },
    {
      "description": "Sortable database keys",
      "url": "https://fluentedi.com/v1/id/generate?type=uuid7&count=5",
      "args": {
        "type": "uuid7",
        "count": 5
      }
    },
    {
      "description": "Short URL slugs",
      "url": "https://fluentedi.com/v1/id/generate?type=nanoid&length=10&count=3",
      "args": {
        "type": "nanoid",
        "length": 10,
        "count": 3
      }
    }
  ],
  "suggestion": null
}