stdio bridge for the local Unreal Editor MCP server from FunplayAI/funplay-unreal-mcp.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag โ we're steadily working through the catalog.
๐ก Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
The most advanced MCP server for the Unreal Editor.
ไธญๆ | English
๐ If this saves you time, please star the repo โ it helps a lot.
Funplay MCP for Unreal lets AI assistants โ Claude Code, Cursor, Windsurf, Codex, VS Code Copilot and any other MCP client โ operate directly inside a running Unreal Editor. It is a pure-Python editor plugin (no C++ build, works across Unreal Engine 5.3โ5.8) that exposes the editor over a local MCP server, plus a tiny Node.js stdio bridge that connects your AI client to it. MIT-licensed and free for commercial use.
Describe what you want in natural language โ spawn and arrange actors, build
levels and Blueprints, create materials, import assets, drive Play-In-Editor,
capture screenshots, or run arbitrary execute_python โ and let the assistant
do it.
"Build a small arena: a floor, four walls, some point lights, and a player start in the middle. Then play it and send me a screenshot."
The assistant inspects the level, spawns and positions the actors, sets up lighting, enters Play-In-Editor, and returns a screenshot โ all through this MCP server.
Codex asks for a castle, Funplay MCP drives the Unreal Editor through MCP, and the finished scene appears directly in the editor.
Three things: (1) drop the plugin into your project, (2) enable it and start the server, (3) point your AI client at it.
๐ก The plugin is pure Python โ there is nothing to compile.
FunplayMCP/ folder into your project's Plugins/ directory
(<YourProject>/Plugins/FunplayMCP/), or download
Funplay.UnrealMcp.vX.Y.Z.zip from the latest Release
and extract it there..uplugin enables automatically.http://127.0.0.1:8765/ by default. If the
port is busy it automatically picks a free local port (and a second editor of
the same project attaches to the existing server).<YourProject>/Saved/FunplayMCP/funplay_mcp_settings.json.The fastest path is the editor menu: Tools โ Funplay MCP โ Configure Claude Code (or Cursor / VS Code / Codex). It writes the right config with the endpoint and token filled in.
Claude Code (~/.claude.json), Cursor (~/.cursor/mcp.json):
VS Code (mcp.json) uses the servers key; Codex
(~/.codex/config.toml) uses a [mcp_servers."funplay-unreal"] table. Both are
written for you by the one-click menu.
Ask your assistant to:
get_project_info,unreal://project/context,execute_python with result = unreal.SystemLibrary.get_engine_version().127.0.0.1 and rejects non-loopback Origins; POST
requests require the per-project auth token.core profile. A focused 32-tool set is exposed by default; switch
to full (97 tools) in the settings file when you want everything.execute_python safety checks are on by default (a filesystem/process
denylist); pass safety_checks=false to override per call.unreal API work is marshalled onto the game thread, so the editor never
crashes from off-thread access.execute_python first. A first-class tool that runs arbitrary Python in
the editor โ anything the 96 dedicated tools don't cover, you can still do.search_api / describe_class / inspect_object
read the embedded unreal module's own docs, so the assistant uses the real
API instead of hallucinating it.AGENTS.md bridge from the editor menu.core profile) across 20 categories.unreal://...) for project, level, selection, logs, and the
tool catalog, plus prompt templates for common workflows.funplay-unreal-mcp.execute_python โ run any Python snippet in the editor.level_review, feature_plan, debug_runtime, blueprint_actor.unreal://project/context, unreal://project/info,
unreal://level/current, unreal://actors/list, unreal://selection/current,
unreal://tools/catalog, unreal://logs/recent, unreal://interaction/history,
plus templates unreal://actor/{ref} and unreal://asset/{path}.| Funplay MCP for Unreal | Funplay MCP for Unity | |
|---|---|---|
| Editor side | Pure-Python plugin (no build) | C# package |
| Primary execution | execute_python (embedded unreal) | execute_code (in-memory C#) |
| Transport | Local HTTP + stdio bridge | Local HTTP + stdio bridge |
| Default exposure | core profile (32 of 97) | core profile |
| Engine versions | UE 5.3โ5.8 | Unity 2022.3+ |
| Client config | One-click (Claude/Cursor/VS Code/Codex) | One-click |
97 built-in tools (32 core). Call get_tool_catalog for the live list.
| Category | Tools |
|---|---|
| Execution | execute_python, run_console_command |
| Reflection | search_api, describe_class, list_enum_values, inspect_object |
| Actors | spawn_actor, spawn_actor_from_asset, destroy_actor, duplicate_actor, set_actor_transform, set_actor_label, set_actor_property, attach_actor, get_actor_info, list_actors, find_actors, batch_spawn_actors |
| Components | add_component, list_components, get_component_properties, set_component_property, set_static_mesh, set_material, set_physics_properties, add_ism_instances |
| Assets | list_assets, find_assets, get_asset_info, duplicate_asset, rename_asset, delete_asset, save_asset, import_asset, create_folder, asset_exists, get_asset_references |
| Blueprints | create_blueprint, add_blueprint_component, compile_blueprint, get_blueprint_info, spawn_blueprint |
| Materials | create_material, create_material_instance, set_material_instance_parameter, get_material_info, add_material_expression, connect_material_expressions, connect_material_property, recompile_material |
| Levels | new_level, load_level, save_current_level, save_all_dirty, get_level_info, list_levels |
| Play-In-Editor | play_in_editor, stop_play_in_editor, simulate_in_editor, get_play_state |
| Viewport | set_viewport_camera, get_viewport_camera, focus_viewport |
| Screenshots | take_screenshot |
| Selection | get_selection, set_selection, select_none, get_selected_assets |
| Editor State | get_editor_state, get_project_info, get_output_log, sync_content_browser, health_status, undo, redo |
| Files | read_file, write_file, list_directory, file_exists |
| Procedural | build_wall, build_floor, build_stairs, scatter_actors |
| Organization | set_actor_folder, create_layer, add_actors_to_layer, list_layers |
| Data | create_data_table, get_data_table, set_data_table_rows, export_data_table_csv |
| UMG | create_widget_blueprint, add_widget, set_widget_property |
| Effects | spawn_niagara_system, set_niagara_parameter |
| Discovery | get_tool_catalog |
See CONTRIBUTING.md. Run python3 scripts/validate_repo.py
before opening a PR.
MIT โ see LICENSE.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/funplay-unreal-mcp)<a href="https://allmcps.com/mcp/funplay-unreal-mcp"><img src="https://allmcps.com/api/badge/funplay-unreal-mcp?style=directory" alt="Funplay Unreal MCP on AllMCPs" /></a>