Skip to main content
Glama
beckettlab

Beckett — MCP for Godot

by beckettlab

apply_template

Copy a bundled or project template into res:// in one call, then set and open its main scene if declared. Leave template empty to list available templates.

Instructions

Instantiate a bundled (or project) template into res:// in one call — copies its files and, if the template declares a main_scene, sets and opens it. Generic: a template can be a game starter, a UI screen, a settings menu, a test harness. Project templates under res://.beckett/templates/ override bundled ones. Call with no 'template' to list what's available.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNooverwrite existing res:// files (default false)
templateNotemplate name, e.g. platformer-2d

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.10.1
  2. Removedv1.10.0
  3. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

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

The description goes beyond the annotations by disclosing that files are copied into res://, main_scene is set and opened if declared, project templates override bundled ones, and omitting template lists available options. It does not contradict the annotations, and it adds meaningful behavioral context for a tool that is not read-only.

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?

The description is compact and well-structured, with the primary action and effect front-loaded. Every sentence contributes useful information, including scope, override precedence, and the no-argument listing behavior, without redundancy or filler.

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 tool with two optional parameters, no output schema, and no nested objects, the description covers the main behaviors, parameter implications, and override semantics. It does not explicitly describe the return value or failure modes, but the listing hint and clear effect make it sufficiently complete for correct invocation.

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 description coverage is 100%, so the baseline is 3. The description adds value by clarifying that omitting the 'template' parameter triggers a listing behavior and that project templates override bundled ones, which informs how the 'template' parameter is resolved.

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?

The description clearly identifies a specific verb ('Instantiate'), a resource (bundled or project template into res://), and the concrete effect (copies files, sets/opens main_scene). It also clarifies the generic applicability across template kinds and the override behavior, making it easy to understand what the tool does.

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?

The description provides clear context for when to use the tool: to instantiate bundled or project templates into res://, with project templates taking precedence. It also gives a practical usage hint ('Call with no template to list available templates'), though it does not explicitly contrast with sibling tools like instance_scene or open_scene.

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