createavataaars
Server Details
Make avatars in seven illustrated styles, like Avataaars and Notionists, as PNG, SVG or share link.
- Status
- Healthy
- Uptime
- 100.0% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 8 tools
Each tool targets a distinct action: list resources (styles, attributes, templates), create from attributes, deterministic name-based avatar, random selection, render to image, and share link. No two tools overlap in purpose, and descriptions clarify inputs and outputs.
Most tools follow a consistent snake_case verb_noun pattern (create_avatar, list_attributes, render_avatar, share_link). However, avatar_for_name and random_avatar deviate from the verb_noun convention, though they remain clear and snake_case.
8 tools are well-scoped for an avatar generation service, covering discovery, creation, rendering, and sharing without redundancy. The count is appropriate for the domain.
The surface covers the full workflow: listing styles/attributes/templates, creating avatars (custom, random, deterministic), rendering to multiple formats, and generating share links. No obvious missing operations for an avatar service.
Available Tools
8 toolsavatar_for_nameAvatar for a nameCRead-onlyIdempotentInspect
One approved avatar for a name or a user id, the same every time.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| style | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and a closed world, so safety and determinism are covered. The description restates determinism ('the same every time') and adds only the small extra notion of an 'approved' (curated) avatar set, with no fallback or error behavior described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the key qualifier (determinism) comes first. It is efficient, though its brevity leaves coverage gaps that a slightly longer description could have filled.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only tool with no output schema, the description omits what is actually returned (URL, image data, identifier), what happens for an unknown name, and what the style parameter does. Annotations cover the safety profile, but the operational picture is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description only clarifies that the 'name' parameter also accepts a user id — a genuine addition beyond the schema. The seven-value 'style' enum is left entirely unexplained in both schema and description, with no default or effect of each style, so the gap is only partially compensated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'One approved avatar for a name or a user id' makes clear it returns a single avatar keyed by an identifier, and 'the same every time' implicitly separates it from the deterministic-vs-random sibling random_avatar. It is a noun phrase without an explicit verb, but the resource and behavior are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use statement and no alternative named, even though siblings create_avatar, random_avatar and render_avatar overlap heavily. 'The same every time' only hints at a stability-oriented use case and leaves the agent to infer the choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_avatarCreate avatarCRead-onlyIdempotentInspect
An avatar from attributes, or from a code plus changes. Attribute names and values come from list_attributes; null or "off" switches a part off.
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | ||
| style | No | ||
| attributes | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety/determinism profile is covered. The description adds one genuine behavioral fact — that null or "off" disables a part — but says nothing about what the tool returns (an image, URL, code?) or how the two input modes interact, which is what an agent would still need.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with essentially no waste, and the primary input mode (attributes) is stated before the alternative (code plus changes). It loses a point only because the fragment style makes the operation itself grammatically implicit.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter, open-world-false, non-destructive avatar builder with a nested attributes object and no output schema, the description covers the attribute path and the off-switch but omits the style parameter, the meaning of the code pattern, and whether a rendered result is returned. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the full burden. It explains that attribute names/values must come from list_attributes and that null/"off" turns a part off, and implies that a code can be modified — a helpful gloss on the opaque code pattern. It nonetheless leaves the style enum and the shape of the returned code completely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys the core function — producing an avatar — and identifies two input modes (attribute set vs. code plus changes). However, it is a sentence fragment with no verb, and it never distinguishes itself from siblings such as random_avatar, avatar_for_name, or render_avatar. An agent can infer the purpose but not confidently place it in the sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It points the agent at list_attributes as the source of valid attribute names/values, which is a useful prerequisite, but gives no guidance on when to prefer this tool over random_avatar, avatar_for_name, or render_avatar, nor any condition under which it should not be used. Usage is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_attributesList attributesCRead-onlyIdempotentInspect
A style's attributes and every value, with names.
| Name | Required | Description | Default |
|---|---|---|---|
| style | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is covered by structured data. The description adds no behavioral context of its own (no return shape detail, no note that the style must exist, no ordering or pagination info), so this is essentially a restatement rather than added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler, and the subject (a style's attributes) is front-loaded. The trailing phrase 'with names' is slightly cryptic but the whole thing is compact and earns its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trivial read-only, one-parameter tool with no output schema, the description gives only a hint of the return shape ('attributes and every value, with names'). It is minimal but arguably sufficient for such a simple call, leaving the response structure underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single 'style' parameter, and the description never explains it. The enum values are self-describing, but the description does not state that the argument must come from list_styles or what happens on an invalid style, so it fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (a style's attributes and their values) with an implied list verb, which is distinct from list_styles and list_templates. It is understandable but terse, and it never explicitly contrasts itself with those sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus list_styles, list_templates, or render_avatar. A reader can infer it is a discovery step before rendering, but nothing in the text supplies a trigger condition or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_stylesList stylesBRead-onlyIdempotentInspect
The avatar styles, with what each can change.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds a small amount of behavioral context by implying the response includes what each style can change, but it does not describe return format, pagination, or ordering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, which is good for a simple no-parameter tool, but it reads as an incomplete fragment rather than a front-loaded, self-contained statement. It avoids waste but sacrifices clarity for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with annotations covering safety, the description is minimally adequate: it indicates the subject matter and hints at returned change capabilities. However, with no output schema, it should more clearly state that it returns the full set of avatar styles and what the associated capabilities mean.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics for the description to clarify. The baseline for a no-parameter tool is 4, and the existing empty schema is fully sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment 'The avatar styles, with what each can change' names the resource but omits a verb such as 'list' and does not clearly distinguish this tool from siblings like list_attributes or list_templates. An agent can infer it returns avatar styles with some change metadata, but the purpose is only vaguely stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use guidance, no exclusions, and no alternative tools. It does not tell an agent when to choose list_styles over list_attributes, list_templates, or other avatar-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_templatesList templatesCRead-onlyIdempotentInspect
A style's templates as codes and previews.
| Name | Required | Description | Default |
|---|---|---|---|
| style | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds only that results are 'codes and previews', which is modest extra context about content, not behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely short — a single sentence fragment. It is front-loaded and wastes no words, but it is under-specified rather than genuinely concise, since brevity comes at the cost of stating a verb or scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should carry the return-value burden; 'codes and previews' partially does that. However, for a tool in a crowded sibling set with no usage guidance, the definition leaves the agent to guess when this is preferable to list_styles.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but there is a single required parameter whose enum values ('avataaars', 'notionists', 'lorelei', etc.) are self-describing style names. The description's phrase 'a style's templates' links the parameter to the resource, but adds no syntax or constraint detail beyond the enum.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun fragment — 'A style's templates as codes and previews' — that largely restates the name 'list_templates' without a verb or scope statement. It hints at the return shape (codes and previews) but gives no way to distinguish this from siblings such as list_styles or list_attributes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no alternatives, and no prerequisites are stated. The agent must infer from the name alone that this is the way to enumerate templates for a given style.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
random_avatarRandom avatarCRead-onlyIdempotentInspect
A template at random, as a code and a preview.
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | ||
| exclude | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds that the output contains a code and a preview, which is useful given there is no output schema, but it says nothing about how the random selection is scoped (e.g., whether 'exclude' alters distribution) or about the slight tension between 'at random' and idempotentHint=true.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no filler, so it is structurally tight. But the brevity is under-specification rather than efficiency, and the unusual 'as a code and a preview' construction is not front-loaded with a clear verb.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with zero schema documentation and no output schema, the description should at minimum explain what 'style' and 'exclude' do and how the return value is shaped. It hints at the return shape but leaves both parameters and all sibling differentiation unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no parameter information at all. The 'exclude' parameter has an opaque regex pattern and the 'style' enum has seven values, neither of which is explained; the description's mention of 'code and a preview' describes output, not inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description conveys that a template is chosen at random and that the result includes a code plus a preview, which is more than a restatement of the name. However, the phrasing is oblique ('A template at random, as a code and a preview') and gives no clue how it differs from siblings like avatar_for_name, render_avatar, or create_avatar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no mention of any alternative tool. An agent cannot tell from this text whether random_avatar or avatar_for_name is the right entry point, nor what preconditions exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_avatarRender avatarBRead-onlyIdempotentInspect
A code as PNG, SVG or WebP at a size, up to 1024 px. Pass codes to render several in one call (up to 20). Every file carries its credit inside.
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | ||
| size | No | ||
| codes | No | ||
| format | No | png |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive, and closed-world, so the safety profile is covered. The description adds genuinely useful behavior: the 1024 px ceiling, the 20-item batch cap, and that output files embed their own credit. It stops short of saying what the call actually returns (binary, URL, base64), which matters since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with no filler, and the format/size information is front-loaded ahead of the batching hint. The telegraphic grammar of 'A code as PNG, SVG or WebP' costs a little immediate readability but wastes no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only render tool with no output schema, the description should at minimum tell the agent what comes back from the call, and it does not — only that each file carries its credit. The code concept itself (what a valid code is, where one comes from) is also left unexplained, so an agent new to this API has a gap before it can invoke confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must carry the load, and it does mention all four parameters in passing: code (the avatar code), format (PNG/SVG/WebP), size (in px, up to 1024), and codes (batch up to 20). It still omits the code pattern, the 256 default and 16 minimum, and whether 'code' and 'codes' are mutually exclusive, so the compensation is partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description makes clear this converts an existing avatar 'code' into an image file in one of three formats, which is a specific verb+resource statement. It does not distinguish itself from siblings like create_avatar or random_avatar, so an agent must infer that this one only renders pre-existing codes rather than generating new ones.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one concrete usage hint — pass the plural 'codes' to render several at once, up to 20 — which implies when to batch rather than call repeatedly. However, it never states when to choose this tool over create_avatar, random_avatar, or avatar_for_name, and gives no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- Changed
create_avatar1 field changed- changed
Input schema / properties / code / patternPrevious value: -"^[0-9A-Za-z]{10}(?:[0-9a-f]{6})?$"New value: +"^[0-9A-Za-z]{10}(?:[0-9a-f]{6}(?:[0-9a-f]{6}[0-9]{3})?)?$"
- Changed
random_avatar1 field changed- changed
Input schema / properties / exclude / patternPrevious value: -"^[0-9A-Za-z]{10}(?:[0-9a-f]{6})?$"New value: +"^[0-9A-Za-z]{10}(?:[0-9a-f]{6}(?:[0-9a-f]{6}[0-9]{3})?)?$"
- Changed
render_avatar1 field changed- changed
Input schema / properties / code / patternPrevious value: -"^[0-9A-Za-z]{10}(?:[0-9a-f]{6})?$"New value: +"^[0-9A-Za-z]{10}(?:[0-9a-f]{6}(?:[0-9a-f]{6}[0-9]{3})?)?$"
- Changed
share_link1 field changed- changed
Input schema / properties / code / patternPrevious value: -"^[0-9A-Za-z]{10}(?:[0-9a-f]{6})?$"New value: +"^[0-9A-Za-z]{10}(?:[0-9a-f]{6}(?:[0-9a-f]{6}[0-9]{3})?)?$"
8 tool updates
- First observed
avatar_for_name - First observed
create_avatar - First observed
list_attributes - First observed
list_styles - First observed
list_templates - First observed
random_avatar - First observed
render_avatar - First observed
share_link
Related MCP Connectors
- PrimetaOAuthai.primeta
Give your AI a face, a voice, and a personality. 3D avatars with custom personas.
Generate AI influencer photos, face swaps, and character sheets with a consistent face.
Generate AI talking-head videos with custom characters and voices.
Create professional SVG artwork, icons and vector logos from a prompt, or vectorize any image.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceGenerates customizable avatar SVGs via the DiceBear API by selecting styles and seeds, and lists available avatar styles for selection.11 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables people and AI agents to generate personalized animated robot avatars with accessories, colors, expressions, fluid bodies, and badges, then export them as SVG, PNG, or GIF through local MCP tools.7 npm6MIT
- AlicenseAqualityDmaintenanceTurns plain-language descriptions into animated SVGs with a live preview and conversational editing.8MIT
- AlicenseNot gradedqualityDmaintenanceGenerate AI UGC video ads from any product URL in 5 minutes. Realistic AI avatars, natural voiceover, proven ad templates. No actors, no editing, no experience required.25 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.