Skip to main content
Glama
nodormu

unreal-mcp-additional-tools

by nodormu

unreal-mcp-additional-tools

一个 MCP 服务器,补充 Epic 官方的 Unreal Engine MCP 服务器 —— 涵盖 14 个子系统 的 78 个工具,覆盖 Epic 服务器未触及的领域:构建/烹饪/打包、过场动画、Niagara、自动化测试、源代码控制、性能分析、World Partition 以及项目级内容维护。

Beta —— 此项目正在积极开发和测试中。工具正在针对 UE 5.8.1 进行验证。某些工具可能无法按预期工作。欢迎提交错误报告和贡献。

将其与 Epic 的官方服务器并行运行。此仓库已特意针对其进行了去重,因此两者形成无功能重叠的干净联合 —— 请参阅 与 Epic 官方服务器的关系。

从 sam-david/unreal-mcp (MIT) 分叉而来。上游项目是一个通用的 Unreal MCP 服务器;此分叉将其工具集与 Epic 的官方服务器去重,以便两者可以同时连接。

与 Epic 官方服务器的关系

此项目最初是一个通用的 Unreal MCP 服务器。在 Epic 发布官方版本后,其工具集与 Epic 的进行了去重,以便两者可以同时连接,而不会出现冗余或冲突的工具。

已移除的内容

仅在 Epic 具有真正的单次调用(或简单的两次调用)等效功能时,才仅删除整个类别:

  • blueprint 模块(12 个工具) —— 直接删除。Epic 的 BlueprintTools 是严格的超集。

  • plugin 模块(3 个工具) —— 直接删除。Epic 的 PluginToolset 是严格的超集。

  • actor、asset 和 material —— 出于同样的原因进行了大量精简,仅保留没有 Epic 对应功能的工具。

特意保留的内容

一些剩余工具的名称听起来与 Epic 的相似,但行为不同。这些是特意保留的:

工具

为什么它不是重复项

apply_material

Epic 的网格工具设置资产的默认槽位材质。此工具设置实时的actor 实例覆盖。

generate_collision

Epic 仅进行凸包生成。盒体/球体/胶囊/自动模式没有 Epic 等效功能。

set_skeletal_mesh_lod

Epic 的 SkeletalMeshTools 对 LOD 数量是只读的。

reimport_skeletal_mesh

Epic 没有就地重新导入功能。

import_asset

Epic 的导入工具仅针对特定资产类型 —— 没有通用或音频导入。

export_asset

Epic 没有资产导出功能。

validate_assets

Epic 根本没有数据验证工具。

未触及的内容

整个领域都保持完整,因为 Epic 没有等效功能:

  • 构建、烹饪和打包

  • 过场动画 / Sequencer

  • Niagara VFX

  • 自动化测试和 Gauntlet

  • 源代码控制(真正的签入/签出/差异,而不仅仅是只读标志)

  • 性能分析和 Unreal Insights 跟踪

  • World Partition

  • 撤销/重做

  • 远程控制预设

  • 项目级维护 —— fix_redirectors、resave_packages、content_audit、consolidate_assets

Related MCP server: unreal-engine-mcp

快速开始

先决条件

  • Node.js >= 18

  • 打开编辑器的 Unreal Engine 5.x

  • 启用 Python Editor Script Plugin(内置),并在其设置中勾选 启用远程执行

无需自定义 C++ 插件。此服务器开箱即用,使用 Unreal 内置的 Python 和 Remote Control 插件。

安装

git clone https://github.com/YOUR_USERNAME/unreal-mcp-additional-tools.git
cd unreal-mcp-additional-tools
npm install
npm run build

添加到 Claude Code

按项目(从你的 UE 项目目录):

claude mcp add --transport stdio unreal-extra -- node /path/to/unreal-mcp-additional-tools/dist/bin.js

全局(适用于所有项目):

claude mcp add --scope user --transport stdio unreal-extra -- node /path/to/unreal-mcp-additional-tools/dist/bin.js

然后在每个 UE 项目中放置一个 .unrealmcp.json:

{
  "projectPath": "."
}

添加到 Claude Desktop

添加到 %APPDATA%\Claude\claude_desktop_config.json(Windows)或 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS):

{
  "mcpServers": {
    "unreal-extra": {
      "command": "node",
      "args": ["/path/to/unreal-mcp-additional-tools/dist/bin.js"],
      "env": {
        "UNREAL_MCP_PROJECT_PATH": "/path/to/YourProject.uproject"
      }
    }
  }
}

工具模块

14 个模块中共有 78 个工具。下面的模块名称是 enabledModules / UNREAL_MCP_MODULES 接受的值。

模块

工具数

描述

console

3

执行 Python、运行控制台命令、检查传输连接状态

actor

2

复制 actor、设置 actor 标签

asset

7

导入/导出、数据验证、修复重定向器、重新保存包、内容审计、合并重复项

build

9

构建目标、烹饪、打包、BuildCookRun、构建插件、BuildGraph、生成项目文件、清理、解析构建状态

material

1

将材质应用于实时 actor 的网格组件

sequencer

8

创建序列、检查结构、绑定 actor、添加轨道、播放范围、帧率、FBX 导出、Movie Render Queue

animation

6

动画蓝图、蒙太奇、序列信息、骨骼网格 LOD、重新导入、动画修改器

niagara

8

在位置或附加生成系统、设置浮点/向量/颜色/布尔参数、重置、重新初始化

testing

7

列出并运行自动化测试(按名称、类别或全部)、地图检查、Gauntlet、获取结果

source-control

6

状态、签出、签入、还原、标记为添加、差异

profiling

5

启动/停止 Unreal Insights 跟踪、stat 命令、启动/停止 CSV 性能分析

world-partition

4

列出数据层、设置数据层状态、查询已加载的单元格、配置流式传输源

editor-utils

7

运行编辑器实用工具小部件/蓝图、生成碰撞和光照贴图 UV、撤销、重做、撤销历史

remote-control-presets

5

列出并检查预设、获取/设置暴露的属性、调用暴露的函数

架构

MCP Client (Claude Code, Claude Desktop, etc.)
  ↕ stdio (MCP protocol)
unreal-mcp-additional-tools server
  ↕ transport layers
Unreal Engine

传输层

传输方式

协议

端口

所需条件

使用者

Python Remote Execution

UDP 多播 + 反向 TCP

6776

Python Editor Script Plugin(内置)

大多数工具

Subprocess Runner

生成 UAT/UBT 进程

N/A

仅引擎路径

构建、烹饪、打包、Gauntlet

Remote Control API

HTTP REST

30010

Remote Control API 插件(内置)

Remote Control Presets

Plugin Bridge

TCP,长度前缀 JSON

55557

可选 C++ 插件

目前未使用

服务器在启动时探测所有传输方式,工具会优雅降级。构建工具通过子进程运行器运行,完全不需要打开编辑器。

Plugin Bridge 客户端及其 executeWithPluginFallback() 插件优先/Python 回退路径仍保留在代码库中,但目前没有工具通过它路由 —— 其唯一的使用者是 blueprint 模块,该模块在与 Epic 服务器去重时被移除。此仓库不附带任何 C++ 插件。

配置

三层优先级:命令行参数 > 环境变量 > 配置文件 > 默认值。

环境变量

变量

默认值

描述

UNREAL_MCP_PROJECT_PATH

—

.uproject 文件或项目目录的路径

UNREAL_MCP_ENGINE_PATH

自动检测

UE 引擎安装路径

UNREAL_MCP_RC_PORT

30010

Remote Control API 端口

UNREAL_MCP_PYTHON_PORT

6776

Python Remote Execution 端口

UNREAL_MCP_PLATFORM

Win64

目标平台

UNREAL_MCP_CONFIGURATION

Development

构建配置

UNREAL_MCP_MODULES

all

要启用的模块的逗号分隔列表

命令行参数

node dist/bin.js --project-path /path/to/project --engine-path /path/to/UE_5.8 --rc-port 30010

配置文件

将 .unrealmcp.json 放在你的项目目录或主目录中:

{
  "projectPath": ".",
  "platform": "Win64",
  "configuration": "Development",
  "enabledModules": ["console", "asset", "build", "sequencer", "niagara"]
}

Unreal Editor 设置

必需(适用于大多数工具)

  1. 编辑 > 插件 > 启用 Python Editor Script Plugin

  2. 重启编辑器

  3. 编辑 > 项目设置 > 插件 > Python > 滚动到 Remote Execution 部分:

    • 勾选 启用远程执行

    • UE 5.3+ 重要提示: 将 多播绑定地址 从 127.0.0.1 更改为 0.0.0.0 —— Epic 在 5.3 中更改了默认值,这会导致外部工具无法工作

    • 验证多播组端点为 239.0.0.1:6766

  4. 再次重启编辑器

仍然遇到“未找到 Unreal Editor 节点”?

  • VPN/Tailscale 用户: Tailscale 的虚拟网络适配器可能会劫持多播。尝试暂时禁用 Tailscale,或在 Windows 网络连接中禁用 Tailscale 网络适配器。

  • 防火墙: 允许 UDP 端口 6766 和 TCP 端口 6776,或暂时禁用 Windows 防火墙进行测试。

  • 多个适配器: WSL、Hyper-V 和 VPN 适配器都可能导致多播绑定到错误的接口。禁用未使用的适配器会有所帮助。

可选(适用于 Remote Control Preset 工具)

  1. 编辑 > 插件 > 启用 Remote Control API

  2. 重启编辑器

  3. 编辑 > 项目设置 > 插件 > Remote Control > 服务器:

    • 勾选 限制服务器访问 —— 这听起来有限制性,但实际上启用了下面的子选项(未勾选 = 功能隐藏/关闭)

    • 勾选 启用远程 Python 执行

    • 勾选 允许控制台命令远程执行

    • 允许的来源:留空或添加 127.0.0.1

    • 这些会立即生效,无需重启

其他社区项目

作为背景,其他 Unreal MCP 实现:

flopperam

chongdashu

kvick-games

ChiR24

工具

~30

~20

~5

36

需要 C++ 插件

是

是

是

是

构建/打包工具

否

否

否

部分

它们都需要编译并安装自定义 C++ 插件到你的 UE 项目中。而本项目不需要。

开发

npm run dev        # Watch-mode dev server
npm run build      # Compile TypeScript
npm run lint       # Biome linter
npm run fmt        # Biome formatter
npm test           # Run tests

许可证

MIT — 参见 LICENSE。原始作品版权归 Sam David 所有;本分支中的修改版权归 nodormu 所有。

Available Tools

78 tools
add_actor_bindingC

Bind an actor to a level sequence for animation.

ParametersJSON Schema
NameRequiredDescriptionDefault
actor_nameYesActor name or label to bind
sequence_pathYesLevelSequence asset path

TDQS

C2.9/5.0
Behavior2/5

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

The description only says 'bind' and 'attachment,' which implies a mutating operation, but there are no annotations (none provided) and no behavioral details: what happens to existing bindings, whether it overwrites or appends, permissions needed, or any operation details. With the burden fully on the description, this gap is significant.

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?

A single sentence: 'Bind an actor to a sequence for animation attachment.' It is concise and front-loaded. Every word of the description is useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A simple two parameter tool with 100% schema coverage. However, there is no output schema and no behavioral details or effects on the asset/sequence/relationship are described. The description does not clarify return values, nor the possible side effects or postconditions.

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?

The parameter schema covers both 'actor_name' and 'sequence_path' with descriptions, so the structured parameter help is already complete. The description text adds a bit of semantic nuance not strictly in the schema ('label' vs 'name') but largely overlaps. Since 100% of the parameters are described in the schema, the baseline is a 3.

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?

The description clearly states the verb and resource: 'Bind an actor to a sequence for animation attachment.' It identifies the specific operation (binding actor to sequence) but does not explicitly differentiate it from sibling tools like add_track or set_actor_tags. It conveys a unique function but lacks explicit separation from alternatives.

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

Usage Guidelines2/5

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

No guidance is given for when to use this tool versus alternatives or when not to use it. The implied context is 'for animation attachment', but there are no explicit exclusionary criteria, prerequisites, or recommended usage situations.

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

add_trackB

Add a track to an actor binding in a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
binding_idYesBinding ID (from add_actor_binding or get_sequence_info)
track_typeYesTrack class name
sequence_pathYesLevelSequence asset path

TDQS

B3.4/5.0
Behavior2/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 only states the basic mutation action ('Add') without explaining side effects, whether duplicate tracks are allowed, what happens if the binding does not exist, or what the tool returns. This is a significant transparency gap for a mutating operation.

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 a single clear sentence with no filler. It is front-loaded with the action and target, and every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations and no output schema, the description must do more than one sentence. It does not explain workflow context (e.g., create sequence → add actor binding → add track), behavioral caveats, or expected outcomes. Even though the schema documents parameters well, the overall tool context is under-specified for an agent.

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%, and each parameter already has a clear description (e.g., binding_id comes from add_actor_binding or get_sequence_info). The tool description adds no parameter-level meaning beyond what the schema already provides, so the baseline of 3 is appropriate.

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 uses a specific verb and resource: 'Add a track to an actor binding in a sequence.' It clearly distinguishes this tool from siblings like add_actor_binding, which adds a binding itself, and create_level_sequence, which creates a sequence. The intended operation is immediately understandable.

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 phrase 'to an actor binding in a sequence' implies the user must already have a sequence and a binding, but there is no explicit guidance on when to use this tool versus alternatives, no prerequisites stated, and no caveats about ordering (e.g., after add_actor_binding). Usage is implied rather than spelled out.

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

apply_anim_modifierC

Apply an animation modifier to an animation sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_pathYesAnimSequence asset path
modifier_classYesAnimation modifier class name

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must carry the burden of explaining side effects and constraints. It only says 'Apply', which implies a modification, but does not disclose whether the original asset is mutated, what the modifier does, or any potential side effects. This is insufficient given the absence of annotations.

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 a single sentence, highly concise with no fluff. It covers the essential action and object, though it lacks elaboration. Structure is simple and direct.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without annotations alert, the description must carry full weight. It does not explain what happens when applied, whether it alters the original sequence or creates a new one, any prerequisites (e.g., sequence must exist), or return values. Given two parameters and no output schema, the description is too thin for reliable tool selection and invocation.

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 descriptions are present for both parameters ('AnimSequence path' and 'Animation modifier class name'), achieving 100% coverage. However, they are terse and do not explain expected formats, allowed values, or how they interact. Baseline 3 is appropriate since schema provides basic definitions but no additional semantics.

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?

The description clearly states the action (apply) and the resource (animation modifier to an animation sequence). It is specific enough to distinguish from generic tools like 'apply_material', though it does not explicitly differentiate from sibling animation tools or list alternatives. The verb-resource pairing is clear, but lacks detail on what 'modifier' means in this context.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus similar animation tools (e.g., create_anim_blueprint, get_sequence_info). The description is minimal and does not mention exclusions, prerequisites, or scenarios where this tool is preferred over others.

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

apply_materialC

Apply a material to an actor's mesh component.

ParametersJSON Schema
NameRequiredDescriptionDefault
actor_nameYesActor name or label
slot_indexNoMaterial slot index
material_pathYesMaterial asset path

TDQS

C2.7/5.0
Behavior1/5

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

With no annotations, the description carries full responsibility for behavioral disclosure. It only mentions the action without noting side effects, error conditions, or whether the operation is destructive or reversible.

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 a single concise sentence with no redundancy, making it appropriately sized for the operation's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal and lacks crucial context such as error handling, expected outcomes, or edge cases, despite the tool's moderate complexity. It is not complete enough for a user to fully understand the behavior.

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

Parameters2/5

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

The tool description adds no extra meaning beyond the schema's parameter descriptions, which are already trivial ('Actor name or label', etc.). It does not clarify how parameters relate to the operation or provide default behaviors.

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 the verb 'apply' and the resource 'material', targeting 'an actor's mesh component', which is specific and distinguishes from other tools like execution or testing.

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

Usage Guidelines1/5

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

No information is provided about when to use this tool versus alternatives, nor are any prerequisites or context given. The description lacks any guidance on selection.

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

build_cook_runA

Full BuildCookRun pipeline — build, cook, stage, package, and optionally deploy/run. This is the primary command for packaging a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
runNoRun after packaging
cookNoCook content for target platform
buildNoCompile C++ code
stageNoStage files for packaging
deployNoDeploy to device
archiveNoArchive the build
iterateNoIterative cook (faster rebuilds)
packageNoCreate distributable package
platformNoTarget platform
compressedNoCompress pak files
configurationNoBuild configuration
additional_argsNoAdditional UAT arguments

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It discloses that the tool executes a multi-stage pipeline and can optionally deploy/run, which is useful. However, it does not mention side effects, prerequisites, or output behavior; for a complex build pipeline this is limited transparency.

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?

Description is a single, front-loaded sentence that efficiently communicates the tool's purpose and pipeline steps. No unnecessary words or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter pipeline with no output schema and no annotations, the description is somewhat minimal. It conveys the high-level purpose but omits details like what the command returns, how long it takes, or how it relates to sibling single-step commands. Still, the schema covers parameter semantics, so it is not wholly inadequate.

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% for all 12 parameters, each with its own description. The tool description does not add parameter-level semantics beyond this, so baseline 3 is appropriate.

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?

Description clearly identifies the tool as the full BuildCookRun pipeline, enumerating the stages (build, cook, stage, package, optionally deploy/run) and positioning it as the primary packaging command. This is specific and distinguishes it from single-step siblings like build_target or cook_content.

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 says this is the primary command for packaging, which gives some context, but it does not explicitly mention alternatives or explain when to use specific tools like cook_content or package_project. The 'primary' phrasing implies preference but lacks explicit when/when-not guidance.

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

build_graphB

Execute a BuildGraph XML script for CI/CD automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesBuildGraph target to execute
script_pathYesPath to the BuildGraph XML script
additional_argsNoAdditional arguments

TDQS

B3.1/5.0
Behavior2/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 for behavioral disclosure. It does not state whether this operation is read-only or destructive, what side effects it may have (e.g., modifying build artifacts), or whether it requires special privileges. For a tool that executes scripts, this lack of transparency is a significant gap.

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 a single concise sentence that is front-loaded with the core action. It is efficient and to the point, but it could add a bit more context without becoming verbose, such as a note about the `additional_args` parameter or typical usage patterns.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (execution of scripts, potential side effects, and need for clear behavioral expectations) and the absence of annotations or an output schema, the description is underspecified. It does not explain return values, error handling, or the effect of the `additional_args` parameter, leaving the agent with an incomplete picture for a potentially impactful operation.

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?

The description mentions 'BuildGraph XML script' and 'target', which aligns with the script_path and target parameters, but it adds no additional semantics beyond the schema. The schema already describes each parameter at 100% coverage, so the description does not substantially enhance understanding of parameter usage or formats.

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?

The description clearly states it executes a BuildGraph XML script for CI/CD automation, specifying the resource (XML script) and the action (execute). It is somewhat distinct from siblings like build_target or build_cook_run, but it doesn't explicitly differentiate itself or clarify what BuildGraph is, so it falls short of a perfect 5.

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 implies it is used for CI/CD automation, but it does not provide explicit guidance on when to use this tool versus alternatives like build_target or build_cook_run. No exclusions or alternative tool mentions are made, leaving the usage context somewhat ambiguous.

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

build_pluginC

Build a plugin standalone.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoTarget platform
output_pathYesOutput directory for the built plugin
plugin_pathYesPath to the .uplugin file

TDQS

C2.4/5.0
Behavior1/5

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

No annotations are provided, placing full burden on the description. The single sentence 'Build a plugin standalone' discloses no behavioral traits such as side effects, required environment, outputs, or error handling. This is a significant gap.

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

Conciseness2/5

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

The description is extremely brief, but this is under-specification rather than concise clarity. It lacks essential context that a tool description should provide, making the brevity a detriment rather than a strength.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a build operation with no annotations and no output schema, the description should explain what 'standalone' means, the build process, expected outputs, and potential prerequisites. It provides none of this, leaving the agent without adequate context for effective use.

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 baseline is 3. All three parameters are documented in the schema, and the description does not add any additional semantic meaning beyond what the schema already provides.

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?

The description uses a specific verb ('Build') and resource ('plugin'), which clearly indicates the tool's core function. It partially distinguishes from sibling build tools by targeting plugins, though the term 'standalone' is vague and could be more explicit about the build output type.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool instead of alternatives. Sibling tools like build_target, build_cook_run, and package_project exist, but the description does not mention any differentiation or context for choosing this tool.

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

build_targetB

Build a C++ target using UnrealBuildTool. Compiles the project's C++ code.

ParametersJSON Schema
NameRequiredDescriptionDefault
cleanNoClean build
targetNoBuild target: Editor, Game, Client, ServerEditor
platformNoTarget platform (default from config, e.g., Win64)
configurationNoBuild config: Debug, DebugGame, Development, Shipping, Test

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of disclosing behavior. It does not mention that building modifies the project, may be long-running, requires credentials or environment setup, or whether it cleans before building. The brief statement 'Compiles the project's C++ code' is tautological and adds no transparency beyond the name.

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?

The description is only two short sentences, so it is concise. However, it is so minimal that it misses important structural information like expected inputs, outputs, or side effects. While it is not verbose, it is under-specified and could benefit from more specific detail without being overly long.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Building a C++ target is a complex operation that typically involves compilation, possibly linking, and can affect the project state. The description does not mention that it compiles for a specific platform or configuration, what happens on success/failure, or whether it returns a build status. Without an output schema, the description should explain what the tool returns, but it doesn't. This is incomplete for a build operation.

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?

All four parameters have descriptions in the schema (coverage 100%), so the schema already explains their meanings. The tool description adds no parameter-level detail beyond what the schema provides, which is consistent with baseline 3. The schema's descriptions are adequate (e.g., 'Build target: Editor, Game, Client, Server').

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 the action: 'Build a C++ target using UnrealBuildTool' and adds 'Compiles the project's C++ code.' This is a specific verb-resource pair that distinguishes it from sibling tools like build_plugin, build_cook_run, or generate_project_files, which have different scopes.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as build_plugin, cook_content, or package_project. There is no mention of prerequisites, exclusions, or scenarios where a different tool would be more appropriate. The description merely states what it does without contextual direction.

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

call_preset_functionC

Call a function exposed via a Remote Control Preset.

ParametersJSON Schema
NameRequiredDescriptionDefault
parametersNoFunction parameters
preset_nameYesPreset name
function_nameYesExposed function name

TDQS

C2.2/5.0
Behavior2/5

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

No annotations are present to disclose read-only status, destructive potential, or rate limits. The description's verb 'call' implies invocation, but no side effects, permissions, or error behavior are disclosed.

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?

The description is one concise sentence of nine words. It omits examples, parameter details, and usage context, making it too terse to compensate for the sparse annotations and ambiguous preset terminology.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, no behavior on failure, no return value description. The preset concept is undefined, and given the parametrized params object and semantic gap, the agent cannot reliably know what the function returns, whether it is safe, or if it accepts nonstring values. Lacks key information for a call-related tool.

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?

The input schema covers 100% of parameters with names and types (including an 'other properties' object for flexible parameters). However, the description only restates the schema label ('Function parameters') and adds no deeper meaning about specific expected keys, value formats, or the parameter object's structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: 'Call a function' exposed via a Remote Control preset, but it does not identify what a Remote Control preset is, how functions are exposed, or what makes this distinct from sibling tools like get_preset_info, list_presets, or get_preset_property.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as execute_python_code, execute_console_command, or direct preset property getters. There is no mention of context, preconditions, or consequences.

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

clean_projectC

Clean build artifacts for the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoTarget platform

TDQS

C2.9/5.0
Behavior2/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 revealing side effects. 'Clean build artifacts' implies deletion or removal, but it does not state what exactly is deleted, whether it is safe to run, or if it has any irreversible consequences. This is a significant gap for a potentially destructive operation.

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 a single sentence with no fluff, which is concise. It is front-loaded with the primary action. However, it lacks any elaboration on scope or effects, which might make it too terse for a destructive operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description must convey the full behavior. It only states 'clean build artifacts' without detailing what is removed, whether it is irreversible, whether it affects the entire project or just the specified platform, or what the outcome is. The tool is likely destructive (cleaning) but no warnings or side effects are mentioned. Hence, incomplete for safe usage.

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%: the only parameter 'platform' has a description 'Target platform' in the schema itself. The tool description adds no further meaning about the parameter, so it provides minimal added value. Baseline of 3 is appropriate since the schema already covers the parameter.

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?

The description clearly indicates the tool's purpose: to clean build artifacts from the project. The verb 'clean' and resource 'build artifacts' are specific, and it distinguishes from sibling build tools (e.g., build_target, package_project) which create artifacts. However, it does not specify what specific artifact types are cleaned (e.g., intermediate files, caches), leaving some ambiguity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, typical scenarios, or cases where this should not be used (e.g., avoid during active builds). With many sibling tools for building and cooking, the description lacks direction for an agent to decide when this is the appropriate choice.

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

consolidate_assetsB

Consolidate duplicate assets — replace references from source assets to a target asset.

ParametersJSON Schema
NameRequiredDescriptionDefault
target_pathYesTarget asset path to keep
source_pathsYesSource asset paths to consolidate into target

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It reveals that references are replaced but does not state whether source assets are deleted, kept, or otherwise modified, nor any side effects (e.g., if target assets are overwritten). For a potentially destructive operation, this is a significant gap.

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 a single sentence that is concise and front-loaded with the tool's purpose. It contains no filler and every word contributes to understanding the action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that this is a mutation tool with no annotations and no output schema, the description should explain the full impact, such as whether source assets are removed, whether the target is permanently modified, and if there are any constraints (e.g., related packages). The current description leaves this ambiguous, making it incomplete for an operation that could have significant consequences.

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%, with both parameters clearly described in the schema (target_path: 'Target asset path to keep', source_paths: 'Source asset paths to consolidate into target'). The description adds minimal extra meaning beyond the schema, so the baseline score of 3 is appropriate.

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?

The description clearly states the action: 'Consolidate duplicate assets' and specifies the mechanism: 'replace references from source assets to a target asset.' This distinguishes it from sibling tools like fix_redirectors (which fixes broken references) and import_asset (which imports new assets). However, it could be slightly more explicit about the scope (e.g., all duplicates in the project) but is adequate.

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 implies when to use this tool (when there are duplicate assets to merge) but does not explicitly contrast with alternatives or state when not to use it. There is no mention of prerequisites like whether the source and target must be in the same package. The intended context is implied but not spelled out.

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

content_auditA

Run content audit to find costly or problematic assets (runs ContentAudit commandlet).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the execution mechanism ('runs ContentAudit commandlet') and the nature of the task (finding costly/problematic assets), suggesting a read-only analysis. However, it doesn't state whether the audit modifies assets, requires specific permissions, or produces a detailed report, leaving important behavioral traits unspecified.

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 a single, front-loaded sentence that efficiently conveys purpose and execution. Every word adds value, with no redundancy or extraneous information. It is appropriately sized for a zero-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no output schema, and no annotations, the description is the sole source of information. It covers what the tool does and how it executes, but it does not clarify what the agent should expect as a result (e.g., a list of assets, console output, or a report). This gap prevents full contextual completeness for an agent invoking the tool.

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?

The input schema has zero parameters (empty object), so parameter semantics are not applicable. The description correctly omits any parameter explanation. Baseline for 0 params is 4, and the description does not need to compensate for any missing schema details.

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 the tool's purpose: 'Run content audit to find costly or problematic assets'. It uses a specific verb ('run') and resource ('content audit'), and the additional parenthetical 'runs ContentAudit commandlet' adds technical specificity. This distinguishes it from siblings like validate_assets or fix_redirectors.

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

Usage Guidelines2/5

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

The description does not provide guidance on when to use this tool versus alternatives. It implies usage through its purpose (finding costly/problematic assets), but there is no explicit context, exclusions, or mention of sibling tools. The user is left to infer when 'content_audit' is preferable to tools like validate_assets or consolidate_assets.

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

cook_contentB

Cook content only (no C++ build). Converts assets to platform-specific format.

ParametersJSON Schema
NameRequiredDescriptionDefault
mapsNoSpecific maps to cook (empty = all)
iterateNoIterative cook
platformNoTarget platform

TDQS

B3.2/5.0
Behavior2/5

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

There are no annotations, so the description carries the burden. It discloses the function's purpose but does not mention side effects, the impact on existing assets, whether it is destructive (e.g., overwrites files), or any required conditions (e.g., platform availability). Given the mutation potential, this is a significant gap.

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 two sentences, concise and front-loaded with the action. It wastes no words but could be slightly more informative about the process. It is efficient and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 optional parameters and no output schema. The description covers the basic purpose but does not explain the behavior of 'iterate' or 'maps', nor the return value or side effects. Given the tool's potential complexity, the description is minimally complete but lacks detail about the cook process and dependencies.

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?

The schema covers 100% of parameters with descriptions, so baseline is 3. The description adds no extra meaning beyond the schema, but it doesn't need to given the schema coverage. Yet, the description could add typical values for platform, but that is optional. Hence a 3 is appropriate.

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?

The description clearly states the verb 'cook' and the resource 'content', and contrasts with 'no C++ build' to distinguish it from build operations. It also states the outcome: converting assets to platform-specific format. This distinguishes it from build_target and other build/cook siblings.

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 says 'Cook content only (no C++ build)', implying when to use this instead of a full build. However, it does not explicitly mention when not to use it or suggest alternatives. It lacks context on when to choose this over build_cook_run or package_project.

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

create_anim_blueprintB

Create an Animation Blueprint for a target skeleton.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesAnimBlueprint name
pathNoContent directory/Game/Animations
skeleton_pathYesTarget skeleton asset path

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so the description carries the burden. It only says 'Create' without disclosing side effects, potential overwrites, required permissions, or return behavior. This leaves significant ambiguity.

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 a single, concise sentence that conveys the essential purpose without unnecessary detail. It is well-structured and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal but adequate for a simple creation tool given no output schema or annotations. However, it lacks any mention of success/error behavior or expected outcomes, so it's not fully complete.

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 100% with each parameter having a description. The tool description itself adds no extra parameter semantics, but since coverage is high, the baseline of 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?

The description clearly states the tool's purpose: to create an Animation Blueprint for a target skeleton. It distinguishes itself from sibling creation tools like create_level_sequence and create_anim_montage.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It doesn't mention scenarios where this is preferred or any prerequisites (e.g., requiring a valid skeleton asset).

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

create_anim_montageC

Create an animation montage from an animation sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesMontage name
pathNoContent directory/Game/Animations
sequence_pathYesSource AnimSequence asset path

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only states the action without mentioning side effects (e.g., asset creation location, overwrites), permission requirements, or how the montage relates to the source sequence. This is a significant gap for a creation tool.

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 a single, succinct sentence that conveys the core action without fluff. It is appropriately front-loaded and avoids redundancy with the schema. However, it is so brief that it borders on under-specification, though it remains clear and purposeful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It does not explain what happens after creation (e.g., where the montage is saved, whether it is automatically opened, or how to verify success). For a creation tool, this missing context is a notable gap, especially since the tool has multiple parameters and siblings.

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?

The input schema has descriptions for all three parameters (100% coverage), so the baseline is 3. The description adds no additional meaning beyond the schema, simply restating the relationship between the source and the montage. It does not clarify parameter formats, defaults, or interdependencies beyond what the schema already provides.

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?

The description clearly states the action ('Create') and the resource ('animation montage') with a source ('from an animation sequence'). It is specific enough to distinguish from related tools like create_anim_blueprint, though it could be slightly more detailed about what a montage represents. Overall, it's a clear purpose statement.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool instead of alternatives. It does not mention prerequisites, typical use cases, or exclusions. With many sibling tools for animation and asset creation, this lack of context makes it hard for an agent to select this tool appropriately.

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

create_level_sequenceB

Create a new LevelSequence asset for cinematics.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesSequence name
pathNoContent directory/Game/Cinematics

TDQS

B3.3/5.0
Behavior2/5

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

The description only mentions the creation action without disclosing side effects, error conditions, or permissions. It does not state what happens if the asset already exists or any other behavioral aspects.

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 a single, concise sentence that directly states the purpose. It is well-structured and front-loaded with the key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple creation tool, the description is adequate but incomplete. It does not mention any return values or output, nor does it provide context on the asset's properties or interactions with other systems.

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?

The schema already covers all parameters with descriptions (name, path). The tool description adds no extra meaning beyond what the schema provides, so it meets the baseline but does not exceed it.

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 the action (create) and the resource (LevelSequence asset) with a specific purpose (for cinematics). It is unambiguous and distinguishes it from other tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention any conditions, prerequisites, or comparison with sibling tools.

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

duplicate_actorsC

Duplicate actors by name.

ParametersJSON Schema
NameRequiredDescriptionDefault
namesYesActor names or labels to duplicate
offsetNoOffset for duplicated actors

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure and falls short. It doesn't explain what 'duplicate' entails (e.g., does it copy tags, transforms, bindings?), whether original actors are modified, or any side effects. The brief statement is minimally transparent for a tool that likely mutates the scene.

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 a single, short sentence that is immediately scannable. However, it may be too terse—while it earns points for front-loading, it sacrifices substance for brevity, as noted in other dimensions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with full schema coverage and no output schema, the description is minimally adequate but leaves gaps. It doesn't clarify return behavior or side effects, and the presence of a nested 'offset' object suggests some complexity that isn't addressed. Given the rich sibling context (Unreal engine automation), more context about what 'actors' are in this tool's domain would help.

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 both parameters ('names' and 'offset') have descriptions in the schema. The description adds 'by name' which clarifies that 'names' refers to actor names/labels, but the 'offset' parameter is already self-explanatory. No additional semantics are provided beyond the schema.

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?

The description 'Duplicate actors by name' clearly states the action (duplicate) and target (actors), and the 'by name' qualifier adds some scope. It's clear and specific, though it doesn't explicitly distinguish from siblings that might also duplicate since some sibling names like 'add_actor_binding' suggest related but different operations.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives. The description implies it duplicates actors, but there's no mention of prerequisites, position in a workflow, or why one might choose this over related operations like 'add_actor_binding' or 'spawn_niagara_attached'.

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

execute_console_commandA

Run a console command in the Unreal Editor (e.g., 'stat fps', 'stat unit', 'r.SetRes 1920x1080').

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYesConsole command to execute

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description must disclose behavioral traits. It only states 'Run a console command' without mentioning potential side effects, that arbitrary commands may modify editor state, or whether output is returned. This is insufficient for a mutating action, especially given no annotations.

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 a single, front-loaded sentence that gets straight to the point. Every word is necessary, with examples that are brief and illustrative. No fluff or redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description is adequate but lacks details about return behavior, authentication, or potential limitations. Given the existence of a sibling run_stat_command, the description could clarify its scope further, but it is minimally complete.

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?

The schema fully documents the 'command' parameter, and the description adds concrete example commands ('stat fps', 'stat unit', 'r.SetRes 1920x1080') that clarify the expected string format, providing value 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 the tool runs console commands in the Unreal Editor, with specific verbs ('Run'), resource ('console command'), and concrete examples. It distinguishes from siblings like execute_python (Python execution) and run_stat_command (likely a subset) by being the generic console command tool.

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 implies usage for any console command via examples but does not explicitly state when to use this over the sibling run_stat_command, which might be more appropriate for stat commands. There are no explicit exclusions or mentions of alternatives, leaving the selection ambiguous.

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

execute_pythonA

Execute arbitrary Python code in the Unreal Editor's Python environment. Has access to the full unreal module.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesPython code to execute in the editor

TDQS

A3.5/5.0
Behavior2/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. While it mentions arbitrary code execution and access to the full `unreal` module, it does not disclose potential side effects (e.g., modifying assets, saving packages, or crashing the editor) or error handling behavior. This is a significant gap for a tool with such broad capabilities.

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 two sentences, front-loaded with the core purpose, and contains no fluff. Every word earns its place, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's relative simplicity (single parameter, no output schema, no annotations), the description is minimally adequate. It explains the purpose and scope but lacks details on return values, error behavior, or how to retrieve output (e.g., print statements). For a generic code execution tool, this is arguably sufficient, but it could be more informative for a broader audience.

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?

The schema covers 100% of the parameter (code), including its description ('Python code to execute in the editor'). The tool description itself adds no additional meaning beyond what the schema already provides, so it stays at the baseline for high schema coverage.

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 the tool executes arbitrary Python code in the Unreal Editor's Python environment, with access to the full `unreal` module. This specific verb+resource clearly distinguishes it from sibling tools that perform specific operations like applying materials or running tests.

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 implies this tool is for custom logic not covered by other, more specific tools, but it does not explicitly say when to use it versus alternatives or when not to use it. No exclusions or alternative recommendations are provided, so the guidance is minimal but not misleading.

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

export_assetC

Export an asset to an external file format.

ParametersJSON Schema
NameRequiredDescriptionDefault
asset_pathYesAsset to export
output_pathYesOutput file path on disk

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description bears the full burden of explaining behavioral traits. It fails to disclose whether the operation is read-only or potentially destructive (e.g., does it overwrite existing output files?). It doesn't explain what happens on failure, whether directories are created, or any side effects. For a tool that writes to disk, this is a significant transparency gap.

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 a single, focused sentence that is brief and folds into the JSON payload cleanly. It's not verbose and is easily scannable. However, its brevity comes at the cost of missing opportunities for elaboration on nuances like file extension handling, which could be covered in one or two more sentences without becoming bloated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool as an export operation, the description is underspecified. It lacks details on supported output formats, whether the output file's extension dictates the format, and how it differs from similar file operations. Since there's no output schema and no annotations, the description should carry more weight in explaining return behaviors, but it doesn't.

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?

The schema has 100% parameter description coverage with both parameters described. However, the description itself adds nothing beyond the raw schema. The parameter descriptions are minimal: 'Asset to export' and 'Output file path on disk' provide the bare minimum. Since schema coverage is 100%, the baseline of 3 applies, but the thin descriptions like 'Asset to export' are terse.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Export an asset to an external file format' has a specific verb and resource, and the parameters clarify the user provides an asset path and output path. However, it doesn't distinguish itself from the sibling 'import_asset' beyond the direction of transfer, which is implied. It clearly states the verb 'export' and the resource 'asset,' which is adequate but not exceptional.

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

Usage Guidelines2/5

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

The description provides no context on when to use this tool versus alternatives. Given the broad set of sibling tools including 'import_asset', 'consolidate_assets', 'validate_assets', and 'run_gauntlet', explicit guidance on when to choose export_asset would be valuable. There's no mention of supported file formats, typical use cases, or exclusions.

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

export_sequence_fbxB

Export a level sequence to FBX.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesOutput FBX file path
sequence_pathYesLevelSequence asset path

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description is solely responsible for disclosing behavior. It only says 'export a level sequence to FBX' without mentioning side effects like overwriting the output file, whether it modifies the source sequence, error conditions, or any permissions required. This lack of disclosure is a notable gap.

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?

A single sentence with no extra words. It states the action directly and efficiently. The brevity is appropriate for what is otherwise a straightforward export operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (2 parameters, no nested objects, no output schema), a minimal description may suffice. However, the absence of annotations and any extension around usage or behavior leaves it just above minimal viability, but it is not exceptional.

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?

The schema describes both parameters completely (100% coverage) with names and descriptions ('LevelSequence asset path' and 'Output FBX file path'). The description doesn't add any extra semantics, and since the schema already carries the load, a baseline of 3 is appropriate.

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 the action ('Export'), the resource ('level sequence'), and the output format ('FBX'). This specificity distinguishes it from generic tools like 'export_asset' or 'render_sequence', even though the description doesn't explicitly compare with them.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, scenarios, or comparisons with siblings such as 'export_asset' or 'render_sequence'. This leaves the agent without context for selecting between related defaults.

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

fix_redirectorsA

Clean up asset redirectors in the project (runs FixUpRedirects commandlet).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description bears full responsibility for behavioral transparency. It mentions 'clean up' and the commandlet, implying asset modification, but lacks detail on side effects, irreversibility, or whether saves are required.

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 a single, concise sentence that efficiently conveys the tool's purpose without extraneous information.

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 simple tool with no inputs, the description is largely complete. It could mention potential effects like saving changes, but overall it sufficiently covers the tool's role in the pipeline.

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?

The tool has no parameters, so the schema provides no information. The description adds no parameter details, but since there are none, this is not a gap. The baseline for high schema coverage 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?

The description clearly states the action (clean up), the target (asset redirectors), and the context (in the project). It also references the underlying commandlet (FixUpRedirects), making the purpose unambiguous and distinct from other tools.

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

Usage Guidelines2/5

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

The description does not provide any guidance on when to use this tool versus alternatives, nor does it mention prerequisites, side effects, or typical scenarios. Users must infer usage from the purpose alone.

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

generate_collisionC

Generate collision for a static mesh.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoCollision typeauto
mesh_pathYesStatic mesh asset path

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. It doesn't mention if the operation is destructive (replaces existing collision), requires specific permissions, or affects the asset's save state. It also doesn't clarify what the 'auto' type does or if it modifies the asset in place. This is insufficient for a tool that likely modifies assets.

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 a single, short sentence that directly states the purpose. It's appropriately concise and front-loaded, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite full schema coverage and a clear verb, the description lacks crucial workflow context. For a tool that likely modifies assets, it doesn't mention if it's reversible, if it requires a loaded project, or if it's part of a larger pipeline. Sibling tools suggest this is an Unreal Editor automation tool, but without annotations or output schema, the description should explain more about what happens after generation.

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% for both parameters. The description adds value by stating the action on 'mesh_path', but it doesn't add any additional meaning like format constraints or example paths. Since the schema is thorough, baseline 3 is appropriate; the description doesn't elevate it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the action (generate collision) and resource (static mesh) clearly, but it's brief and doesn't distinguish from sibling tools like validate_assets or import_asset, though it is unique among the listed siblings. It doesn't specify what type of collision or any further nuance, so it's clear but not detailed.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It doesn't mention prerequisites like the mesh being imported, or that this should be used before baking or cooking content. The description just says 'Generate collision' without context on scenarios or exclusions.

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

generate_lightmap_uvsB

Generate lightmap UVs for a static mesh.

ParametersJSON Schema
NameRequiredDescriptionDefault
mesh_pathYesStatic mesh asset path

TDQS

B3.2/5.0
Behavior2/5

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

There are no annotations, so the description must disclose behavioral traits. It only states the action without mentioning side effects (e.g., modifying the mesh asset, overwriting existing UVs, need to save, or any destructive implications). This lack of transparency for a mutation-like tool is a significant gap.

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 a single concise sentence that fully conveys the core purpose. No fluff or redundant information; every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description leaves critical gaps: it does not state whether the mesh asset is modified in-place, whether existing UVs are overwritten, any prerequisites (e.g., mesh must be static, accessible), or error conditions. Given the mutation-like nature, more context is needed.

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?

The schema description for mesh_path is 'Static mesh asset path', which is unambiguous. The tool description adds no further meaning beyond the schema, so baseline 3 is appropriate given 100% coverage.

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 the action (generate lightmap UVs) and the target resource (static mesh). It is specific and distinguishes from sibling tools like generate_collision or apply_material, as no other tool mentions lightmap UV generation.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, prerequisites, or conditions under which it should be invoked. The description is purely declarative without contextual usage instructions.

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

generate_project_filesB

Regenerate IDE project files (Visual Studio, Xcode, Rider).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

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

No annotations (readOnly/destructive) are present, so the description carries full burden. It says 'Regenerate' which communicates a write operation, but does not disclose whether files are overwritten, if arbitrary settings/options are preserved, or if source paths are required. This is ambiguous for a regeneration action.

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?

One concise sentence, front-loaded with the core verb. No wasted words, no restating of schema because there is no schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description gives the tool's scope (IDE files for 3 named IDEs) and a rough action, but no output schema, no mention of file targets beyond IDE type, no prerequisites like opened project/solution, and no side-effects/consequences are explained. For a 0-param tool, it remains merely viable.

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?

Input schema is empty with first-level schema coverage at 100%? Actually properties is empty (no params). Param info is irrelevant; the description adds parameter-specific operational details. Baseline 4 is appropriate.

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?

Description uses specific verb 'Regenerate' and resource 'IDE project files (Visual Studio, Xcode, Rider)', clearly distinguishing from sibling tools focused on execution or testing. However, it doesn't contrast with related project file tools like 'build_project' or 'package_project'.

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 usage context is implied: regenerate project files when needing to refresh IDE project structure. It lists target IDEs but gives no explicit when-to-use or when-not-to-use guidance, and doesn't name alternatives.

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

get_anim_sequence_infoA

Get info about an animation sequence (length, frames, bone data).

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_pathYesAnimSequence asset path

TDQS

A3.8/5.0
Behavior3/5

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

The description clearly implies a read-only operation ('Get info') and gives some output categories, but it does not disclose error behavior, path validity requirements, or return format details. With no annotations, this is minimal but not misleading.

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 a single, front-loaded sentence that conveys the tool's purpose and key output details with no filler or redundancy.

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 one-parameter, no-output-schema tool, the description provides enough context: what it targets and what informational categories to expect. It could be stronger on error cases or path format, but the simplicity of the tool makes this adequate.

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?

The single parameter is fully described in the schema as an 'AnimSequence asset path', so the description adds no additional semantic value beyond the schema. This matches the baseline for high schema coverage.

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 states a specific verb ('Get info') and resource ('animation sequence'), and enumerates the returned data categories (length, frames, bone data). The qualifier 'animation' helps distinguish it from the sibling get_sequence_info tool.

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?

Usage context is implied: use this when you need metadata about an animation sequence. However, it does not explicitly state when not to use it, nor does it name alternatives such as get_sequence_info for non-animation sequences.

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

get_build_statusB

Parse the last build output and return structured errors, warnings, and progress.

ParametersJSON Schema
NameRequiredDescriptionDefault
build_logYesRaw build log output to parse for errors and warnings

TDQS

B3.2/5.0
Behavior2/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 does not clarify whether this is a safe read operation, whether side effects occur, or what happens on malformed input. The phrase 'the last build output' is ambiguous — unclear if the tool maintains state or if 'last' refers to the provided log. The description presents the function as a pure parser, but this is implied rather than explicit.

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?

Two tightly written clauses pack in the verb, resource, and output type without waste. Every word earns its place; it is efficiently front-loaded and instantly scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an extremely simple single-parameter tool with no output schema and no annotations, the description is mostly adequate but relies heavily on the agent assuming this is a pure function. It never explains the error format for unparseable input, or whether the original raw log is returned alongside structured errors. For a tool with this complexity, the description is acceptable but leaves edge-case behavior to the agent's imagination.

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 coverage is 100%, so a baseline of 3 applies. The description adds value by telling the agent that the `build_log` parameter is the raw input to be parsed for structured output, effectively linking the parameter to its purpose. While not drastically exceeding schema, it does reinforce the parsing semantics and the return shape, justifying a 4.

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?

The description clearly states the verb 'Parse' with the resource 'the last build output' and what it returns: 'structured errors, warnings, and progress.' This distinguishes it from siblings. However, the tool name suggests 'get' (fetch status) while the description emphasizes parsing raw log input, creating a mild name/description mismatch that costs a point.

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

Usage Guidelines2/5

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

No usage guidance is provided. The description does not state when to use this tool instead of siblings like `get_test_results` or `build_target`, nor does it mention prerequisites (e.g., that a build must have been run first). Clear context is implied but not stated.

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

get_connection_statusA

Check which Unreal Engine transports are currently connected (Remote Control, Python, Plugin Bridge).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden and does so well by specifying the exact transports interrogated (Remote Control, Python, Plugin Bridge), which adds concrete disclosure beyond a generic status check. However, it does not describe edge cases like the behavior when no transports are connected or the return value shape, which would round out transparency for this zero-annotation scenario.

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?

A single 14-word sentence that front-loads the action and resource, with the parenthetical efficiently enumerating the specific transports. Every word earns its place; no wasted verbiage or irrelevant details.

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 its low complexity (0 params, no schema, no annotations), the description covers the essential purpose fully, and the sibling list containing `sc_status` and `get_build_status` highlights how the explicit transport list helps disambiguate. However, it could note return value semantics (e.g., does it return a simple boolean, a list, etc.) since no output schema exists, which would make it fully complete.

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?

The tool has zero parameters, so the schema provides no room for ambiguity. Per the rubric, 0 parameters merits a baseline score of 4, and the description appropriately avoids inventing parameter details that don't exist.

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 uses a specific verb ('Check') and resource ('Unreal Engine transports currently connected'), and lists the exact transports (Remote Control, Python, Plugin Bridge) that distinguish it from siblings like `get_build_status` and `sc_status`. The parenthetical adds precision without ambiguity, making its purpose immediately clear.

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 implies usage through its imperative 'Check' but provides no explicit guidance on when to use this tool versus alternatives, nor does it name any sibling for comparison. For a simple status-check tool, the usage context is fairly self-evident from the name and description, but the rubric's requirement for explicit when/when-not/alternatives is not met.

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

get_loaded_cellsA

Query currently loaded world partition cells.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, and the description only states 'Query' without disclosing behavioral traits such as whether it is read-only, performance implications, or what constitutes 'currently loaded' cells. The agent gets no additional context beyond the tool name.

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 a single, tightly worded sentence with no fluff. Every word contributes to stating the tool's purpose, making it highly concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal but sufficient for a simple query tool with no parameters and no output schema. However, it omits any detail about the return format or what constitutes 'currently loaded' cells, leaving some ambiguity for the agent.

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?

There are no parameters, and the schema is empty with 100% coverage (vacuously). Per guidelines, a no-parameter tool receives a baseline score of 4, and the description adds no parameter details because none are needed.

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 the action (Query) and the resource (currently loaded world partition cells). It is specific and distinguishes itself from sibling tools, none of which appear to query loaded cells.

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

Usage Guidelines2/5

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

No indication of when to use this tool versus alternatives, no prerequisites, no exclusions, and no mention of alternative query methods. The user is left to infer usage context from the name alone.

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

get_preset_infoB

Get details of a Remote Control Preset (exposed properties and functions).

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_nameYesPreset name

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It correctly implies a read-only operation and clarifies the semantic scope of 'details' with the parenthetical, but it doesn't address potential errors (e.g., nonexistent preset), behavior expectations, or any side effects. For a three-word schema ('Preset name'), the description does add resource-type context, but the behavioral disclosure is minimal—comparable to a middling description for an unannotated tool.

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 a single 13-word sentence that front-loads the verb 'Get' and wastes zero words. The parenthetical efficiently disambiguates what kind of details are returned. Every word earns its place; this is a model of concise description writing.

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 low-complexity tool (1 param, simple read operation, no enums or nested objects), the combination of description and full schema coverage paints a complete enough picture. The description explains what's returned (exposed properties and functions) and the schema documents the parameter fully. The only gaps are edge behaviors like error handling for invalid preset names, but for a simple getter with no output schema required, this is appropriately complete.

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% ('Preset name' for preset_name), so the baseline is 3 per the rubric. The tool description adds no parameter-level semantics beyond what the schema already provides, but it doesn't need to—the schema fully documents the only parameter. This is a case where the schema does the heavy lifting and a 3 is appropriate.

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?

The description uses a specific verb+resource construction ('Get details of a Remote Control Preset') and the parenthetical ('exposed properties and functions') scopes what 'details' means. It implicitly differentiates from sibling tools like get_preset_property and call_preset_function by indicating the full set of exposed items is returned, though it never explicitly names or contrasts these alternatives. The differentiation is functional but implicit, keeping this just shy of a 5.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool versus the many related siblings (get_preset_property, call_preset_function, list_presets). While one could infer a workflow of inspecting a preset's exposed members before acting on them, the description never states this. Sibling context suggests a natural 'get info before getting/setting properties' flow, but that connection is left entirely to the reader.

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

get_preset_propertyB

Get a property value exposed via a Remote Control Preset.

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_nameYesPreset name
property_nameYesExposed property name

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states the action but does not disclose any behavioral traits such as whether the property is read-only, what happens if the property doesn't exist, or any side effects. For a getter, this is minimal but acceptable; however, it lacks detail on error behavior or return format.

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 a single, concise sentence that front-loads the purpose. No wasted words, and it is appropriately sized for a simple getter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, no output schema, no nested objects), the description is adequate but not rich. It doesn't mention what the return value looks like or any prerequisites, but for a basic getter with full schema coverage, it meets the minimum viable threshold.

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 both parameters. The description adds no extra meaning beyond the schema, but the baseline is 3 given high coverage. It doesn't clarify the relationship between preset_name and property_name or any constraints.

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?

The description clearly states the tool gets a property value from a Remote Control Preset, using a specific verb and resource. It distinguishes from siblings like set_preset_property and call_preset_function, though it doesn't explicitly contrast them.

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 implies usage for reading exposed properties from a preset, but provides no explicit guidance on when to use this vs. alternatives like get_preset_info or set_preset_property. Context is clear but exclusions are absent.

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

get_sequence_infoA

Get full structure of a level sequence (bindings, tracks, sections).

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_pathYesLevelSequence asset path

TDQS

A4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the burden of disclosing behavior. The verb 'Get' clearly implies a read-only, non-mutating operation, and it discloses what information will be returned. It does not explicitly state that no modifications occur, but for a simple getter this is reasonably transparent. It also does not discuss error conditions or permissions, but these are less critical for a read operation.

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 a single, well-structured sentence that is front-loaded with the action and resource. It includes useful clarifications (bindings, tracks, sections) without unnecessary verbiage. Every word earns its place.

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?

The tool is simple with one parameter and no output schema. The description explains what the tool returns at a high level and gives examples. It covers the essentials adequately for the tool's complexity. While it might mention potential errors or exact output format, these are not required for a straightforward getter, especially given the high schema coverage.

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?

The input schema has 100% description coverage for the single parameter 'sequence_path', which already states it is a 'LevelSequence asset path'. The description adds 'level sequence' context but does not provide any additional meaning beyond the schema. Baseline 3 is appropriate when the schema already documents parameters fully.

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 uses a specific verb ('Get') and clearly identifies the resource ('full structure of a level sequence') with concrete examples (bindings, tracks, sections). This clearly distinguishes it from sibling tools like create_level_sequence or add_track, and from the similar get_anim_sequence_info which targets animation sequences, not level sequences.

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 implies when to use the tool (when you need the structure of a level sequence) but does not explicitly state exclusions or alternatives. Sibling tool get_anim_sequence_info exists, but the description does not mention that distinction. It provides clear context but lacks explicit when-not-to-use guidance.

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

get_test_resultsB

Get the results of the last automation test run.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/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. However, it only says 'get the results' with no mention of side effects, permissions, or what happens if no test has run. It implicitly implies read-only behavior but does not explicitly state any absence of side effects or error conditions. For a getter, this is thin.

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 a single concise sentence with no redundancy or fluff. It perfectly captures the tool's function without wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description is minimally sufficient, but it lacks context such as what 'results' include (e.g., pass/fail counts, logs), whether the tool is read-only or triggers any side effects, and how it relates to the various automation test runner siblings. For a getter with zero params, this is acceptable but not thorough.

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?

The tool has zero parametersyears, so the input schema is complete with no undeclared parameters. Per the rubric, a zero-parameter tool gets a baseline score of 4 since there is no missing parameter documentation.

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?

The description clearly specifies the action (get) and the resource (results of the last automation test run). It distinguishes itself from siblings like 'run_automation_tests_by_category' or 'list_automation_tests' by focusing on retrieval rather than execution or listing. However, it could be slightly more specific about what constitutes a 'test run' (e.g., single test or suite), so not a perfect 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It simply restates the tool's name. There is no mention of needing to run tests first or any context where this should be preferred over other getters.

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

get_undo_historyA

Get the undo/redo transaction history.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of recent transactions to return

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose any behavioral traits such as side effects, permissions, or error handling. It is a simple get operation, but the lack of any transparency lowers the score.

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 a single, direct sentence with no unnecessary words. It is front-loaded with the verb and clearly conveys the purpose without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal and does not explain the output format, the range of the history, or any edge cases. Given the simple nature of the tool, it is adequate but leaves room for more context.

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?

The schema already fully describes the 'count' parameter with a clear description. The tool description does not add additional meaning beyond what the schema provides, so the baseline for high schema coverage 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?

The description clearly states the action (get) and the resource (undo/redo transaction history), which distinguishes it from sibling tools like undo and redo that perform actions rather than retrieve history.

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 implies usage for retrieving undo/redo history but does not explicitly state when to use it over alternatives like undo or redo, nor does it mention any preconditions or context.

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

import_assetB

Import an external file (FBX, PNG, WAV, etc.) into the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
source_fileYesPath to the file on disk to import
destination_pathYesContent directory to import into (e.g., /Game/Meshes)

TDQS

B3.2/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden. It only states the action without disclosing side effects (e.g., whether it overwrites existing assets), potential failures, or requirements. This leaves the agent blind to behavioral implications of invoking the import.

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 a single, focused sentence that front-loads the action and examples. There is no redundancy or unnecessary verbiage, making it appropriately concise for a simple import tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and complete schema coverage, the description still lacks context about expected outcomes, supported file formats' constraints, or error handling. Without an output schema, the description should clarify what happens after import, but it does not, leaving a notable gap.

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%, with each parameter already documented (source_file as a path and destination_path as a content directory). The description adds format examples but does not elaborate on parameter semantics or provide additional details beyond the schema. Baseline 3 is appropriate.

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 the tool imports external files into the project, using a specific verb ('Import') and resource ('external file... into the project'). It lists example formats (FBX, PNG, WAV) and distinctly contrasts with sibling tools like export_asset (reverse direction) and reimport_skeletal_mesh (specific to skeletal meshes).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, scenarios, or exclusions. For example, it does not indicate whether this should be used for initial imports only, or how it relates to reimport tools. The agent must infer usage from context.

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

list_automation_testsB

List available automation tests in the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNoFilter tests by name substring

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for disclosing behavior. It simply states the action but does not explicitly indicate that it is a read-only operation, mention potential output format, or note any side effects or performance considerations. The minimal wording provides minimal transparency.

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 a single, clear sentence with zero fluff. It is front-loaded and perfectly sized for the tool's simplicity, earning a high score for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one optional parameter and no output schema. The description is minimal but adequate for the core action. However, it lacks any indication of the return structure (e.g., list of names) or whether the filter is case-sensitive, which would enhance completeness for a listing operation.

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?

The schema covers the single optional parameter 'filter' with a description ('Filter tests by name substring'), so the description adds no further semantic value. Since schema coverage is 100%, the baseline of 3 is appropriate; the description does not need to elaborate beyond what the schema already provides.

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 'List available automation tests in the project' uses a specific verb ('List') and a clear resource ('automation tests'), making the purpose unambiguous. It distinguishes itself from siblings like run_automation_test and run_all_automation_tests by focusing on listing rather than executing.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It does not mention complementary tools like run_automation_test or run_automation_tests_by_category, nor does it describe scenarios where listing would be appropriate (e.g., before executing tests).

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

list_data_layersA

List all data layers in the current World Partition level.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

The description implies a read-only operation but does not explicitly state side effects, permissions, or limitations. Without annotations, it only partially covers transparency.

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 a single, clear sentence with no unnecessary words, perfectly concise.

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 simple parameterless listing operation, the description is complete; it explains what it does, and since there is no output schema, return values need not be detailed.

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?

There are no parameters, and the schema coverage is 100% (empty), so the description adds nothing beyond the schema, meeting the baseline.

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 the action (list), the resource (data layers), and the context (current World Partition level), effectively distinguishing it from sibling tools.

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 does not explicitly mention when to use this tool over alternatives or any exclusions, though the simple nature of listing makes its purpose self-evident.

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

list_presetsA

List all Remote Control Presets in the project.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/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 burden. The description clearly states it lists all presets in the project, implying a read-only aggregation operationaine. It doesn't mention any side effects, performance implications, or output details, but for a list operation, that's acceptable. It doesn't contradict anything, and the name 'list' suggests non-destructive behavior.

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 a single concise sentence that clearly states the action and scope. Zero wasted words.

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?

The tool is simple with no parameters, so the description is sufficient. It could mention that it returns a list, but that's implied. No annotations to add more context, but the simplicity means completeness is high.

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?

There are no parameters, and the schema covers 100% of parameters (none). So no extra explanation is needed. The description accurately reflects 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 the action (list), the resource (Remote Control Presets), and the scope (all in the project). It is specific and distinguishes from sibling tools like get_preset_info which focuses on a single preset, and set/get preset properties which modify or query individual properties.

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 explicitly tells when to use this tool: to list all presets in the project. It doesn't explicitly mention alternatives or exclusions, but the purpose is clear enough that an agent can infer it's for broad enumeration rather than targeting specific presets. Sibling tools like get_preset_info suggest differentiation.

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

package_projectA

Package the project for distribution. Runs build + cook + stage + package.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoTarget platform
compressedNoCompress pak files
configurationNoBuild configuration (typically Shipping for distribution)Shipping

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose the multi-step behavior by stating 'Runs build + cook + stage + package.' However, it omits side effects, prerequisites, output locations, or whether the process mutates the project, leaving meaningful behavioral gaps.

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 two short sentences, front-loads the main purpose, and includes the essential pipeline detail without wasted words. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core action and pipeline, which is adequate for basic selection, but there is no output schema, no annotations, and no mention of what the packaged output looks like or what side effects occur. For a multi-stage packaging tool, this leaves notable gaps.

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 clearly. The description itself adds no parameter-level meaning, so the schema-heavy baseline of 3 is appropriate.

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 uses a specific verb and resource, 'Package the project for distribution,' and clarifies the composite nature of the operation by listing the pipeline stages: build + cook + stage + package. This clearly distinguishes it from sibling tools like build_cook_run or cook_content.

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 phrase 'for distribution' provides a clear use case, and the stage list implies a full end-to-end pipeline rather than a single build or cook step. It does not explicitly name alternatives or state when not to use it, but the context is reasonably clear.

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

redoB

Redo the last undone editor action.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden, but 'Redo the last undone editor action' adds minimal insight beyond the tool's name. It doesn't disclose what happens when there's nothing to redo, whether the action clears the redo stack, or any side effects on the undo history.

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 a single, efficient sentence with no wasted words - front-loaded and appropriately sized for a zero-parameter tool. A slight deduction for being at the edge of under-specification, though the simplicity of the tool mitigates this.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple zero-parameter redo tool, the description is minimally viable but leaves gaps. It doesn't mention the relationship to `undo`, behavior when the redo stack is empty, or what the return value indicates. Given the complexity is low, a 3 is fair.

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?

The tool has zero parameters, so schema coverage is trivially 100% with nothing for the description to clarify. Per the rubric, 0 params earns a baseline of 4, and no deduction is warranted.

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?

The description uses a specific verb+object construction ('Redo the last undone editor action') that clearly identifies the operation. However, it doesn't explicitly differentiate from sibling tools like `undo` or `get_undo_history`, though the redo/undo pairing is strongly implied.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool vs. alternatives like `undo` or `get_undo_history`. The tool could have mentioned that it follows an undo operation or that it only works after an undo has occurred, but no such context is given.

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

reimport_skeletal_meshB

Reimport a skeletal mesh from its source file.

ParametersJSON Schema
NameRequiredDescriptionDefault
mesh_pathYesSkeletal mesh asset path

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations to lean on, the description carries full responsibility for disclosing behavior. It fails to mention that reimporting will overwrite the existing mesh data, that the source file must be resolvable, or what happens if the source is missing or the asset is not a skeletal mesh. The description is largely a restatement of the tool name.

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?

A single, clear sentence that front-loads the action and object. No wasted words, and the parenthetical is unnecessary. Perfectly concise for the minimal information it provides.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description is minimally adequate. The agent can infer the primary use case. However, it doesn't clarify that reimport replaces existing mesh data (potential side effect), whether the source path is stored in the asset, or what the return value indicates. Could be improved with a note like 'Overwrites the existing asset's data from its source file'.

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%, with the only param 'mesh_path' documented as 'Skeletal mesh asset path'. The description adds no additional semantics beyond the schema, so the baseline of 3 is appropriate. There is no format, example, or path syntax guidance added.

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?

The description uses a specific verb ('reimport') with a clear resource ('skeletal mesh') and the source of truth ('its source file'). It clearly distinguishes the intent from sibling 'import_asset' by using 're-' to imply updating an existing asset, though it doesn't explicitly name the alternative.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives like 'import_asset' or when a reimport is preferred over a fresh import. There are no implied prerequisites, no mention of whether the asset must already exist or be selected, and no exclusions.

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

reinit_niagara_systemC

Reinitialize a Niagara system on an actor.

ParametersJSON Schema
NameRequiredDescriptionDefault
actor_nameYesActor with Niagara component

TDQS

C2.9/5.0
Behavior2/5

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

There are no annotations to rely on, so the description must disclose behavioral traits itself. It only says what the tool does, not any side effects, prerequisites, or whether the operation is reversible. For a potentially mutating operation (reinitialize), it should at least mention that it resets to initial state or similar, but it does not.

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 a single, lean sentence that directly states the purpose with no fluff or redundancy. It is appropriately front-loaded and every word contributes to meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations and output schema, the description must carry more weight. It is too brief to fully explain the tool's behavior, usage context, or relationship to similar tools. For a simple tool with one parameter, it might be minimally acceptable, but the presence of 'reset_niagara_system' as a sibling raises ambiguity. The description does not offer enough to resolve that, making it incomplete.

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?

The input schema covers 100% of the parameter descriptions, including 'Actor with Niagara component', so the schema already explains the parameter. The tool description adds no new parameter information beyond implying the actor is the target. Per the rubric, baseline 3 is appropriate when schema coverage is high, and the description does not add value beyond that.

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?

The description clearly states the action ('Reinitialize') and the resource ('a Niagara system on an actor'). It is specific enough to distinguish it from general tools like 'spawn_niagara_*' or 'set_niagara_*', but it does not explicitly differentiate from the sibling tool 'reset_niagara_system', which could be similar. Thus it is clear but lacks explicit differentiation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or situations where a different tool would be more appropriate. The only context is implicit in the purpose, but there is no explicit usage guidance.

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

render_sequenceB

Queue a Movie Render Queue job for a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_pathYesLevelSequence asset path
output_directoryNoOutput directory for rendered frames

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosing behavior, but it only says 'queue a job.' It does not indicate whether the operation is asynchronous, what happens on success or failure, or whether it returns any job identifier or status.

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 a single, direct sentence with no filler or redundancy. It is appropriately concise for the simple tool it describes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is minimal. It does not explain whether the call blocks, returns a job ID, or how to check status. Lacks essential behavioral context for an agent to use effectively.

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?

Both parameters (sequence_path and output_directory) have descriptions in the schema, fulfilling the baseline. The tool description itself adds no additional meaning or usage details beyond what's in the schema, so a baseline score of 3 is appropriate.

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 the action (queue a render job) and the specific resource type (Movie Render Queue) for a given sequence. It distinguishes from sibling tools like export_sequence_fbx or set_playback_range by focusing on the rendering queue workflow.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing an open project or a valid sequence, nor does it contrast with other sequence-related tools that might be more appropriate for certain tasks.

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

resave_packagesB

Bulk resave all packages in the project (runs ResavePackages commandlet).

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNoLimit to a specific content directory

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description carries the burden of disclosing side effects. It only states the action 'resave' without mentioning potential consequences like file overwrites, time consumption, or impact on the asset registry. This lack of transparency could surprise users.

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 a single, concise sentence that immediately conveys the tool's purpose. It is front-loaded and efficient, containing no redundant information.

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 simple tool with one optional parameter, the description adequately states the action. It does not explain return behavior, but no output schema exists, so that is not required. It could mention possible failures or limitations, but overall it is sufficiently complete given its simplicity.

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?

The schema covers the single optional parameter 'directory' with a clear description. The tool description adds no additional meaning or constraints, but since schema coverage is 100%, the baseline score of 3 is appropriate.

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 the tool's function: 'Bulk resave all packages in the project' and references the specific commandlet. It distinguishes itself from sibling tools by focusing on resaving, which is distinct from validation, fixing, or building operations.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It does not mention typical scenarios (e.g., after engine upgrades) or why one might prefer it over other asset management tools. The description is purely functional without contextual usage instructions.

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

reset_niagara_systemC

Reset a Niagara system on an actor.

ParametersJSON Schema
NameRequiredDescriptionDefault
actor_nameYesActor with Niagara component

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the burden. It doesn't disclose whether this is a safe idempotent operation, whether it affects ongoing simulations, or if it requires specific conditions. The difference between 'reset' and 'reinit' remains unclear to the agent.

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 one concise sentence that front-loads the purpose. It is efficient and free of fluff, though it could add a bit more context without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations and no output schema, the description is minimal. For a tool that likely performs a mutation (reset), the lack of behavioral context and disambiguation from reinit_niagara_system makes it incomplete. The tool is relatively simple, but the ambiguity is significant.

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?

The schema covers 100% of parameters with a description for actor_name. The description adds nothing beyond that, but the schema is complete. According to guidelines, baseline 3 is appropriate when schema has full coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Reset a Niagara system on an actor' clearly states the action (reset) and target (Niagara system on an actor). It distinguishes from siblings like reinit_niagara_system and spawn_niagara_at_location, though it doesn't explicitly contrast them. It is a bit vague about what 'reset' entails compared to 'reinit'.

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

Usage Guidelines2/5

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

No guidance on when to use this vs alternatives like reinit_niagara_system. The description provides no context, prerequisites, or exclusion criteria. The user is left guessing about the difference between reset and reinit.

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

run_all_automation_testsC

Run all automation tests.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.5/5.0
Behavior1/5

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

The description gives no information about side effects, return values, or any observable behavior beyond stating that it runs tests. No annotations are present to indicate safety or impact.

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 extremely concise, consisting of a single short sentence that conveys the core purpose without any fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is too minimal; it lacks context about the scope of 'all tests', potential outcomes, or how it fits into the broader set of test tools. It does not provide enough information for a user to understand the tool's full behavior.

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?

The tool has no parameters, so there is nothing to explain. The description adds no parameter-specific information, but since the schema has no parameters, this is acceptable.

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?

The description clearly states that the tool runs all automation tests, but it does not specify how this differs from running individual tests or other test-related tools, so it is slightly ambiguous.

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

Usage Guidelines1/5

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

No usage guidelines are provided; the description does not indicate when to use this tool instead of alternatives like run_automation_test or run_map_check, nor any prerequisites or caveats.

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

run_automation_testC

Run a specific automation test by name.

ParametersJSON Schema
NameRequiredDescriptionDefault
test_nameYesTest name or pattern to run

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it runs a test, but does not explain any side effects, whether it returns results, or whether it is synchronous. This is minimal and insufficient for understanding the tool's behavior.

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 a single sentence with no redundant words, effectively front-loading the core purpose. It is appropriately concise for a tool with one parameter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool lacks an output schema and has no annotations, yet the description does not mention what the tool returns or how results are communicated. It also fails to position itself within the family of automation test tools, making it incomplete for an agent to use confidently.

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?

The schema already describes the parameter 'test_name' with 100% coverage, so the baseline is 3. The description's 'by name' adds little beyond simply restating the schema, providing no additional semantic value.

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?

The description clearly states the action ('Run') and the resource ('specific automation test'), with the qualifier 'by name' distinguishing it from tools that run by category or all tests. However, it does not explicitly resolve the ambiguity between a single test name and a pattern as indicated in the schema.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus similar sibling tools such as run_automation_tests_by_category or run_all_automation_tests. There is no mention of alternatives or exclusions, leaving the agent to infer usage from the name alone.

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

run_automation_tests_by_categoryB

Run automation tests matching a category pattern.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryYesTest category pattern (e.g., 'Project.Functional', 'Engine.Rendering')

TDQS

B3.2/5.0
Behavior2/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. It does not disclose whether this is a long-running operation, whether it blocks, what happens on failure, or any side effects. The description only states the action without behavioral 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?

The description is a single sentence, concise and front-loaded with the action. It is appropriately sized for a simple tool, though it could include a brief note on behavior without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description is adequate but lacks behavioral details like execution time, result reporting, or error handling. It is complete enough for basic selection but not for anticipating outcomes.

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% for the single parameter, and the description adds a concrete example of the pattern format. However, it doesn't explain how the pattern is matched (e.g., wildcard, regex) or what happens if no tests match, so it adds minimal value beyond the schema.

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?

The description clearly states the tool runs automation tests matching a category pattern, with a specific verb and resource. It distinguishes from siblings like run_automation_test (singular) and run_all_automation_tests (all) by implying a filtered subset, though it doesn't explicitly name them.

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 implies usage for running a subset of tests by category, but does not explicitly state when to use this over run_automation_test or run_all_automation_tests. No exclusions or alternatives are mentioned, leaving the agent to infer from the category pattern.

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

run_editor_utility_blueprintB

Run an Editor Utility Blueprint's Run event.

ParametersJSON Schema
NameRequiredDescriptionDefault
blueprint_pathYesEditor Utility Blueprint asset path

TDQS

B3/5.0
Behavior1/5

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

With no annotations, the description carries the full burden, but it reveals nothing about side effects, required permissions, or expected outcomes. The term 'run' implies an action but gives no detail on consequences or return values.

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 extremely concise, consisting of a single clear sentence with no redundancy or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The simplicity of the tool (one parameter, no output schema) reduces the need for extensive explanation, but the description still omits critical context such as what happens after running, potential errors, or any dependencies. Thus it is incomplete for a new user.

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?

The single parameter has a description ('Editor Utility Blueprint asset path') that matches its name and adds minimal context. Since schema coverage is 100% and the description adds only a bit of clarity, the baseline score of 3 is appropriate.

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 the tool's function: it runs an Editor Utility Blueprint's Run event. This is specific and distinguishes it from siblings like run_editor_utility_widget, which runs widgets instead.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It lacks any mention of conditions, prerequisites, or scenarios where this would be preferred over other tools.

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

run_editor_utility_widgetB

Run an Editor Utility Widget by asset path.

ParametersJSON Schema
NameRequiredDescriptionDefault
widget_pathYesEditor Utility Widget asset path

TDQS

B3.3/5.0
Behavior2/5

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

Since no annotations are provided, the description carries the full burden of disclosing side effects and execution context. It only says 'Run an Editor Utility Widget' without explaining what happens during execution, whether it mutates assets, or what errors might occur.

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 a single sentence of eight words, front-loaded and free of filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool, the description provides the core action and input. However, it lacks usage differentiation and behavioral detail, making it minimally complete given the extensive sibling list.

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?

The schema already describes widget_path as 'Editor Utility Widget asset path' with 100% coverage. The description repeats this with 'by asset path' but adds no new meaning, so the baseline of 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?

The description uses the specific verb 'Run' plus the resource 'Editor Utility Widget' and the method 'by asset path'. This clearly differentiates it from the sibling run_editor_utility_blueprint, which targets a different asset type.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus run_editor_utility_blueprint or other related utilities. It does not mention alternatives, exclusions, or prerequisites.

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

run_gauntletC

Launch a Gauntlet test session via UAT. Runs tests in a full game instance.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoTarget platform
test_nameYesGauntlet test name
configurationNoBuild configurationDevelopment

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the high-level action and omits details like whether the session is blocking, requires a connected editor, produces logs, or has side effects on the game instance. It does not contradict annotations but leaves significant behavioral uncertainty.

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 two short sentences, directly front-loaded with the primary purpose. Every word adds value and there is no unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and no annotations, so the description should compensate by explaining expected outcomes, side effects, or usage context. It does not address what the agent can expect after launching, how it relates to other test tools, or any operational requirements, making it incomplete for a tool with this complexity.

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?

The input schema has 100% coverage with descriptions for all three parameters, so the baseline is 3. The description adds no extra parameter context beyond what the schema already provides, failing to clarify parameter interactions or defaults beyond the schema's existing 'Development' default.

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?

The description clearly states the tool's action: 'Launch a Gauntlet test session via UAT' and adds a key detail ('Runs tests in a full game instance') that differentiates it from simpler automation test tools. It uses a specific verb+resource structure, though it does not explicitly name alternative tools for disambiguation.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus sibling tools like run_automation_tests_by_category or run_all_automation_tests. The description merely states what it does without specifying prerequisites, intended scenarios, or exclusions.

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

run_map_checkB

Run Map Check validation on the current level.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states the action without discussing side effects, whether the operation is safe/read-only, expected runtime, or where validation results are surfaced. The existence of a get_test_results sibling hints results are hosted elsewhere, but the description never mentions this.

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 a single front-loaded sentence with no filler words; every token contributes meaning. It is appropriately sized for a zero-parameter tool, though it could still add value (e.g., result location) without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool (0 params, no output schema, no annotations), the description is minimally adequate in stating the action but fails to explain what a successful run produces, how to interpret results, whether the level is modified, or how this validation complements the get_test_results workflow. Given the absence of structured metadata, the description needed to compensate and did not.

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?

The tool has zero parameters, so there is nothing for the description to document beyond the schema. Per the rubric, the 0-param case warrants a baseline score of 4, and the description correctly adds no redundant parameter information.

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?

The description uses a specific verb+resource+scope ('Run Map Check validation on the current level'), clearly stating what it does and where it applies. It implicitly differentiates from siblings like validate_assets (asset-level) and run_gauntlet (automation suites) by naming a unique level-scoped validation, though it does not explicitly call out those distinctions.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives. It does not mention prerequisites (e.g., having a level open), when not to use it, or how it relates to siblings such as validate_assets, get_test_results, or the run_automation_test tools.

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

run_stat_commandB

Execute a stat console command (e.g., stat fps, stat unit, stat memory).

ParametersJSON Schema
NameRequiredDescriptionDefault
statYesStat command (e.g., 'fps', 'unit', 'memory', 'scenerendering', 'game', 'slow')

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'execute', without explaining whether the command toggles a display, requires a running game session, or has any side effects. The lack of detail leaves the agent uncertain about consequences.

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 a single, front-loaded sentence that communicates the essential action and examples without extraneous words. Every element contributes to understanding, achieving high efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one well-documented parameter and no output schema, the description is minimally viable but lacks contextual details such as what happens after execution (e.g., stats appear on HUD) or any prerequisites. It meets the basic requirement but leaves room for improvement.

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%, and the schema already provides the parameter 'stat' with examples ('fps', 'unit', 'memory'). The description merely repeats these examples, adding minimal value beyond the structured data, so the baseline score of 3 is appropriate.

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?

The description clearly states the tool executes a 'stat console command' with concrete examples ('stat fps', 'stat unit', 'stat memory'), indicating a specific verb and resource. It is distinct from the broader 'execute_console_command' sibling by focusing on stat commands, though it does not explicitly name the alternative.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'execute_console_command', nor does it mention any prerequisites or exclusions. The user must infer that this is specialized for stat commands without explicit direction.

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

sc_checkinB

Check in file(s) to source control with a description.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathsYesFile paths to check in
descriptionYesCheck-in description / commit message

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description must carry the burden of behavioral disclosure. It only states the action without revealing side effects, preconditions, or what happens on failure. Since check-in is a mutating operation that likely requires prior checkout and may create a new revision, the lack of such context is a significant gap for an agent deciding whether and how to invoke this tool.

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 a single concise sentence with no filler. It directly states the action and requirement for a description, earning full marks for conciseness and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is too terse. It lacks critical context such as prerequisites (e.g., files must be checked out first), potential impacts (e.g., locks or conflicts), or failure behavior. Given the sibling tools (sc_checkout, sc_revert), the agent needs guidance on the sequence of operations, which is missing.

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%: 'paths' is described as 'File paths to check in' and 'description' as 'Check-in description / commit message'. The tool description adds no extra parameter semantics beyond the schema, so the baseline of 3 applies since the schema already fully documents the parameters.

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?

The description clearly states the action: 'Check in file(s) to source control with a description.' It specifies the verb (check in), the resource (file(s) to source control), and even notes the description requirement. While it doesn't explicitly contrast with siblings like sc_checkout or sc_revert, the specific 'check in' phrasing naturally distinguishes it from other source control operations.

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 implies its use case (committing files) but provides no explicit guidance on when to use this tool versus alternatives like sc_checkout or sc_mark_for_add. An agent can infer that check-in is for committing changes, but there's no mention of prerequisites (e.g., must be checked out first) or exclusions. The context of sibling names provides some guidance, but the description itself gives no direct advice.

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

sc_checkoutC

Check out file(s) from source control.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathsYesFile paths to check out

TDQS

C2.5/5.0
Behavior1/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does not state what happens during checkout (e.g., file locking, write permissions, side effects), nor does it mention any caveats or environmental requirements.

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 a single concise sentence with no fluff, making it easy to parse. However, its brevity borders on under-specification, though it satisfies the conciseness requirement by being front-loaded and direct.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one parameter, no annotations, no output schema), the description is minimally sufficient but lacks important context such as behavioral effects, workflow integration with sibling tools (e.g., sc_checkin), and any conditions that might prevent checkout. This is inadequate for an agent to use it confidently.

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?

The single parameter 'paths' is fully documented in the schema with the description 'File paths to check out', giving 100% coverage. The tool description adds no extra meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

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?

The description clearly states the tool checks out file(s) from source control, using a specific verb and resource. It distinguishes from siblings like sc_checkin (the opposite operation) but does not explicitly contrast with other source control operations, leaving some ambiguity.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives like sc_checkin or sc_revert. The description lacks any mention of prerequisites, typical scenarios, or exclusions, leaving the agent without decision-making support.

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

sc_diffA

Get the diff for a modified file in source control.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile path to diff

TDQS

A3.8/5.0
Behavior4/5

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

Annotations are absent, so the description must convey side effects. The verb 'Get' implies a read-only operation with no mutations, which is clear. However, it does not explicitly state that it is non-destructive or that it does not modify the working copy, though this is strongly inferred.

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 a single, concise sentence with no redundant information. It directly states the action and target without any fluff or unnecessary details.

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 simple read-only operation, the description is sufficient. It identifies the action and target, but it does not specify the output format (e.g., unified diff) or any additional context like branch or revision, which might be expected. However, the absence of an output schema reduces the need for such detail.

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?

The tool description adds no meaning beyond the input schema. The schema already defines the 'path' parameter with a description 'File path to diff.' The description of the tool itself does not elaborate on the parameter's semantics, so it relies entirely on 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 the tool's function: 'Get the diff for a modified file in source control.' It uses a specific verb ('Get') and specifies the resource ('diff') and context ('modified file in source control'), distinguishing it from sibling tools like sc_checkout or sc_status.

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

Usage Guidelines2/5

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

The description does not provide any guidance on when to use this tool versus alternatives. It does not mention scenarios where a diff is needed or differentiate from other source control read operations. Usage context is entirely implicit.

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

sc_mark_for_addB

Mark new file(s) for add in source control.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathsYesFile paths to mark for add

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations available, the description must fully disclose behavior, but it only states the action without side effects, permissions, or effects on existing files. It does not clarify whether this stages files temporarily, requires prior creation, or how it interacts with other source control operations.

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 a single concise sentence with no redundant words, which is efficient. However, it is almost too terse, lacking any elaboration that could aid the agent. Still, it scores high on conciseness because there is no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, the description must compensate, but it only states the basic action. It does not mention when to use it (e.g., for untracked files before commit), potential side effects (adds to index), or any behaviors like error handling. Given a one-parameter tool, this is minimal but insufficient for an agent to fully understand implications.

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?

The tool description adds no detail beyond the schema's parameter description 'File paths to mark for add'. Since schema coverage is 100%, the baseline score of 3 applies, but the description does not enhance understanding of the paths parameter (e.g., format, relative vs absolute, directories).

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 uses a specific verb 'mark' with a clear object 'new file(s)' and specifies the resource 'source control'. It effectively distinguishes from sibling tools like sc_checkout or sc_revert, as it uniquely indicates staging new files for addition.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like sc_checkout or sc_checkin. It does not mention explicit conditions or exclusions, leaving the agent without context for tool selection.

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

sc_revertB

Revert file(s) in source control.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathsYesFile paths to revert

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavior. It only says 'Revert file(s)' without stating whether it discards local changes, whether it’s destructive, whether it requires checkout, or how it differs from 'undo'. The description doesn't compensate for the missing annotations.

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 a single sentence, extremely concise and front-loaded. It covers the essential action and resource. There is no wasted text, but it could add a bit more context (like 'discards local changes') without bloating, though conciseness is strong.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple: one parameter, no output schema, and the description gives the core purpose. However, given it's a mutation tool with no annotations, it would benefit from stating what 'revert' does (e.g., reverts to last checked-in version) and any destructive implications. The current description is minimal but adequate for a simple tool.

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?

The schema covers 100% of the parameters with 'paths' having a description 'File paths to revert', so the schema itself provides the necessary semantics. The description adds no additional parameter meaning, but the schema suffices, leading to a baseline score of 3. However, since the tool is simple with one parameter and the description does not contradict, a 4 is warranted because the parameter is self-explanatory.

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?

The purpose is clear: 'Revert file(s) in source control.' This identifies a clear verb and resource (sc_revert). However, it lacks any context on what 'revert' does or its scope, which is a genuine gap for a mutation operation.

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

Usage Guidelines2/5

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

The description provides no guidance on what sc_revert does in relation to sibling tools like sc_checkout, sc_checkin, sc_diff, which are likely to be used. purpose has a clear action but no context on when to use it versus the other sc_* operations, nor does it mention any preconditions like having the file checked out.

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

sc_statusA

Query source control status of file(s).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathsYesFile paths to query (content paths like /Game/... or absolute paths)

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the burden of disclosing behavior. The verb "Query" strongly implies a read-only, non-mutating operation, which is useful transparency. However, it does not disclose return format, potential network dependencies, or behavior when files are not under source control, leaving some ambiguity.

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 a single, front-loaded sentence with no wasted words. It conveys the essential purpose efficiently and is appropriately sized for the tool's simplicity.

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 simplicity (one parameter, no output schema) and the surrounding sibling context, the description is adequately complete. It could benefit from mentioning what the response contains (e.g., a status per path), but this is minor and does not significantly impede understanding.

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?

The input schema has 100% description coverage for the single parameter (paths), so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides, which is acceptable given the clear schema description.

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 the tool's function with a specific verb ("Query"), a clear resource ("source control status"), and a scope ("file(s)"). It distinguishes itself from sibling tools like sc_checkout and sc_checkin, which modify source control state.

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 implies usage when one needs to inspect source control status, but it does not explicitly state when to use it versus alternatives such as sc_diff or sc_checkout. There is no mention of preconditions or exclusions, leaving the agent to infer from the sibling tool names.

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

set_actor_tagsC

Set tags on an actor.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesActor name or label
tagsYesTags to set

TDQS

C2.8/5.0
Behavior1/5

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

With no annotations, the description carries full responsibility for disclosing behavior. It merely states the action without mentioning whether tags are replaced, appended, or removed, nor any side effects or requirements (e.g., whether the actor must exist). It provides zero behavioral 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?

The description is concise with no redundancy, but it is so brief that it omits crucial details like behavior on existing tags, errors, or side effects. It is not verbose but under-specified, so a middle score is appropriate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations and no output schema, the description provides minimal context. It does not explain effects on existing tags, failure modes, or when to use this over other tools, leaving the agent with little guidance for correct invocation.

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?

The schema provides basic descriptions for both parameters ('Actor name or label' and 'Tags to set'), which is adequate for simple types. However, the description does not clarify semantics like whether tags replace existing ones or add to them, leaving the schema to carry the weight. With 100% schema coverage, the baseline is met but no extra detail is added.

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 the action: 'Set tags on an actor.' It uses a specific verb (set) and resource (tags on an actor), and while there are other set_* tools, none target actor tags, so it effectively distinguishes itself from siblings.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, such as when to add vs. replace tags, or when to use other tag-related tools. It only implies usage through the action itself, with no exclusions or contextual clues.

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

set_data_layer_stateC

Set the state of a data layer (Loaded, Activated, Unloaded).

ParametersJSON Schema
NameRequiredDescriptionDefault
stateYesTarget state
layer_nameYesData layer name

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must carry behavioral disclosure. It only says 'Set the state' without mentioning side effects, prerequisites, whether the operation is synchronous, or what happens if the layer does not exist. This is insufficient for a mutation tool.

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 a single, direct sentence with no fluff or redundancy. It front-loads the action and immediately lists the valid states, exemplifying efficient structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a state-changing tool with no output schema and no annotations, the description is too bare. It lacks context about the data layer's lifecycle, potential side effects (e.g., unloading data), and any required preconditions. More explanation of the effect of each state would enhance completeness.

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 both parameters are documented. The description repeats the state enum values that are already in the schema, adding no extra meaning beyond what the schema provides. Thus it meets the baseline but no more.

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?

The description clearly states the action (set) and the target (data layer state), and explicitly lists the three valid states. It distinguishes itself from sibling read tools like list_data_layers by indicating a mutation operation, though it does not explicitly reference alternatives.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus other data layer tools (e.g., list_data_layers, get_loaded_cells). There are no stated prerequisites or exclusions, leaving the agent without context for selection.

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

set_niagara_boolA

Set a bool parameter on a Niagara component.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesBool value
actor_nameYesActor with Niagara component
parameter_nameYesParameter name

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden for behavioral disclosure. It only states that it sets a value, without mentioning requirements such as a loaded actor or existing Niagara component, side effects, or whether a return value is produced. This is minimal beyond the operation itself.

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 a single, front-loaded sentence with no filler. Every word contributes to identifying the operation and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple setter with fully documented parameters, so the description is adequate for basic invocation. However, because there are no annotations and no output schema, it would benefit from noting prerequisites, behavior, or expected results.

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?

The input schema has 100% coverage with parameter descriptions, so the baseline is 3. The description adds no additional parameter-level detail, but the schema already provides adequate semantics for actor_name, parameter_name, and value.

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 uses a specific action ('Set') and resource ('bool parameter on a Niagara component'), making the tool's purpose unambiguous. It also distinguishes itself from sibling type-specific tools like set_niagara_float, set_niagara_vector, and set_niagara_color.

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 does not explicitly explain when to use this tool versus alternatives, but the phrase 'bool parameter' and the sibling tool names imply type-based selection. There are no exclusions, prerequisites, or explicit alternative suggestions.

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

set_niagara_colorB

Set a linear color parameter on a Niagara component.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesRGBA color (0-1)
actor_nameYesActor with Niagara component
parameter_nameYesParameter name

TDQS

B3.3/5.0
Behavior2/5

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

The description does not disclose any side effects, permissions, or reversibility. As a setter, it implies modification but gives no detail on impact or potential errors.

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 a single, clear sentence that immediately conveys the core action without unnecessary words. It is concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the description explains the basic operation, it lacks context on typical use cases, prerequisites, or relationship to sibling setters. The absence of an output schema is acceptable, but more contextual detail would improve completeness.

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?

The input schema already provides descriptions for all parameters (actor_name, parameter_name, value). The description adds no additional meaning beyond the schema, so the baseline score of 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?

The description clearly states the function: setting a linear color parameter on a Niagara component. It is specific and unambiguous, distinguishing it from other setters like float or vector.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternative setters (e.g., set_niagara_float, set_niagara_vector). It only states what the tool does without indicating usage context.

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

set_niagara_floatC

Set a float parameter on a Niagara component.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesFloat value
actor_nameYesActor with Niagara component
parameter_nameYesParameter name

TDQS

C2.9/5.0
Behavior2/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, but it doesn't mention what happens if the parameter is not found, whether the component needs to be bound, or whether the change is immediate or on next spawn. This is a mutation operation with zero context provided, creating a 'black box' for side effects.

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?

One sentence, zero fluff, uses consistent nomenclature. It's appropriately sized for its minimal content, though it could have used the space to add behavioral context without risking verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, and a bare-bones description, the agent has no way to know the return value, error semantics, or preconditions. The sibling tools for set_niagara_vector/bool/color exist, so this has no extra complexity, but for a mutation tool without annotations, it should have conveyed at least basic safety or scope information.

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?

The schema has 100% coverage—'value' is 'Float value', 'actor_name' is 'Actor with Niagara component', and 'parameter_name' is just 'Parameter name.' The description doesn't add meaningful depth to these. Baseline 3 is appropriate since the schema does the heavy lifting, though 'Parameter name' is somewhat tautological.

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?

The description 'Set a float parameter on a Niagara component' uses a clear verb-object structure with specific vocabulary like 'float parameter' and 'Niagara component,' which orients the agent's tool selection. However, it does not reference subtle differences from sibling tools handling vector, color, or boolean types, though the type name is embedded in the tool name (set_niagara_float).

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

Usage Guidelines2/5

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

The description lacks any guidance on when to use this tool versus alternatives like set_niagara_vector, set_niagara_bool, or set_niagara_color. There's no mention of when setting a float parameter is appropriate (e.g., before spawn vs. live update), no exclusions, and no prerequisite information about whether the Niagara component must be active or exist.

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

set_niagara_vectorB

Set a vector parameter on a Niagara component.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesVector value
actor_nameYesActor with Niagara component
parameter_nameYesParameter name

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose side effects itself. It only states the operation without mentioning potential impacts, such as whether it overwrites existing values, triggers system updates, or performs any validation.

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 a single, concise sentence with no redundant phrases. It is immediately clear and contains only the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and lack of output schema, the description provides too little context. It does not mention return values, error conditions, or any side effects, leaving the agent without enough information to fully anticipate the tool's behavior.

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?

The schema already provides clear descriptions for all three parameters (actor_name, parameter_name, value). The tool description adds no additional meaning beyond what the schema specifies, so it holds the baseline score for full schema coverage.

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 the action ('Set') and the resource ('a vector parameter on a Niagara component'). It distinguishes from sibling tools that handle other parameter types (float, color, bool) or spawn/reset operations.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives like set_niagara_float or set_niagara_color. The description does not mention prerequisites, contexts, or scenarios where this is preferred.

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

set_playback_rangeA

Set the playback start and end frames of a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_frameYesEnd frame
start_frameYesStart frame
sequence_pathYesLevelSequence asset path

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only restates the action without mentioning side effects, validation behavior, whether the sequence must already exist, or whether changes are persisted. This is a meaningful transparency gap for a mutating tool.

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 a single, front-loaded sentence with no redundant words or filler. Every word contributes to the core purpose, making it highly concise and easily scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple and the schema covers parameter descriptions, but the description lacks important contextual details such as relationship to sequence creation/saving, validation rules, or expected sequence state. Given the missing annotations and no output schema, the description is minimally viable but not fully complete.

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 with basic descriptions. The tool description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate.

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 uses a specific verb ('Set') and identifies the exact resource and scope ('playback start and end frames of a sequence'). It clearly distinguishes from siblings like set_sequence_framerate, which targets framerate rather than frame range.

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 implies usage by stating what the tool does, but it gives no explicit guidance on when to use it versus alternatives, no prerequisites, and no exclusions. For a simple setter this is acceptable but still leaves the 'when' implicit.

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

set_preset_propertyB

Set a property value exposed via a Remote Control Preset.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueNoProperty value to set
preset_nameYesPreset name
property_nameYesExposed property name

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only says 'Set a property value' without explaining side effects, return behavior, error conditions, or whether the operation is reversible. This is inadequate for a mutation tool with zero annotation coverage.

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 a single, clear sentence with no superfluous words. It is appropriately front-loaded and immediately communicates the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter, the description is minimally viable, but it lacks important context. It does not explain that 'value' is optional or what happens when setting a property without one. There is no mention of error handling, return values, or interaction with preset state, despite the lack of an output schema.

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?

The schema covers 100% of the parameter descriptions (preset_name, property_name, value), so the baseline is 3. The description does not add any additional meaning beyond the schema, nor does it compensate for the fact that the 'value' parameter is not required and has no type specified.

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 the action ('Set') and the resource ('a property value exposed via a Remote Control Preset'). It is specific enough to distinguish from sibling tools like get_preset_property and call_preset_function, which have different verbs and targets.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or contrast with other preset-related tools such as get_preset_property or call_preset_function. The usage context is only implied by the verb 'Set'.

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

set_sequence_framerateC

Set the display frame rate of a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNoFrames per second
sequence_pathYesLevelSequence asset path

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the basic action. It doesn't reveal whether the display rate change affects existing keyframes, whether the asset must be saved after, what valid fps ranges exist, or how 'display frame rate' relates to the sequence's time formatting. The term 'display' hints at a specific concept but is never explained.

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?

One action-first sentence with zero wasted words, structured as verb-object. It reads cleanly and front-loads the intent. Slightly more detail could have been added without harming conciseness—the terms 'display' and 'sequence' were both primed—so it misses a 5 but is well-crafted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 2-parameter setter with 100% param coverage, the description is 'adequate but bare.' It correctly identifies the behavior—changing display rate, not render rate—which matters in the Unreal context, but doesn't explain the practical impact (e.g., time-smoothing, sub-frame interpolation) or why an agent would pick this over a similar tool.

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% (all parameters documented with meaningful descriptions), so the baseline of 3 applies. The description adds nothing beyond the schema: the tool text doesn't clarify valid fps ranges, the effect of changing the rate on existing animations, or how sequence_path is resolved.

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?

Uses a specific verb+resource construction ('Set the ... frame rate of a sequence') that clearly identifies the action and target. The qualifier 'display' helpfully narrows the meaning from the render or playback rate. Slight ambiguity remains about what 'display' distinguishes against (render/playback), but the core purpose is clear.

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

Usage Guidelines2/5

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

Provides no guidance on when to use this tool versus closely related siblings like set_playback_range, render_sequence, or get_sequence_info. A single sentence with zero context about when to reach for this vs. alternatives means an agent gets no disambiguation help.

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

set_skeletal_mesh_lodB

Configure LOD settings on a skeletal mesh.

ParametersJSON Schema
NameRequiredDescriptionDefault
lod_countYesNumber of LODs to generate
mesh_pathYesSkeletal mesh asset path

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It mentions 'Configure LOD settings' but doesn't disclose side effects like whether existing LODs are destroyed/overwritten, whether source art is regenerated, or if this is purely metadata configuration. The briefness leaves questions about undo-ability and performance impact.

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?

Efficient single sentence, minimal waste. Could be criticized for under-specification, but for the stated purpose it's appropriately sized. A slight improvement would be mentioning behavior or expectations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with only 2 parameters and no output schema, the description is functional but thin. It doesn't explain the effect of 'configuring' LODs - does it regenerate them, adjust settings, or something else? The return value is unknown, but that's partially mitigated by no output schema. The sibling tools context (content management, source control, automation) suggests this is a UEFN/RPC automation, where concurrency considerations might be relevant but aren't mentioned.

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 100%, so the schema documents both parameters. The description references LOD settings generally but doesn't add meaning beyond the schema. The description 'Configure LOD settings' adds no parameter information beyond what schema already provides.

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?

The description clearly states the verb 'Configure' and the resource 'LOD settings on a skeletal mesh'. It's specific enough to distinguish from sibling tools like apply_material or reimport_skeletal_mesh, though it could explicitly differentiate from other LOD-related tools (none currently exist among siblings).

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 implies usage context (configuring LOD settings) but doesn't explicitly state when to use this tool vs alternatives. It doesn't mention prerequisites like mesh path validity or LOD generation pipeline requirements.

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

set_streaming_sourceC

Configure a streaming source component on an actor for World Partition.

ParametersJSON Schema
NameRequiredDescriptionDefault
radiusNoStreaming radius in units
actor_nameYesActor name or label

TDQS

C2.9/5.0
Behavior2/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 implies a mutating action ('configure') but does not disclose any side effects, such as whether existing streaming sources are overwritten, whether it requires special permissions, or what happens to the actor's settings. There is no mention of reversibility or any constraints, leaving the agent without critical safety information.

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 a single sentence that is front-loaded with the core purpose. It is concise and avoids unnecessary words. While it could include more detail, the sentence is efficiently constructed and does not waste the reader's time. However, it omits any usage guidance, which is a structural gap, but the conciseness itself is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is minimal. It states only the purpose and lacks context about the operation's behavior, any prerequisites, or what the result will be. There is no output schema, so the description needs to explain what happens, but it does not. It also does not mention the radius or actor_name parameters, which are essential for the operation. For a tool that modifies a component on an actor, this is insufficiently complete for an agent to use safely and effectively.

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% — both 'radius' and 'actor_name' have descriptions in the schema. The tool description itself adds no additional meaning beyond the schema, but since the schema is complete, a baseline score of 3 is appropriate per the guidelines. The schema already explains that radius is a streaming radius in units and actor_name is the actor name or label.

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 'Configure a streaming source component on an actor for World Partition' clearly states a specific verb (configure), a specific resource (streaming source component on an actor), and the context (World Partition). It distinguishes itself from sibling tools like set_data_layer_state or get_loaded_cells, which deal with different aspects of World Partition. The purpose is unambiguous.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention any preconditions, exclusions, or alternative tools. With siblings like list_data_layers and get_loaded_cells, an agent might not know when to select this tool. The description simply states what it does, leaving the decision entirely to the agent.

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

spawn_niagara_at_locationB

Spawn a Niagara particle system at a world location.

ParametersJSON Schema
NameRequiredDescriptionDefault
locationYesWorld location
rotationNo
system_pathYesNiagara system asset path
auto_destroyNoAuto-destroy when finished

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the action and location, but does not mention side effects like whether the system auto-destroys, how long it runs, or any performance implications. The schema mentions auto_destroy with a description, but the tool description itself adds no behavioral insight.

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 a single, front-loaded sentence with zero wasted words. It immediately states the action and target, which is ideal for quick parsing by an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the schema provides parameter details, the description lacks critical context such as the standalone nature of the spawn (vs. attached), the lifecycle of the system, and any potential impact. For a tool that spawns a particle system, agents would benefit from knowing whether it's a persistent or transient effect, but the description is minimal. It is adequate but not complete given no annotations.

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 75% (three of four parameters have descriptions), so the baseline is 3. The description adds no additional meaning about parameters beyond what the schema already provides. It does not clarify parameter formats, units, or relationships, but the schema covers most essential details, so the description is not required to compensate.

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?

The description clearly states the action (spawn) and the resource (Niagara particle system) plus a key differentiator (at a world location). It distinguishes from spawn_niagara_attached by implication but does not explicitly name the alternative. The verb and resource are specific enough for basic identification.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like spawn_niagara_attached. There is no mention of context, prerequisites, or exclusions. Users must infer from the name or sibling tools, which is not sufficient.

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

spawn_niagara_attachedA

Spawn a Niagara system attached to an actor.

ParametersJSON Schema
NameRequiredDescriptionDefault
actor_nameYesActor name or label to attach to
system_pathYesNiagara system asset path

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description must disclose behavioral traits. It states 'attached to an actor' but omits crucial details like what happens if the actor is not found, whether the system auto-destroys with the actor, or if any specific transform behavior occurs. Minimal behavioral disclosure for a mutating spawn operation.

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 a single, clear sentence with no redundant words. It immediately conveys the core purpose without any fluff or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with only 2 parameters and no output schema, the description is adequate but not rich. It could be more complete by explaining attachment semantics (e.g., location, socket, lifetime) or failure behavior, especially given the absence of annotations.

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?

The input schema already provides 100% coverage for both parameters (actor_name and system_path) with concise descriptions. The tool description adds no additional meaning beyond what the schema describes, so the baseline of 3 is appropriate.

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 the action ('Spawn') and the resource ('Niagara system') along with the attachment context ('attached to an actor'). This distinctly differentiates it from the sibling tool spawn_niagara_at_location, which spawns at a location rather than attaching to an actor.

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 implies when to use the tool (when attaching a Niagara system to an actor) but offers no explicit guidance or alternatives. It does not contrast with sibling tools like spawn_niagara_at_location or mention prerequisites such as a valid actor name or system asset path.

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

start_csv_profilingC

Start CSV profiling capture for performance regression analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameNoOutput CSV filename (default: auto-generated)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It doesn't state what happens when profiling starts, whether it overwrites existing files, if it requires a specific environment state, or how long it runs. It also doesn't mention any side effects or prerequisites. The description adds minimal behavioral context beyond the name, which is insufficient given no annotations.

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 a single sentence, efficient and front-loaded. It conveys the essential action without fluff. However, it could be slightly more informative without being verbose, but it earns a high score for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one optional parameter and no output schema, the description could be more complete regarding the profiling lifecycle. It doesn't mention the companion stop_csv_profiling tool or any related considerations like file location or data format. The description is adequate for a simple tool but lacks enough context for the agent to fully understand the operation's scope and consequences.

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% because the only parameter (filename) has a description in the schema. The description adds no additional parameter semantics beyond the schema. Since coverage is high, baseline is 3. The description doesn't explain the format or constraints of the filename, but the schema already covers the basic meaning.

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?

The description clearly states the tool starts CSV profiling capture for performance regression analysis. It uses a specific verb ('Start') and resource ('CSV profiling capture'), but does not differentiate from the sibling tools like start_trace or stop_csv_profiling, though the purpose is evident.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It doesn't mention that stop_csv_profiling is the counterpart to end the capture, nor does it explain when to use start_csv_profiling instead of start_trace or run_stat_command. The description implies usage for performance regression analysis but lacks explicit context or exclusions.

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

start_traceC

Start an Unreal Insights trace session with selected channels.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelsNoTrace channels: cpu, gpu, frame, memory, counters, bookmark, file, net, loadtime

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must disclose behavior. It only states that it starts a trace session, but does not mention side effects, resets, or whether prior traces are stopped, or any performance impact. The description implies a state change (starting a session) but lacks detail on session lifecycle or resource usage.

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?

It is a single concise sentence that is front-loaded with the action. No fluff, but could be slightly more informative with a hint about usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that likely requires a running environment (e.g., Editor), the description lacks important context like whether it requires a connection, how to verify success, or what happens to existing traces. No output schema, so the description should explain return or failure modes, but it does not.

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?

The schema already has 100% coverage with a description of each channel and a default value. The description's mention of 'selected channels' adds minimal value, but the schema is sufficient. Baseline 3 is appropriate because the schema does the heavy lifting.

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?

The description clearly states the verb 'Start' and the resource 'Unreal Insights trace session', specifying that channels are selected. It distinguishes from the sibling 'stop_trace' by implying a start action, though it does not explicitly differentiate from other tracing-related tools like 'start_csv_profiling'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as CSV profiling or other trace tools. The description does not mention prerequisites (e.g., connection status, running editor) or when not to use it, leaving the agent to infer usage from the name and siblings.

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

stop_csv_profilingC

Stop CSV profiling capture and save results.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are present, so the description carries the burden. It mentions 'stop capture and save results,' indicating mutation, but doesn't specify if any state changes are persistent, if it requires an active profiling session, or what the output format is. The behavior is under-disclosed.

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 a single sentence with a clear verb and object. It is appropriately concise, though it could add a little more context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no annotations and no output schema, the description is minimal. For a state-changing tool like stopping profiling, it lacks context about the workflow (e.g., that it complements start_csv_profiling) and any effects on the system. It is not complete for an effective selection.

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?

The tool has zero parameters and the schema is empty with 100% coverage, so the description doesn't need to explain parameters. The description correctly implies no parameters are needed, and the baseline for no params is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stops CSV profiling and saves results, with a specific verb and resource. However, it lacks differentiation from its sibling 'start_csv_profiling' and other profiling tools, so it's not fully distinguished.

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

Usage Guidelines2/5

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

The description does not mention when to use this tool or any context about prerequisites (e.g., it must be called after start_csv_profiling). There is no guidance on alternatives, as it's the only stop profiling tool, but usage context is minimal.

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

stop_traceA

Stop the active Unreal Insights trace session.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for disclosing side effects. It only states the action without mentioning potential errors (e.g., no active session), data saving, or state changes, leaving the agent underinformed about consequences.

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 a single, clear sentence with no redundancy. It is appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is sufficient for a basic stop operation, but it lacks information about return values, error handling, or what happens when no trace is active. Given no output schema, a bit more context would be beneficial, though not critical for a simple command.

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?

The tool has zero parameters, so the schema covers everything. The description does not need to explain parameters, and the baseline of 4 applies since there are no params.

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 the action (stop) and the resource (active Unreal Insights trace session). It is specific and unambiguous, and distinguishes well from sibling tools like start_trace and start_csv_profiling.

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 implies usage after starting a trace, but does not explicitly state when to use it or provide guidance on alternatives or preconditions. It is functional but minimal.

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

undoA

Undo the last editor action.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations provided, the description must convey behavioral traits. It states 'Undo the last editor action' but does not disclose that it modifies state, whether it is reversible, or what happens if there is no prior action. It does not contradict annotations, but is too sparse to inform an agent about side effects.

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 a single, concise sentence that is front-loaded with the essential information. Every word earns its place, and there is no redundancy or fluff.

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 simple tool with no parameters and no output schema, the description is sufficient to convey the operation. However, it could optionally mention edge cases (e.g., no-op if nothing to undo), but given the simplicity, it is largely complete.

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?

The tool has zero parametersches, and the schema description coverage is 100% (empty properties). The baseline for 0 params is 4, and the description adds nothing beyond the schema because there is nothing to explain. This is appropriate.

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 'Undo the last editor action' clearly specifies the operation (undo) and resource (editor action), distinguishing it from sibling tools like redo and get_undo_history. The verb and target are precise and unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like get_undo_history or redo. It does not mention prerequisites, conditions, or exclusions. While the function is obvious, explicit guidance is absent.

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

validate_assetsA

Run data validation on assets in a directory and return the actual results (pass/fail counts and a per-validator breakdown), not just a completion flag.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of assets to validate in one call (safety cap)
directoryNoContent directory to validate/Game

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description carries the full transparency burden. It adds one meaningful behavioral trait: the tool returns detailed validation results rather than a simple flag, which is useful. However, it does not disclose potential side effects (e.g., whether it modifies assets), error behavior, or performance implications. The lack of an explicit read-only hint leaves the safety profile under-defined.

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 a single, front-loaded sentence that efficiently conveys the core purpose and a key output detail. There is no redundancy or extraneous information, making it highly concise and well-structured.

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?

The tool is relatively simple with two optional, well-documented parameters, and the description covers its primary behavior and output clearly. However, it omits information about what validators are used, how to interpret the breakdown, or any caveats like invalid directories. Given the lack of annotations and output schema, this is a minor gap but does not impair fundamental usability for straightforward use cases.

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?

The input schema provides full descriptions for both parameters (limit and directory) with 100% coverage. The tool description does not add any parameter-specific meaning beyond what the schema already states, so the baseline of 3 is appropriate. No additional value is contributed.

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 specifies the action (run data validation) and resource (assets in a directory), and explicitly distinguishes its output from a mere completion flag by stating it returns pass/fail counts and a per-validator breakdown. This effectively differentiates it from sibling tools like get_test_results or run_automation_tests, which focus on test execution rather than validation results.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool over alternatives. It does not mention suitable scenarios, prerequisites, or exclusions, nor does it reference sibling tools that perform similar validation tasks (e.g., run_map_check or content_audit). This leaves the agent without decision support for tool selection.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 78 tool updatesv0.1.0
    • First observedadd_actor_binding
    • First observedadd_track
    • First observedapply_anim_modifier
    • First observedapply_material
    • First observedbuild_cook_run
    • First observedbuild_graph
    • First observedbuild_plugin
    • First observedbuild_target
    • First observedcall_preset_function
    • First observedclean_project
    • First observedconsolidate_assets
    • First observedcontent_audit
    • First observedcook_content
    • First observedcreate_anim_blueprint
    • First observedcreate_anim_montage
    • First observedcreate_level_sequence
    • First observedduplicate_actors
    • First observedexecute_console_command
    • First observedexecute_python
    • First observedexport_asset
    • First observedexport_sequence_fbx
    • First observedfix_redirectors
    • First observedgenerate_collision
    • First observedgenerate_lightmap_uvs
    • First observedgenerate_project_files
    • First observedget_anim_sequence_info
    • First observedget_build_status
    • First observedget_connection_status
    • First observedget_loaded_cells
    • First observedget_preset_info
    • First observedget_preset_property
    • First observedget_sequence_info
    • First observedget_test_results
    • First observedget_undo_history
    • First observedimport_asset
    • First observedlist_automation_tests
    • First observedlist_data_layers
    • First observedlist_presets
    • First observedpackage_project
    • First observedredo
    • First observedreimport_skeletal_mesh
    • First observedreinit_niagara_system
    • First observedrender_sequence
    • First observedresave_packages
    • First observedreset_niagara_system
    • First observedrun_all_automation_tests
    • First observedrun_automation_test
    • First observedrun_automation_tests_by_category
    • First observedrun_editor_utility_blueprint
    • First observedrun_editor_utility_widget
    • First observedrun_gauntlet
    • First observedrun_map_check
    • First observedrun_stat_command
    • First observedsc_checkin
    • First observedsc_checkout
    • First observedsc_diff
    • First observedsc_mark_for_add
    • First observedsc_revert
    • First observedsc_status
    • First observedset_actor_tags
    • First observedset_data_layer_state
    • First observedset_niagara_bool
    • First observedset_niagara_color
    • First observedset_niagara_float
    • First observedset_niagara_vector
    • First observedset_playback_range
    • First observedset_preset_property
    • First observedset_sequence_framerate
    • First observedset_skeletal_mesh_lod
    • First observedset_streaming_source
    • First observedspawn_niagara_at_location
    • First observedspawn_niagara_attached
    • First observedstart_csv_profiling
    • First observedstart_trace
    • First observedstop_csv_profiling
    • First observedstop_trace
    • First observedundo
    • First observedvalidate_assets

TDQS

C2.6/5.0

Scored across 78 tools

Disambiguation2/5

Many tools overlap in purpose: execute_console_command and run_stat_command both run console/stat commands, and run_automation_test, run_all_automation_tests, run_automation_tests_by_category have unclear boundaries. Build-related tools also overlap significantly (build_cook_run, cook_content, package_project).

Naming Consistency2/5

Naming is inconsistent: source control tools use a 'sc_' prefix while similar workflows use full verb_noun patterns; run_stat_command vs execute_console_command; get_test_results vs list_automation_tests; and tool verbs mix 'get', 'list', 'run', 'execute', 'set' without a clear convention.

Tool Count2/5

78 tools is far beyond a well-scoped server and spans multiple unrelated domains (source control, build, automation, Niagara, sequences, remote control). The high count makes the tool surface difficult to navigate and likely contains redundant operations.

Completeness3/5

The broad toolkit covers many Unreal Editor workflows, including build, test, source control, Niagara, sequences, and remote control. However, each domain has notable gaps—e.g., no generic actor quer or asset creation/deletion—and some areas feel opportunistic rather than systematic.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    C
    maintenance
    Drive the Unreal Engine 5.7 editor from any MCP client over a local TCP socket - 105 editor-automation tools (72 native C++ handlers + 33 bridge-side): actors, levels, materials, Blueprints, sequencer, rendering, asset import, editor Python. Native C++ plugin + thin Python bridge, ~50ms round-trips. MIT.
    100
    9
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server that gives AI agents broad control over Unreal Engine 5.7, enabling actor/asset/level management, Blueprint and material creation, screenshots, automation, and arbitrary editor Python execution.
    35
    MIT