Skip to main content
Glama

Embers: Tabletop RPG Toolkit

Search vault characters

vault_search_characters
Read-onlyIdempotent

Search PCs and NPCs (any character whose type is NOT the lowercase monster marker) the user owns, plus stock template characters. Use this to locate a player character or NPC the user has authored. Authored monsters are hidden — for creature stat blocks use the dedicated vault_search_monsters tool instead. Defaults to a compact summary shape (identification + image + class/race/background + linkGroup — the id tying a persona's per-ruleset linked sheets together; sheets sharing a linkGroup are the same persona in different rulesets); pass detail: 'full' to receive each character's full sheet (attributes, skills, rules, items, spells) inline.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoSubstring match on character name (case-insensitive). Use `^name$` for an exact match.
skipNoPagination offset; pair with `limit` to walk results.
sortNoComma-separated field list. Prefix with `-` for descending (e.g. `-updatedAt,name`).
typeNoCharacter type filter (substring, case-insensitive). '^PC$' / '^NPC$' for the common user-authored cases. To search authored monsters, use the dedicated `vault_search_monsters` tool — this character search hides them by default (the lowercase `monster` type marker is filtered out unless you opt in via that sibling tool).
limitNoPage size; defaults to 50 when omitted. Hard cap of 200.
detailNoResponse shape. 'summary' (default) returns identification + summary fields; 'full' returns the complete document shape (every field inline) that non-MCP clients receive by default.summary
rulesetNoRuleset code (e.g. '5th Edition', '5e24', 'PFRPG', 'Savage Worlds', 'Universal').

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultsNo
paginationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark the tool read-only, idempotent, and non-destructive, and the description adds genuinely useful behavior: authored monsters are hidden by default, stock templates are included, the default response is a compact summary, and full sheets are only returned when `detail='full'`. It also explains the non-obvious `linkGroup` persona-linkage semantics.

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 dense but every clause earns its place: scope, exclusion, alternative tool, default shape, `linkGroup` meaning, and the full-detail option. Key routing information is front-loaded before output-shape details.

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

Completeness5/5

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

With a 100%-covered input schema, an output schema, and safety annotations in place, the description covers the remaining decision-relevant context: what is searched, what is excluded, how to request full output, and how linked personas behave. No significant gap remains for correct invocation.

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 description coverage is 100%, so the baseline is 3; the description raises it by clarifying the `type` filter's 'NOT monster' behavior and by explaining what `detail:'full'` returns (full sheet inline). It doesn't separately discuss every parameter, but the schema already handles those, and the added semantics target the two least obvious ones.

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?

The description opens with a precise scope: search PCs and NPCs (defined as any character whose `type` is not the lowercase `monster` marker) the user owns, plus stock templates. It draws an explicit boundary against `vault_search_monsters`, so an agent can distinguish this tool at a glance without inspecting the schema.

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

Usage Guidelines5/5

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

It states the intended use ('locate a player character or NPC the user has authored') and gives an explicit when-not: authored monsters are hidden, so creature stat blocks should go to `vault_search_monsters`. The `type` parameter description reinforces this routing, leaving no ambiguity about alternatives.

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