Skip to main content
Glama

Copy an object into your module

clone_object
Destructive

Copy an existing Mount & Blade II object into a writable module under a new ID, optionally changing attributes to create custom weapons, troops, heroes, or cultures.

Instructions

Copies an existing object (usually vanilla) into a writable module under a new id, optionally changing attributes — the fastest way to make a new weapon/troop/hero/culture based on an existing one. With new_id omitted the copy keeps the id and fully overrides the original. A plain 'name' gets a fresh {=id}.

Input Schema

NameRequiredDescriptionDefault
setNoAttributes to change on the copy's root element, e.g. {"name": "Royal Blade", "value": "5000"}. Values are strings.
fileNoOptional target file under ModuleData.
moduleYesTarget writable module.
new_idNoId of the copy (omit to override the original with the same id).
sourceYesObject to copy: Item.x, NPCCharacter.x, Culture.x, … or bare id.
validateNoRun XSD validation after writing (default true).
source_moduleNoCopy this module's definition instead of the effective one.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description adds meaningful non-obvious behavior: omitting new_id fully overrides the original with the same id, and a plain 'name' gets a fresh {=id}. That override semantics is exactly the detail an agent needs to avoid clobbering vanilla content. It doesn't mention writability prerequisites or return behavior, keeping it out of 5 territory.

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, purpose first, then the critical edge-case behavior. Zero filler and front-loaded.

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?

For a destructive mutation tool with seven parameters (including a nested set object) and no output schema, the description covers the surprising override behavior and the id-generation nuance. Only minor gaps remain, such as the writable-module requirement and the effect of the validate flag.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real semantics beyond the schema for two parameters: the new_id omission override rule and the name-to-{=id} behavior. Those are interpretations the raw schema strings don't convey.

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 (copies) and resource (an existing object into a writable module under a new id), and grounds it with concrete examples (weapon/troop/hero/culture). An agent can distinguish it from write_object, create_module, or set_attributes without opening the schema.

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?

Gives clear context for why you'd pick this tool ('the fastest way to make a new weapon/troop/hero/culture based on an existing one'), which implies when it beats authoring from scratch. It never names an explicit alternative or an exclusion, so it stops short of a 5.

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