Skip to main content
Glama
rbilleci

bsh-mcp

by rbilleci

character_create

Generates a complete player character by rolling attributes, applying backgrounds, and linking Discord user; rejects invalid selections.

Instructions

Create one player character and write the sheet.

Rolls 2d6 per attribute, applies background increases, sets hit points equal to CON, sets the Doom die to d6, assigns starting coins, and links the Discord user to the character. Rejects an illegal background selection without writing.

origin: barbarian, civilised, or decadent. backgrounds: exactly three background ids, at least two from the chosen origin, at most one marked unique. armour: none, light, medium, or heavy.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
armourNonone
originYes
shieldNo
weaponsNo
languageNo
backgroundsYes
discord_user_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden, and it delivers: it details rolls per attribute, background increases, HP=CON, Doom die set to d6, starting coins, Discord linking, and the atomic rejection of illegal backgrounds without writing. This prevents false assumptions about partial side effects.

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

Conciseness5/5

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

The description is front-loaded with a one-sentence purpose followed by compact bullet-like constraints. Every sentence earns its place, and the validation rules are scannable without unnecessary prose.

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

Completeness3/5

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

For a complex creation tool with eight parameters and no output schema, the description covers the mechanics and validation rules well. But it does not state what the tool returns, whether it requires an active campaign context, or whether creating again overwrites an existing character, leaving meaningful gaps.

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

Parameters3/5

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

The description adds essential meaning for origin, backgrounds, and armour by giving allowed values and exact background constraints. However, schema_description_coverage is 0% and several parameters such as weapons, shield, language, name, and discord_user_id are not described beyond their titles/defaults, so the compensation is partial.

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?

Opens with 'Create one player character and write the sheet,' giving a specific verb-resource pair and a clear outcome. The 'player' qualifier distinguishes it from NPC-focused siblings, and the listed side effects make the intended operation unmistakable.

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?

The description clearly frames when to use the tool: when the user wants to create a single player character and persist its sheet. It does not explicitly name alternatives or exclusions, but the core context is clear enough for an agent to select it over tools like character_advance or npc_create.

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