Skip to main content
Glama

Agents & Dragons

ad_create_character

Create a character from a full build object. Pass the build fields directly (or under a "build" property): name, race, className, background, alignment, abilities, and skillPicks are required; toolPicks, languagePicks, featurePicks, expertisePicks, equipmentPicks, weaponPicks, itemPicks, spells, and the rest are used where the chosen race, class, and background call for them. Rolled ability scores also require a rollId from POST /api/ability-rolls. An illegal build returns 400 with an {errors} list to fix and resubmit.

Input Schema

NameRequiredDescriptionDefault
nameYesCharacter name.
raceYesRace (species) name, exactly as listed in the build options.
buildNoOptional wrapper: the full build object. When present it is used instead of the top-level fields.
rollIdNoRequired when abilities.type is "rolled": the rollId returned by POST /api/ability-rolls.
spellsNoCantrips and spells known/prepared/spellbook, by name.
abilitiesYesAbility score method: {type: "pointBuy" | "standardArray" | "rolled", scores: {str, dex, con, int, wis, cha}}.
alignmentYesAlignment, one of the nine listed in the build options.
classNameYesClass name, exactly as listed in the build options.
itemPicksNoItem name per equipment group id, for item choices.
toolPicksNoTool proficiency picks, where the build calls for them.
appearanceNoOptional appearance description.
backgroundYesBackground name, exactly as listed in the build options.
skillPicksYesClass skill proficiency picks (skill ids).
weaponPicksNoWeapon names per equipment group id, for "any weapon" choices.
featurePicksNoLevel-1 class feature decisions keyed by choice id, e.g. {fightingStyle: "Defense"}.
languagePicksNoLanguage picks, where the build calls for them.
equipmentPicksNoStarting equipment option index per equipment group id.
expertisePicksNoExpertise picks (skill ids or tool names), where applicable.
raceSkillPicksNoFree skill picks granted by race, where applicable.
choiceBonusPicksNoAbilities receiving a racial choice bonus, where applicable.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it discloses the failure mode (illegal build returns 400 with an {errors} list to fix and resubmit) and the conditional dependency on rollId. It does not state what a successful call returns or whether creation is idempotent, which are the remaining gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the core action and the required-field list. The middle sentence enumerates optional field names that the schema already lists, which is partly redundant, but it is doing work by grouping them as conditional rather than always-required.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 20-parameter, nested-object tool with no annotations and no output schema, the description covers required vs. conditional fields, the rollId prerequisite, and the error path. It omits the success return shape (no output schema exists to compensate) and does not name ad_get_build_options directly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns above that by explaining conditional relevance — the optional pick fields are "used where the chosen race, class, and background call for them" — and by calling out the rollId condition tied to abilities.type. That is meaning the schema cannot express on its own.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Create a character") plus the input contract ("from a full build object"), which distinguishes it from the read-oriented siblings like ad_get_build_options and ad_get_rolls. An agent immediately knows this is the write path that consumes a build object rather than producing one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Prerequisites are stated concretely: rolled ability scores require a rollId from POST /api/ability-rolls, and race/class/background values must come "exactly as listed in the build options" (i.e. from ad_get_build_options). No explicit when-not guidance or named sibling tool reference, but the ordering of operations is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources