Unreal Engine 5.8 registers toolsets under their fully-qualified Python module class paths. These names are verbose and inconvenient to type. The proxy (Documentation Index
Fetch the complete documentation index at: https://mintlify.com/davidbuenov/dbv-mcp-server/llms.txt
Use this file to discover all available pages before exploring further.
server.py and bridge.py)
include a translate_toolset_name() function that resolves short or abbreviated names to
the real registered names at runtime, using the local tools cache as the source of truth.
Why Qualified Names Are Long
When a Python toolset is loaded by the UE plugin, its class identity is<python_module_path>.<ClassName> — the same dotted path that Python itself uses to locate
the class. For example, the Scene Tools class lives at:
describe_toolset or call_tool with a
toolset_name argument. The proxy’s translation layer makes it possible to use shorter
names and have them resolved automatically.
Known Toolset Mappings
The table below shows the short reference names (as used in documentation, UI shortcuts, and AI prompts) mapped to the fully-qualified names registered in the engine.| Short Name / Common Reference | Full Registered Name |
|---|---|
EditorToolset.SceneTools | editor_toolset.toolsets.scene.SceneTools |
EditorToolset.ActorTools | editor_toolset.toolsets.actor.ActorTools |
EditorToolset.AssetTools | editor_toolset.toolsets.asset.AssetTools |
EditorToolset.MaterialTools | editor_toolset.toolsets.material.MaterialTools |
EditorToolset.BlueprintTools | editor_toolset.toolsets.blueprint.BlueprintTools |
ToolsetRegistry.AgentSkillToolset | ToolsetRegistry.AgentSkillToolset (exact — no translation needed) |
The mappings above reflect the toolsets available when the
EditorToolset,
AutomationTestToolset, SlateInspectorToolset, and ToolsetRegistry plugins are
all enabled. If a plugin is disabled, its toolsets will not appear in list_toolsets
and cannot be translated or called.Translation Algorithm
translate_toolset_name() reads .mcp_tools_cache.json and applies two resolution passes:
SceneTools:
Source Code
Here is thetranslate_toolset_name function as implemented in both server.py (async
FastAPI proxy) and bridge.py (stdio bridge). Both implementations are identical in logic:
Dot-Notation Tool Calls
The proxy also supports calling toolset tools directly using a fully dotted name as thetools/call name parameter:
call_tool invocation:
translate_toolset_name() is applied to toolset_name before the call is forwarded,
so short names like EditorToolset.SceneTools.SpawnActor also work:
Caching Mechanism
The tools cache is stored at.mcp_tools_cache.json in the project root. It is used by
both the translation function and the tools-list flattening logic.
Cache structure
| Field | Description |
|---|---|
toolsets_hash | MD5 hash of the raw text returned by list_toolsets. Used to detect when the registry has changed. |
tools | Flattened array of all tool definitions — native tools plus every tool from every toolset. |
Cache validation flow
list_toolsets output changes — for
example when a new plugin is enabled or a custom toolset is registered at runtime.