Skip to main content
Glama
tumourlove

unreal-editor-mcp

by tumourlove

unreal-editor-mcp

Build diagnostics and editor log tools for Unreal Engine AI development via Model Context Protocol.

Gives AI assistants the ability to trigger Live Coding builds, inspect parsed compile errors, search/filter editor logs, and get crash context — the "feedback loop" for C++ iteration without leaving the AI workflow.

Why?

When iterating on C++ in UE, the build-test cycle is invisible to AI assistants. They can write code but can't compile it, see if it worked, or read the editor's output. This server closes that loop.

Complements (does not replace):

  • unreal-source-mcp — Engine-level source intelligence (full UE C++ and HLSL)

  • unreal-project-mcp — Project-level source intelligence (your C++ code)

  • unreal-blueprint-mcp — Blueprint graph reading (nodes, pins, connections, execution flow)

  • unreal-blueprint-reader — C++ editor plugin that serializes Blueprint graphs to JSON for AI tooling

  • unreal-material-mcp — Material graph intelligence, editing, and procedural creation (46 tools: expressions, parameters, instances, graph building, templates, C++ plugin)

  • unreal-config-mcp — Config/INI intelligence (resolve inheritance chains, search settings, diff from defaults, explain CVars)

  • unreal-animation-mcp — Animation data inspector and editor (sequences, montages, blend spaces, ABPs, skeletons, 62 tools)

  • unreal-niagara-mcp — Niagara VFX intelligence and editing (emitters, modules, HLSL generation, procedural creation, 70 tools)

  • unreal-api-mcp by Nico Bailon — API surface lookup (signatures, #include paths, deprecation warnings)

Together these servers give AI agents full-stack UE understanding: engine internals, API surface, your project code, build/runtime feedback, Blueprint graph data, config/INI intelligence, material graph inspection + editing, animation data inspection + editing, and Niagara VFX inspection + creation.

Related MCP server: unreal-project-mcp

Prerequisites

  • Python Remote Execution must be enabled in the editor: Edit > Project Settings > search "remote" > under Python Remote Execution, check "Enable Remote Execution?". This allows the server to discover and communicate with the running editor. Without it, log tools still work but build triggering will fail.

Quick Start

Install from GitHub

uvx --from git+https://github.com/tumourlove/unreal-editor-mcp.git unreal-editor-mcp

Claude Code Configuration

Add to your project's .mcp.json:

{
  "mcpServers": {
    "unreal-editor": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/tumourlove/unreal-editor-mcp.git", "unreal-editor-mcp"],
      "env": {
        "UE_PROJECT_PATH": "D:/Unreal Projects/MyProject"
      }
    }
  }
}

Or run from local source during development:

{
  "mcpServers": {
    "unreal-editor": {
      "command": "uv",
      "args": ["run", "--directory", "C:/Projects/unreal-editor-mcp", "python", "-m", "unreal_editor_mcp"],
      "env": {
        "UE_PROJECT_PATH": "D:/Unreal Projects/MyProject"
      }
    }
  }
}

Tools

Build Tools (5)

Tool

Description

trigger_build

Trigger a Live Coding compile via the editor's Python bridge. Returns a build ID for tracking.

get_build_status

Check build state: building, succeeded, or failed. Shows error/warning counts.

get_build_errors

Get parsed build errors with file, line, error code, and message. Filter by module or severity.

get_build_summary

Overview of the latest build: error count, warning count, duration.

search_build_output

Regex search across raw build output from the latest build.

Log Tools (6)

Tool

Description

get_recent_logs

Last N log lines, filterable by category (e.g. LogTemp, LogNet) and severity (Error, Warning, etc).

search_logs

Regex search across the current session's log buffer.

get_log_categories

List all active log categories with their message counts.

get_crash_context

Last Fatal log entries + crash report directory info from Saved/Crashes/.

tail_log

Recent log output (last N seconds).

get_log_stats

Error/warning breakdown per category, most active categories.

Environment Variables

Variable

Required

Description

UE_PROJECT_PATH

Yes

Path to the UE project root (containing the .uproject file)

UE_EDITOR_PYTHON_PORT

No

TCP port for command connection (default: 6776)

UE_MULTICAST_GROUP

No

UDP multicast group for editor discovery (default: 239.0.0.1)

UE_MULTICAST_PORT

No

UDP multicast port (default: 6766)

UE_MULTICAST_BIND

No

Multicast bind address (default: 127.0.0.1)

How It Works

Editor Bridge — Discovers the running UE editor via UDP multicast (the same protocol as UE's built-in remote_execution.py). Opens a TCP command channel to execute Python in the editor. Used to trigger Live Coding compiles via LiveCoding.Compile console command.

Log Tailer — A background thread polls the project's Saved/Logs/{ProjectName}.log every 500ms. On startup, reads the last 1000 lines to pre-populate. Maintains a rolling buffer of 10,000 parsed log entries in memory. All log tools query this buffer.

Build Manager — When a build is triggered, monitors LogLiveCoding log entries to detect completion ("Live coding succeeded" / "Live coding failed"). Parses MSVC error format (file(line): error C1234: message) from build output. Keeps a rolling history of the last 5 builds.

No database — all state lives in memory. The server is stateless across restarts.

Development

# Clone and install
git clone https://github.com/tumourlove/unreal-editor-mcp.git
cd unreal-editor-mcp
uv sync

# Run tests (57 tests)
uv run pytest -v

# Run locally
UE_PROJECT_PATH="/path/to/project" uv run python -m unreal_editor_mcp

Adding to Your Project's CLAUDE.md

If your UE project has a CLAUDE.md (used by Claude Code for project context), add a note so the AI knows build and log tools are available:

## MCP Servers

- **unreal-editor-mcp** is configured. Use `trigger_build` to compile via Live Coding,
  `get_build_errors` to inspect failures, and `get_recent_logs` / `search_logs` to
  check editor output. Always check build results after modifying C++ code.

Requirements

  • Python 3.11+

  • uv (recommended) or pip

  • Unreal Engine 5.x with Python plugin and Remote Execution enabled

License

MIT

Available Tools

11 tools
get_build_errorsA

Get parsed build errors from the latest build.

module: filter by source file path containing this string severity: 'error' or 'warning' limit: max errors to return (default 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
moduleNo
severityNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description bears the burden of behavioral disclosure. It states that the tool retrieves errors from the latest build, implying a read-only operation, but does not clarify what happens when no build exists or if there are side effects. It adds parameter details but lacks broader 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 a brief header and list of parameters. It is front-loaded and efficient, though a slightly more structured format (e.g., separating the main purpose from parameter details) could improve clarity.

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 presence of an output schema, the description does not need to detail return values. It covers the tool's core functionality and parameters adequately. However, it could be more complete by noting that it only works on the latest build and what constitutes 'parsed build errors'.

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?

The input schema has 0% description coverage, so the description fully compensates by explaining each parameter: module (filter by source file path), severity ('error' or 'warning'), and limit (default 50). This adds significant meaning beyond the schema's basic type information.

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 'Get parsed build errors from the latest build', specifying verb and resource. It distinguishes from siblings like get_build_status or get_build_summary, which focus on status or summary rather than errors.

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 the tool is for retrieving errors from the latest build, but does not provide explicit guidance on when to use this over alternatives like search_build_output or get_log_categories. No when-not-to-use or prerequisite conditions are given.

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

get_build_statusB

Get build status. Latest build if no ID given.

Returns: building, succeeded, or failed with error/warning counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
build_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 should disclose behavioral traits. It mentions the return values (status with counts) but fails to state whether the operation is read-only, auth requirements, or side effects. The default behavior for missing ID is good, but overall transparency is lacking.

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 with two sentences covering the core functionality and return value. It is front-loaded and contains no superfluous 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?

Given the tool's simplicity and presence of an output schema, the description covers the main points (default ID, return format). However, it omits usage context, error handling, and comparison to siblings, leaving room for improvement.

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?

Despite 0% schema description coverage, the description adds meaningful context for the single parameter 'build_id' by explaining that omitting it retrieves the latest build. This sufficiently compensates for the schema gap.

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 retrieves build status, with the ability to specify a build ID or default to the latest build. It does not explicitly differentiate from sibling tools like get_build_summary, but the 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?

The description does not provide guidance on when to use this tool versus alternatives (e.g., get_build_summary, get_build_errors). It lacks any 'when to use' or 'when not to use' instructions.

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

get_build_summaryA

Overview of the latest build: error count, warning count, duration.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided, so the description bears full burden. It mentions 'latest build' but does not disclose if it's read-only, requires authentication, or any side effects. The description is too minimal to inform about behavioral traits.

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 purpose without any filler or 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?

Given zero parameters and the presence of an output schema (which explains return values), the description sufficiently covers the tool's functionality. It could mention that it pertains to the current project's latest build, but overall adequate.

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?

No parameters exist, so baseline 4 applies. The description does not need to add parameter semantics; it is already clear what the tool does without input.

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 explicitly states the tool provides an 'overview of the latest build' with specific fields (error count, warning count, duration), clearly distinguishing it from siblings like get_build_errors (focused on errors) or get_build_status (which likely returns status only).

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?

No explicit guidance on when to use this tool versus alternatives. The description implies it's for a quick summary, but it doesn't exclude cases where other tools (e.g., get_build_errors for detailed errors) are more appropriate.

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

get_crash_contextA

Get crash context: last Fatal log entries and crash report directory info.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description fully discloses that the tool performs a read operation, retrieving specific types of data (Fatal logs and directory info). No mention of side effects, rate limits, or permissions, but the behavior is clear.

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. It efficiently conveys the tool's purpose and scope.

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

Completeness5/5

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

The tool has no parameters, an output schema exists (covering return values), and the description specifies exactly what data is retrieved. No additional information is needed for an agent to decide when to invoke it.

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 in the input schema, and schema description coverage is 100%. The description does not need to add parameter meaning. Baseline score of 4 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 verb 'Get' and the resource 'crash context', and specifies it includes 'last Fatal log entries and crash report directory info'. This distinguishes it from sibling tools like 'get_recent_logs' or 'search_logs', which are not crash-specific.

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 crash-related information, but does not explicitly state when to use this tool over alternatives or when not to use it. Lacks exclusion criteria but is clear enough from context.

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

get_log_categoriesA

List all active log categories with their message counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 full burden. It indicates a read operation but does not elaborate on behavior like pagination, what 'active' means, or performance implications. It is adequate but not detailed.

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, succinct sentence that front-loads the key action and output. Every word contributes meaning, with no 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 simple tool with no parameters and an output schema, the description is mostly complete. It could mention that it is a read-only operation or note any access restrictions, but overall it sufficiently describes the function.

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 coverage is 100%. The description does not need to add parameter information, meeting the baseline of 4 for zero-parameter tools.

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 'list' and the resource 'log categories', and adds the specific output detail 'with their message counts', which distinguishes it from sibling tools that deal with individual logs or builds.

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 get_recent_logs or search_logs. It 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.

get_log_statsC

Summary: errors/warnings per category, most active categories.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/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 does not mention whether the summary is over all logs, a specific time range, or any aggregation details. The agent is left uncertain about the scope and behavior.

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 very concise but lacks structural elements like bullet points or explicit sections. While it is short, it could be slightly more informative without losing 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?

Despite having no parameters, the description does not explain what categories mean (e.g., log level, module), how 'most active' is determined (count, frequency), or the range of logs included. This incompleteness hurts usability.

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 no parameters, so schema coverage is 100%. The description adds no parameter information, but none is needed. 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 states it provides a summary of errors/warnings per category and the most active categories, clearly indicating the tool's purpose. It distinguishes from sibling tools like get_recent_logs (raw logs) and search_logs (search) by emphasizing aggregation.

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 get_log_categories or search_logs. The description lacks any contextual cues for selection.

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

get_recent_logsB

Get recent log lines, optionally filtered by category and/or severity.

category: e.g. 'LogTemp', 'LogNet', 'LogLiveCoding' severity: 'Fatal', 'Error', 'Warning', 'Display', 'Log', 'Verbose', 'VeryVerbose' count: max lines to return (default 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo
categoryNo
severityNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided; description only states it 'gets recent log lines' without disclosing behavioral traits like whether it returns only new logs, includes timestamps, or requires permissions. Minimal behavioral context despite carrying full burden.

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?

Brief and to the point: main action in first sentence, then parameter details listed clearly. No redundant or wasted text.

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?

Output schema exists so return value explanation is optional. Tool is simple with 3 optional params, but 'recent' is undefined (e.g., time range). Adequate for basic use but could be more precise.

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 lacks descriptions for all 3 parameters (coverage 0%), but the main description provides concrete examples for category ('LogTemp', 'LogNet'), severity levels, and default count (50). This adds significant value beyond 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?

Description uses specific verb 'get' and resource 'recent log lines', and mentions optional filters (category/severity). Clearly distinguishes from siblings like search_logs and tail_log by specifying 'recent' and listing filter examples.

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 (e.g., search_logs, tail_log, get_log_stats). Does not state prerequisites or when not to use it.

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

search_build_outputA

Regex search across raw build output from the latest build.

ParametersJSON Schema
NameRequiredDescriptionDefault
patternYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It discloses the tool performs a regex search on raw build output, but omits details like destructiveness, authentication needs, rate limits, or scope of 'latest build'. Adequate for a simple read operation but could be more transparent.

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?

Single sentence, no wasted words. Front-loaded with action and resource. Highly concise while conveying essential purpose.

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 one required parameter and an output schema (not shown), the description is minimal. It lacks context about output format, pagination, what 'latest build' means, and potential constraints. With many sibling tools, more context would help selection.

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 0%, so description must compensate. It confirms pattern is a regex, adding meaning over the schema's 'Pattern' label. However, it does not explain syntax, case-sensitivity, or special characters. Moderate value 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?

Clearly states 'Regex search across raw build output from the latest build' – a specific verb (search) and resource (raw build output). Differentiates from siblings like search_logs by specifying the source as raw build output and limiting to the latest build.

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?

Implies usage for searching the latest build output, but no explicit guidance on when to use this tool instead of alternatives like search_logs or get_build_errors. No mention of prerequisites or context.

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

search_logsA

Regex search across the current session log buffer.

pattern: regex pattern to search for in log messages category: optional category filter applied before search count: max results (default 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo
patternYes
categoryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavioral traits, but it only mentions basic functionality (regex search, optional category filter). Missing details like case sensitivity, regex flags, or behavior when pattern is invalid.

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 with one sentence and parameter list, no wasted words. It is front-loaded with the core action.

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 no annotations and 0% schema coverage, the description provides minimal context but covers the basic purpose and parameters. Missing return format details (though output schema exists) and behavioral nuances.

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?

With 0% schema coverage, the description adds meaning by explaining pattern is a regex, category is an optional filter, and count is max results. This compensates for the lack of schema descriptions.

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 performs regex search on the current session log buffer, using specific verbs and resource, and distinguishes from siblings like get_recent_logs and search_build_output.

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 like get_recent_logs or search_build_output. The description does not specify context or exclusions.

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

tail_logB

Get log output from the last N seconds.

category: optional category filter severity: optional severity filter seconds: how many seconds back to look (default 30)

ParametersJSON Schema
NameRequiredDescriptionDefault
secondsNo
categoryNo
severityNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so description must carry full burden. Only states it gets logs; no disclosure of rate limits, auth requirements, or behavior for large 'seconds' 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?

Description is 4 lines, front-loaded with purpose. Every sentence adds value. No wasted text.

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?

Complexity is low, and output schema exists (though not shown). Description doesn't explain return values, but that's acceptable given output schema. Covers parameter usage sufficiently.

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 0%, but description adds meaning: 'category: optional category filter', 'severity: optional severity filter', 'seconds: how many seconds back to look (default 30)'. This compensates well.

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 clearly states it gets log output from the last N seconds, listing parameters. Purpose is clear, but no explicit differentiation from siblings like 'get_recent_logs'.

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. No when-not context or prerequisites provided.

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

trigger_buildB

Start a build. Default: Live Coding (requires editor running).

build_type: 'live_coding' (default). Returns build ID for status tracking.

ParametersJSON Schema
NameRequiredDescriptionDefault
build_typeNolive_coding

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 must convey behavioral traits. It states that the tool 'Returns build ID for status tracking,' which is helpful. However, it does not disclose whether the build is destructive (e.g., overwriting previous builds), required permissions, rate limits, or what happens if the editor is not running. Given the lack of annotations, this omission 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?

The description is extremely concise—just two sentences covering purpose, default behavior, and return value. Every word adds value without redundancy. It is front-loaded with the main action and quickly details the key parameter.

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 that the tool has only one optional parameter and an output schema (which likely defines the return type), the description provides the essential information. However, it lacks depth regarding error cases (e.g., missing editor), other build types, and differentiation from many sibling tools. It is minimally adequate but could be more complete.

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 input schema has 0% description coverage for the single parameter 'build_type'. The description partially compensates by stating the default value 'live_coding' and that it's a string. However, it fails to explain other possible values (e.g., if there is a 'production' type) or the format constraints, leaving the agent guessing about valid inputs beyond the default.

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 begins with 'Start a build,' which clearly states the action and resource. It further specifies the default build type and that it returns a build ID, making the purpose unmistakable. It distinguishes itself from sibling tools like get_build_status or tail_log, which are about viewing or managing build results.

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 mentions that 'Live Coding requires editor running,' providing a prerequisite for the default build type. However, it does not specify when to use this tool versus alternatives like get_build_status, nor does it explain other build types or scenarios where this tool is inappropriate. The guidance is implied but not explicit.

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

TDQS

A3.7/5.0
Disambiguation5/5

Build and log categories are distinct; within each, tools have clearly differentiated purposes: trigger_build initiates, get_build_status checks progress, search_build_output searches raw output, etc. Log tools likewise serve unique roles (recent lines, regex search, tail, stats, crash context). No ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case: trigger_build, get_build_status, get_recent_logs, search_logs, etc. No mixing of conventions or irregular verbs.

Tool Count5/5

11 tools is well-scoped for the domain of build and log operations in Unreal Editor. Covers essential actions without being overwhelming.

Completeness4/5

Build operations cover trigger, status, errors, summary, and output search; logs cover recent lines, regex search, categories, stats, tail, and crash context. Minor gaps: no build cancel or multiple-build history, and no log streaming beyond tail.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tumourlove/DEPRECATED-unreal-editor-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server