Skip to main content
Glama

create

Idempotent

Copies atoms from a selection into a new PyMOL object while leaving the original intact, with optional source state selection.

Instructions

Creates a new object from a selection

Input Schema

NameRequiredDescriptionDefault
nameYesName for the new object.
selectionNoAtoms to copy into it. The original is left in place.all
source_stateNoState to copy from.1

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.5.1
    • addedInput schema / properties / name / description
      Added value: +"Name for the new object."
    • addedInput schema / properties / selection / description
      Added value: +"Atoms to copy into it. The original is left in place."
    • addedInput schema / properties / source_state / description
      Added value: +"State to copy from."
  2. First observedv1.2.1

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true, and openWorldHint=false, so safety is covered by structured data. The description adds essentially nothing beyond that: it does not say whether an existing object of the same name is overwritten, what happens to the source object, or that the new object becomes the active object. Given the low bar set by annotations, this is still a thin addition.

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?

A single eleven-word sentence with no filler and the verb front-loaded; there is no structural waste. It is slightly under-specified rather than verbose, which keeps it below 5 but not penalized as padding.

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

Completeness2/5

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

For a write-capable tool with three parameters embedded in a large namespace of overlapping creation tools (`extract`, `fragment`, `fab`), the description is too thin. It does not address name collisions or the copy-vs-move distinction that separates it from siblings; the presence of an output schema and annotations covers some ground but not the selection decision the agent must make.

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%, and the schema already explains `name`, the `selection` default of "all" with copy-not-move semantics, and `source_state`. The description contributes no additional meaning about any of the three parameters, so the baseline 3 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?

The description gives a specific verb and resource ("Creates a new object") plus the source ("from a selection"), so an agent knows the operation. It falls short of a 5 because it never distinguishes this from the sibling tool `extract`, which in this domain also produces a new object from a selection, leaving the agent to guess which one it wants.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no exclusions, and no named alternative despite a crowded sibling list containing `extract`, `select`, and `clip`. The only hint about behavior (the original is left in place) lives in the `selection` parameter description rather than in the tool description, so the routing decision is entirely left to inference.

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