Skip to main content
Glama

Delete a component

delete_component
Destructive

Delete a custom TypeScript component, or a shared module with name shared/, from the project. Refused while the film places the component (its Asset ID is in main.film): remove its and its clips with patch_film first. Refused when another component imports it, with the build output that names that component. branchId null (or left out) means the current version; a version id from list_branches deletes it on that version without switching the editor to it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesComponent class name, a JavaScript identifier, or shared/<name> for a shared module that components import as ./shared/<name>.
branchIdYesVersion id from list_branches to write to, without switching the editor to it. null, or leaving it out, means the current version.
projectIdYesThe project this call runs on without changing the open project. null (or leaving it out) uses the open project. wait_for_jobs takes the projectId of the calls that started the jobs.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/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, so the mutation profile is covered. The description adds genuinely useful behavioral detail beyond that: the two guard conditions that cause refusal, the error payload shape (build output naming the importing component), and that a version-id delete does not switch the editor. It does not discuss irreversibility or recovery, but the refusal semantics are the key risk context.

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?

Three sentences, all load-bearing: scope, refusal conditions, then branch targeting. Front-loaded with the action and resource. Slightly dense, but no filler; a small structural tweak (bullets for the two refusals) would be the only improvement.

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?

No output schema exists, and the description compensates by describing failure output (build output naming the importer) and the absence of editor state change for version-scoped deletes. Combined with annotations covering safety, an agent has enough to call it correctly; only successful-return shape is unspecified.

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%, so the schema already documents all three parameters, including branchId null semantics and projectId behavior. The description restates branchId's non-switching behavior rather than adding syntax or format meaning, so the baseline 3 applies.

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 (delete) plus the two exact resource forms it handles: a custom TypeScript component, or a shared module named shared/<name>. This distinguishes it from siblings like patch_component, replace_component, and scaffold_component without opening any 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?

Explicitly states two refusal conditions (component placed by the film, component imported by another) and routes the agent to the remedy: remove its <use> and clips with patch_film first. Also explains branchId null vs a version id from list_branches, naming the sibling to call first.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.