Skip to main content
Glama

apply_gameplay_effect

Destructive

Applies a GameplayEffect class to an editor-world actor's ability system component at a specified level. Returns whether a valid effect handle was applied.

Instructions

Apply a GameplayEffect class to an editor-world actor ability system component: an outgoing spec at the given level, with a fresh context from that component, applied to self. applied tells whether the engine returned a valid handle. apply_multiple_gameplay_effects applies a list.

Returns: { actor_name, effect_class, level, applied }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
levelNoEffect level for scalable magnitudes, fractions allowed; default 1.0
actor_nameYesObject name (not the label) of the editor-world actor, e.g. "BP_Hero_C_1", matched case-insensitively; find_actors_by_name maps labels to names
effect_classYesClass path of a UGameplayEffect subclass; a Blueprint GE needs its _C class path, e.g. "/Game/Effects/GE_Burn.GE_Burn_C"

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.2.0
    • changedInput schema / properties / actor_name / description
      Previous value: -"Name of the actor to apply the effect to"New value: +"Object name (not the label) of the editor-world actor, e.g. \"BP_Hero_C_1\", matched case-insensitively; find_actors_by_name maps labels to names"
    • changedInput schema / properties / effect_class / description
      Previous value: -"Full class path of the gameplay effect to apply"New value: +"Class path of a UGameplayEffect subclass; a Blueprint GE needs its _C class path, e.g. \"/Game/Effects/GE_Burn.GE_Burn_C\""
    • changedInput schema / properties / level / description
      Previous value: -"GameplayEffect/ability level (default 1.0)"New value: +"Effect level for scalable magnitudes, fractions allowed; default 1.0"
  2. First observedv1.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly=false and destructive=true, so the safety profile is covered. The description adds behavioral context beyond that: the spec/context construction, that it is applied to self, and that the 'applied' flag reflects whether the engine returned a valid handle. It doesn't say what state gets mutated or whether the effect stacks, but the added mechanism detail is meaningful.

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?

Front-loads the core action in the first sentence, then the return shape and alternative in a second block. It is dense but every clause (level semantics, context source, applied handle, sibling pointer) carries information; minor jargon ('outgoing spec', 'context') is the only friction.

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?

With no output schema, the description helpfully enumerates the return object (actor_name, effect_class, level, applied). Combined with annotations carrying the destructive/idempotency profile and a fully described input schema, an agent has enough to invoke it correctly; only the runtime effect on existing actor state goes unstated.

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 actor_name, effect_class, and level (including the _C Blueprint class-path requirement and case-insensitive matching). The description only re-references 'the given level' and adds no syntax or format detail beyond the schema, so 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 precise verb+resource: applying a GameplayEffect class to an editor-world actor's ability system component, and details the mechanism (outgoing spec at given level, fresh context, applied to self). It explicitly contrasts with the sibling apply_multiple_gameplay_effects (which handles lists), so an agent can tell them apart without opening schemas.

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?

It routes the agent to the alternative for batch use ('apply_multiple_gameplay_effects applies a list'), establishing single-vs-multiple as the selection criterion. It doesn't state prerequisites or when-not-to-use conditions (e.g., missing ability system component), so it's clear context but not a complete when/when-not guide.

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