Loading repository data…
Loading repository data…
softdaddy-o / repository
Python CLI + UE plugin that lets Claude Code (AI coding agent) control Unreal Engine in real time. Spawn actors, edit blueprints, call functions, capture screenshots, manage PIE sessions, and more -- all from the terminal. Works with UE5 editor and packaged builds via an in-process HTTP bridge.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Built and maintained by a solo developer. Support this project if it saves you time.
Control Unreal Engine 5 from your AI agent or terminal. soft-ue-cli gives any LLM -- via MCP server or CLI -- 120+ commands and tools to spawn actors, edit Blueprints, inspect materials and MetaSounds, build UMG screens, read and patch UE config files, run Play-In-Editor sessions, capture token-efficient screenshots, profile performance, and inspect local Unreal assets.
Two connection paths. One package. Bridge tools when Unreal is running, offline tools when it is not, and a command catalog that tells agents which command families are supported, which runtime/editor requirements apply, and which optional Unreal plugins are required.
LLM client / shell / CI
|
v
soft-ue-cli (CLI or MCP server)
|
+-- Live bridge path ----------------------------------------------+
| HTTP / JSON-RPC
| -> SoftUEBridge plugin inside UE editor / PIE / dev build
| -> Actor, Blueprint, material, widget, PIE, profiling tools
|
+-- Offline local path --------------------------------------------+
Direct local parsing
-> .uasset / .uexp / .ini / .uproject / BuildConfiguration.xml
-> asset inspect-file, asset diff-file, config tree/get/diff/audit, skills
mcp-serve) for Claude Desktop, Cursor, Windsurf, and other MCP clients, or as a standard CLI for Claude Code, shell scripts, and CI/CD. Same 120+ tool surface either way.umg, capture, mutable, statetree, metasound, anim, asset, and blueprint.soft-ue-cli commands --json reports bridge/editor/PIE requirements plus optional Unreal plugin dependencies, and bridge tools return structured plugin_unavailable errors when a plugin is missing..ini, BuildConfiguration.xml, and .uproject data from one config command group.httpx and Pillow. Add [mcp] extra for MCP server mode.SOFT_UE_BRIDGE environment variable means only developers who need the bridge get it compiled in.Recent releases moved soft-ue-cli from a flat list of one-off bridge calls toward a discoverable automation surface for agents:
commands is the source of truth for command status, replacement names, runtime requirements, optional plugin requirements, and examples.umg, capture, mutable, statetree, metasound, anim, asset, blueprint) are the supported public command surface.plugin_unavailable diagnostics.UE 5.8 official MCP is preferred when it covers native execution for the workflow you need.
UE 5.8 is adding first-party Unreal MCP support. Use it when you want an Epic-managed, UE 5.8-native MCP endpoint and it already covers the workflow you need.
soft-ue-cli's main development target is now Unreal Engine 5.8. UE 5.7 compatibility remains maintained, so fixes and bridge code should continue to compile and run on UE 5.7 unless a release note explicitly says otherwise.
soft-ue-cli is intentionally a different layer rather than a replacement for first-party MCP:
.uasset, .uexp, .ini, .uproject, .uplugin, and BuildConfiguration.xml files, even when the editor is closed.test-tools smoke workflow for repeatable agent execution, not just raw editor operations.The two can coexist: use UE's first-party MCP for native UE 5.8 editor coverage when it fits, and use soft-ue-cli for UE 5.7 projects, cooked Development/DebugGame builds, CLI/CI automation, offline inspection, curated workflows, visual capture transforms, optional plugin diagnostics, and bridge tools that move independently of engine releases.
Run soft-ue-cli mcp-surface-status inside a project workspace to probe the local UE 5.8 official MCP endpoint and SoftUEBridge health endpoint. It reports official-only, bridge-only, both, or neither, plus a recommendation without executing editor mutations.
Private soft-ue-expert Pro distribution is separate from this public package. Expert Packs provide skills, cases, rules, agents, and verification through local owner operation; hosted Pro is deferred.
pip install soft-ue-cli # CLI only
pip install soft-ue-cli[mcp] # CLI + MCP server
Run the setup command inside your LLM client (Claude Code, Cursor, etc.) ??it outputs step-by-step instructions that the AI agent will follow to copy the plugin, edit your .uproject, and configure itself:
soft-ue-cli setup /path/to/YourProject
If you're running manually (not via an LLM), follow the printed instructions yourself: copy the plugin directory, add the "Plugins" entry to your .uproject, and create the CLAUDE.md snippet.
After regenerating project files and rebuilding, launch the editor. Look for this log line to confirm the bridge is running:
LogSoftUEBridge: Bridge server started on port 8080
soft-ue-cli check-setup
You should see all checks pass:
[OK] Plugin files found.
[OK] SoftUEBridge enabled in YourGame.uproject.
[OK] Bridge server reachable.
Add to your MCP client config (Claude Desktop, Cursor, Windsurf, etc.):
{
"mcpServers": {
"soft-ue-cli": {
"command": "soft-ue-cli",
"args": ["mcp-serve"]
}
}
}
The AI editor now has direct access to 120+ UE tools and skill prompts -- no terminal needed.
soft-ue-cli command
|
+-- Bridge-backed commands ----------------------------------------+
| HTTP / JSON-RPC
| -> SoftUEBridge plugin (UGameInstanceSubsystem inside UE)
| -> UE APIs on the game thread
| -> Runtime/editor operations such as spawn-actor, PIE, query-level
|
+-- Offline commands ----------------------------------------------+
Local parsers and file readers
-> Package tables / tagged properties / config hierarchy
-> asset inspect-file, asset diff-file, config *, skills get/list
The SoftUEBridge plugin is a lightweight C++ UGameInstanceSubsystem that starts an embedded HTTP server on port 8080 when UE launches. Bridge-backed commands send JSON-RPC requests to this server, and the plugin executes the corresponding UE operations on the game thread, returning structured JSON responses. Offline commands bypass the bridge entirely and operate directly on local files.
Automation commands return structured JSON to stdout (except get-logs --raw). Discovery and support commands use human-readable output by default where that is more useful, and expose --json where applicable. Exit code 0 means success, 1 means error.
LLM client (Claude Code, Cursor, etc.)
|
| soft-ue-cli skills get <name>
v
Skill file (markdown shipped with CLI pip package)
|
| LLM reads instructions, type mappings, pre-filled commands
v
LLM executes soft-ue-cli commands (blueprint inspect, blueprint graph inspect, ...)
|
v
LLM generates output (e.g. .h/.cpp files) following the skill's rules
Skills are markdown files at cli/soft_ue_cli/skills/*.md, shipped as package data in the pip distribution. Each skill is self-contained: workflow instructions, reference tables, example CLI commands, and verification test cases. The CLI discovers them via skills list / skills get. When running as an MCP server, the same files are exposed via the prompts/list and prompts/get protocol.
Use soft-ue-cli to explore and debug a gameplay bug quickly, then move the final regression into the project's C++ Automation Spec suite.
CLI + bridge + Python exploration
-> find the signal
-> validate the repro
-> identify the exact assert