Skip to main content
Glama

create_assembly

Read-only

Creates a new empty assembly and returns its state as JSON for use in later assembly operations.

Instructions

Create a new empty assembly.

        Returns the assembly state as a JSON-serialisable dict that
        must be passed back to subsequent assembly tools.

        Args:
            name: Human-readable name for the assembly.
        

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "name": "<name>"
    },
    "name": "create_assembly"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesHuman-readable name for the assembly.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.5.1
    • addedInput schema / properties / name / description
      Added value: +"Human-readable name for the assembly."
  2. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is covered. The description adds genuine context beyond that: the tool returns a JSON-serialisable state dict that must be threaded into later calls, implying no persisted server-side resource. It does not explicitly reconcile 'Create' with readOnlyHint or say whether repeated calls produce independent states.

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?

The first line is front-loaded and carries the core purpose, followed by the one genuinely useful behavioral note about the return value. The trailing 'Args:' block restates the schema and is the only wasted space.

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?

There is no output schema, and the description correctly compensates by explaining the return value and the requirement to pass it onward. For a single-parameter constructor-style tool this is nearly complete; only the persistence/statelessness question is left implicit.

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 only parameter's description is repeated verbatim from the schema ('Human-readable name for the assembly'), so the description adds no new meaning. With one fully documented parameter, the baseline of 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?

States a specific verb and resource ('Create a new empty assembly') with the 'empty' qualifier, which distinguishes it from sibling builders like add_assembly_part, compose_assembly_parts, and derive_assembly_plan. It never names an alternative explicitly, but the purpose is unambiguous on its own.

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?

The description supplies real workflow guidance: the returned state 'must be passed back to subsequent assembly tools', which tells the agent this is the entry point of an assembly sequence. It stops short of naming which sibling tools consume the state or stating prerequisites/exclusions (e.g., that add_assembly_part requires an assembly created here).

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

Deploy Server

Other Tools