Skip to main content
Glama

delete_bp_variable

Destructive

Remove a member variable declared on a Blueprint and verify deletion; compile afterward to find broken references. Inherited/native variables are refused.

Instructions

Remove a member variable DECLARED on this Blueprint (inherited/native variables are refused) and report whether it is really gone by re-looking it up. Nodes that still read/write it survive as broken references, so run compile_blueprint + get_compile_errors afterwards. For an event dispatcher use remove_event_dispatcher instead -- this call would drop the delegate variable and strand its signature graph.

Returns: { blueprint_name, variable_name, deleted } -- deleted is re-checked after the removal, so false means it is still there.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
variable_nameYesName of a variable declared on THIS Blueprint
blueprint_nameNoBlueprint asset name or path
blueprint_pathNoAlias of `blueprint_name` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `blueprint_name`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already carry destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is covered structurally. The description still adds real value the annotations cannot: inherited/native variables are refused, surviving nodes become broken references, and event-dispatcher variables must use a different tool. However it does not discuss permissions or authority requirements, and with annotations this robust a 3 captures added-but-not-exhaustive context.

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?

Front-loaded with the action and its scope, then the refusal case, the side effect, the alternative, and finally the return contract. Every sentence is load-bearing; no restatement of the tool name or filler.

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

Completeness3/5

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

No output schema exists, but the description compensates by spelling out the return shape { blueprint_name, variable_name, deleted } plus the subtlety that deleted is re-checked post-removal so false means still present. Combined with annotations and full param coverage, the gaps are minor -- permissions/authority and whether the removal is transactional are the remaining unknowns.

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 both blueprint_name and blueprint_path are already documented, including the alias note. The description reinforces that variable_name must be a variable declared on THIS Blueprint, but adds no syntax or format detail the schema lacks. Baseline for full coverage is 3; the working note on distinguishing declared vs inherited variables nudges it to 4.

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 + resource ("Remove a member variable DECLARED on this Blueprint") and immediately scopes it by excluding inherited/native variables. It explicitly names the sibling it is not (remove_event_dispatcher) and the failure mode that distinguishes it, so an agent can route without opening a schema.

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

Usage Guidelines5/5

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

Explicit when-not: "For an event dispatcher use remove_event_dispatcher instead -- this call would drop the delegate variable and strand its signature graph." Also gives the follow-up workflow (run compile_blueprint + get_compile_errors). Alternatives and their selecting conditions are named, nothing inferred.

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