Skip to main content
Glama

shader_manage

Create shader resources, apply visual effect presets, and set or inspect shader parameters for 2D and 3D Godot materials.

Instructions

Shader System and Visual Effect Management.

Ops:

  • create(path="res://shaders/custom.gdshader", shader_type="canvas_item", code="", overwrite=False) Create a new .gdshader resource with boilerplate for canvas_item, spatial, particles, sky, or fog.

  • apply_preset(preset="outline_2d", target_node_path="", shader_path="", params={}) Compile and apply production shader presets: - outline_2d: Dynamic sprite border outline (outline_color, outline_width). - hit_flash: Combat damage flash effect (flash_color, flash_modifier). - dissolve_2d: Burning noise dissolve effect (dissolve_amount, burn_color, burn_size). - water_2d: Wave distortion and reflection (water_tint, wave_speed, wave_freq, wave_amp). - foliage_wind: Vertex displacement wind sway (wind_speed, wind_strength). - crt_scanline: Retro CRT monitor scanlines, curvature, and vignette. - hologram_glitch: Sci-fi holographic glitch and scanlines (holo_color, scanline_density). Optionally assign directly to target node's material.

  • set_param(param="outline_width", value=2.0, target_node_path="", material_path="") Set a uniform parameter on a ShaderMaterial by target node or material path.

  • get_params(target_node_path="", material_path="") Inspect shader code and parameters from a target node or material path.

Canonical call shape: {"op": "<verb>", "params": {...}}. Flat op parameters are accepted as a compatibility alias when the client transmits them; op and session_id remain top-level.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
opYes
paramsNo
session_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv5.0.28

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It accurately describes what each operation does (e.g., 'Create a new .gdshader resource', 'Compile and apply production shader presets') but does not mention potential side effects such as overwriting files (create has overwrite param), required permissions, or whether operations are read-only or mutating. It also does not disclose error behavior or reversibility.

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?

The description is well-structured with a clear hierarchy: overall purpose, operation list, and canonical call shape. It is verbose but every section contributes value, and it front-loads the core purpose. The canonical call shape note is useful though slightly tangential. Could be tightened but remains efficient for its complexity.

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?

Given the tool's complexity (four ops, multiple parameters, seven presets with custom params), the description is quite complete. It covers all operations, parameters, and preset details. However, it does not describe return values or error handling, and an output schema exists but its content is not described. Still, for an agent to correctly invoke the tool, the description provides sufficient guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% because the input schema only has generic op/params/session_id fields. The description fully compensates by listing every operation's specific parameters (e.g., create: path, shader_type, code, overwrite; apply_preset: preset, target_node_path, shader_path, params) and even enumerates preset names and their tunable parameters. This adds critical meaning beyond the schema.

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 states its purpose as 'Shader System and Visual Effect Management' and enumerates four specific operations (create, apply_preset, set_param, get_params) with distinct verbs and resources. It differentiates from sibling tools like shader_global_manage and visual_shader_manage by focusing on per-node shader operations, making its scope unambiguous.

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

Usage Guidelines3/5

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

The description lists operations and presets but does not explicitly contrast with alternatives or state when to prefer this tool over shader_global_manage or visual_shader_manage. Usage context is implied by the operation names and preset categories, but there is no direct guidance on exclusions or alternative selection.

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