Skip to main content
Glama
RAEN-DT

PyNet Bridge

by RAEN-DT

viewer_get_state

Read-only

Retrieve the viewer's loaded models and current selection pnt_id; use it to inspect properties or find clashes when a 3D item is selected.

Instructions

Reads the viewer's last reported state: loaded models and the pnt_id of whatever the user currently has selected (click in the 3D view or the tree panel — null if nothing is selected). Use the returned pnt_id with viewer_get_properties for its details, or feed it into a clashes.json lookup to find what it clashes with.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.1.0

TDQS

A4.2/5.0
Behavior4/5

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

With readOnlyHint=true already declaring the safety profile, the description still earns credit by disclosing the null-if-nothing-selected behavior and the source of the selection (3D view click or tree panel). It stops short of describing refresh semantics (is state 'last reported' cached or live), which matters for a state reader.

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 tight sentences: the first defines the return payload, the second routes the agent onward. Nothing is redundant and the payload definition is front-loaded.

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?

An output schema exists and the description anyway names the key fields plus the null condition, so an agent can act immediately. For a zero-param read tool, nothing material is missing.

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?

Zero parameters, so there is nothing for the description to disambiguate; the schema and description are consistent. Baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('reads') and resource ('viewer's last reported state'), and enumerates the payload (loaded models, selected pnt_id). It does not, however, distinguish itself from the sibling viewer_status, which by name may return overlapping state information.

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?

Clearly frames the tool's role in a workflow — take the returned pnt_id to viewer_get_properties for details, or into a clashes.json lookup. That is strong downstream guidance, but it never states when to prefer this over viewer_status or viewer_get_properties directly.

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