# Personas by Draftbit > Personas is a free avatar generator by Draftbit (https://draftbit.com). > It composes flat, playful SVG avatars from mix-and-match features (skin, > hair, facial hair, body, eyes, mouth, nose, accessories, background) with > customizable colors. Every avatar is addressable by URL — no accounts, no > server-side state. MIT licensed: https://github.com/draftbit/avatar-generator ## Build an avatar URL Compose query parameters on https://personas.draftbit.com/ : - Style params: hair, facialHair, body, eyes, mouth, nose, accessories - Color params: skinColor, hairColor, facialHairColor, bodyColor, accessoriesColor, bgColor (6-digit hex, no '#'; any hex is valid) - Valid style names and curated palettes: GET https://personas.draftbit.com/api/options - Omitted params are randomized on page load; invalid values are ignored. Example: https://personas.draftbit.com/?hair=Mohawk&hairColor=F2C94C&eyes=Hearts&mouth=Grin&body=Stripes&bodyColor=E24553&bgColor=D9CCFF Short share links look like https://personas.draftbit.com/ where the code is a compact base64url encoding of the same configuration (generated by the site's share buttons or the MCP server; not meant to be hand-written). ## Avatar images (SVG) - GET https://personas.draftbit.com/api/avatar.svg?hair=Mohawk&hairColor=F2C94C Same params as above; omitted params use a fixed default. Returns image/svg+xml. - GET https://personas.draftbit.com/api/avatar.svg?code= — render a shared avatar. - GET https://personas.draftbit.com/api/avatar.svg?random=1 — random avatar (uncached). - Invalid params return HTTP 400 with JSON details naming valid values. ## MCP server POST https://personas.draftbit.com/mcp — a stateless Model Context Protocol server (streamable HTTP). Tools: list_avatar_options, generate_avatar, random_avatar. generate_avatar accepts the same fields as the URL params and returns a share URL, an SVG image URL, and a markdown embed. ## Notes for agents - Avatars are deterministic: identical params or codes always produce the same image, so URLs are safe to cache and embed. - The option lists in /api/options are append-only over time; names never change meaning. - Attribution appreciated but not required (MIT).