Skip to main content
Glama

Delete a theme file

delete_theme_file
Destructive

On one site of the account, named in site. Removes one file from the theme, as a commit in the person's name, live like any write once the theme is whole — the way to drop a partial or an asset inherited from the theme a copy was made of, rather than blanking it. A template still rendering the file holds the change until it no longer does; the history keeps the file either way. The manifest and the required templates (index.liquid, post.liquid) are refused: rewrite those instead. Admins only.

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": {
      "site": "<site>",
      "theme": "<theme>",
      "path": "<path>"
    },
    "name": "delete_theme_file"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathYesThe file inside the theme, like partials/old.liquid
siteYesThe site to work on, as list_sites names it
themeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

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

Goes well beyond the destructiveHint/readOnlyHint annotations: it discloses that the deletion is recorded as a commit in the person's name, that it goes live like any write once the theme is whole, that a template still rendering the file defers the change, and that history retains the file regardless. It also discloses permission requirements (admins only) and refused targets, which is exactly the context annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence carries real information, but the description opens with a dangling fragment ("On one site of the account, named in site.") and buries the core verb in the second clause. Long convoluted sentences like "live like any write once the theme is whole" cost the reader effort without adding precision.

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, non-idempotent write with no output schema, the description covers propagation timing, history retention, refused targets, and authorization — the things that determine whether a call is safe and correct. The only notable gap is what the call returns (e.g., commit or revision information), which it never mentions.

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 coverage is 67% and the description reinforces the site scoping ("On one site of the account, named in site") and the notion of files living inside a theme. However, the theme parameter is undocumented in both schema and description, and nothing is added about path syntax beyond the schema's "partials/old.liquid" example, so this is baseline territory.

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: "Removes one file from the theme," scoped to a single site. It also implicitly separates itself from write_theme_file/edit_theme_file by framing the operation as "the way to drop a partial or an asset inherited from the theme a copy was made of, rather than blanking it," though no sibling is named outright.

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 a clear when-to-use case (dropping a partial or inherited asset rather than blanking it) and a when-not case (the manifest and required templates index.liquid/post.liquid are refused — "rewrite those instead"), plus an audience restriction ("Admins only"). The alternative is described by action rather than by tool name, which leaves the agent to map "rewrite" onto write_theme_file itself.

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.

Resources