Skip to main content
Glama

list_objects

Lists Tabletop Simulator objects with their properties and optional name, type, tag, or tint filters; use each session because GUIDs change on load.

Instructions

List objects on the table: guid, name, description, type, tags, tint (hex), position, rotation, locked, resting. Optional filters: name (case-insensitive substring), type (e.g. "Dice"), tag, tint (hex, e.g. "bbbbbb"). GUIDs change when a game is loaded, so look objects up each session.

Input Schema

NameRequiredDescriptionDefault
tagNo
nameNo
tintNo
typeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations supplied, the description carries the burden and does most of it: it discloses the record shape returned, that name matching is case-insensitive substring, tint is a hex string, and critically that GUIDs are session-volatile. It never explicitly says the call is read-only or describes result limits, which keeps it from a 5.

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?

Two sentences, front-loaded with the resource and return shape, then the optional filters and the session caveat. Every clause carries information an agent needs; nothing is redundant with structured fields.

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?

No output schema exists, and the description compensates by enumerating the returned fields, which is exactly right. Filters are covered. What's missing is anything about ordering, result caps, or what 'tag' accepts, which matters for a list tool an agent may call repeatedly.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate entirely, and it does: all four parameters (name, type, tag, tint) are named with matching semantics, including an example value for type ("Dice") and the hex format for tint ("bbbbbb"). The only thin spot is tag, whose valid values are unstated, but every parameter is at least semantically defined.

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 objects on the table') and immediately enumerates the returned fields (guid, name, description, type, tags, tint, position, rotation, locked, resting). This is clearly distinguishable from the inspection/mutation siblings (inspect_object, move_object) without opening any schema.

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

Usage Guidelines3/5

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

Filter semantics are explained and there is useful workflow advice ('GUIDs change when a game is loaded, so look objects up each session'), which tells the agent to re-query rather than cache. However, it never states when to prefer this over inspect_object or move_object, and nothing is said about result size or pagination limits.

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