List compositions
list_compositionsLists the compositions open in the session, and which one is on screen.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | The session token that connect returned. |
list_compositionsLists the compositions open in the session, and which one is on screen.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | The session token that connect returned. |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare the operation as read-only, idempotent, non-destructive, and not open-world, so the safety profile is fully covered. The description adds useful behavioral context by saying it reports the on-screen composition, but it does not describe ordering, empty results, or any session-level constraints beyond what the annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It states what is listed and the key output distinction of which composition is on screen.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with full schema coverage and annotations, the definition is almost complete. It explains the core return content, including the active composition, though it could optionally clarify result ordering or behavior when no compositions are open.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the single token parameter is already fully documented as coming from connect. The description implies session scoping by saying 'open in the session' but does not add any parameter-level meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: it lists the compositions open in a session and identifies the one on screen. That scope is clear enough to separate it from single-composition tools, but it does not explicitly name or contrast against sibling tools like get_composition or inspect_composition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: an agent can infer this is for discovering open compositions before inspecting or updating one. However, there is no explicit statement of when to use this versus get_composition or inspect_composition, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.