Skip to main content
Glama

List Characters

lab_list_characters
Read-only

List the character sheets in the FilmLab cast register (id, name, age, gender, project_name, prompt_prefix_en). Call this BEFORE lab_generate whenever a person must look the same across several images: pass the id you find here as character_refs instead of re-describing the person in every prompt. Optional search matches name or project name (substring, case-insensitive). It shows YOUR OWN characters plus the public catalog (sheets explicitly made public and bound to no project). Characters of other accounts' projects never appear — projects can be confidential. New characters are private. The register returns at most 50 sheets, newest first, and offers NO paging — 20 are shown here. total therefore counts at most 50: with more than 50 sheets it understates, and search is the only way to reach the older ones. Nobody there yet? Create a sheet with lab_create_character.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
searchNoSubstring of the character name or project name (case-insensitive)
previewNoAttach each sheet's reference portrait, downscaled to 512px. A cast list read as text is a list of names; seen as faces it is a cast. At most 4 per call. A sheet WITHOUT a reference image shows none — and that is the same emptiness lab_generate rejects, so an absent picture here is a finding, not a glitch.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / additionalProperties
      Added value: +false
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

With readOnlyHint already covering safety, the description adds substantial non-obvious behavior: visibility scope (own characters plus public catalog; other accounts' projects never appear, projects can be confidential; new characters are private), result limits (max 50, newest first, no paging, 20 shown, total understates), and that search is the only route to older sheets.

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?

Front-loaded with what the tool does and when to call it, then layers limits, privacy scope, and the fallback alternative. Dense but every sentence carries information; slightly long for a two-parameter read tool, keeping it just below the top mark.

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?

There is no output schema, so the description must carry the return contract, and it does: it lists returned fields, the 50-sheet ceiling, newest-first ordering, no paging, and why total can understate. Nothing needed to call or interpret the result is missing.

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?

Schema description coverage is 100%, so the baseline is 3; both the search semantics (substring, case-insensitive) and the preview constraints are already documented in the schema. The description restates that search is optional and is the only way to reach older sheets, which is context rather than new parameter meaning.

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 (list character sheets in the FilmLab cast register) and enumerates the returned fields (id, name, age, gender, project_name, prompt_prefix_en). This is easily distinguished from siblings like lab_get_character, lab_get_character_sheet, and lab_create_character.

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?

Gives an explicit trigger: 'Call this BEFORE lab_generate whenever a person must look the same across several images', and explains the mechanism (pass the id as character_refs instead of re-describing). It also names the alternative for the empty case ('Nobody there yet? Create a sheet with lab_create_character').

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