Skip to content
plugmcp
DirectorySkillsCategoriesBlog
EN/δΈ­ζ–‡
Sign inSign up
Home/Servers/Funplay Unreal MCP

Funplay Unreal MCP

I
by io.github.FunplayAI

stdio bridge for the local Unreal Editor MCP server from FunplayAI/funplay-unreal-mcp.

Power your agent

Add this server

The publisher's own command. Not a PlugMCP endpoint.

Local command
npx -y [email protected]
Credentials from the publisher
  • FUNPLAY_UNREAL_MCP_URL β€” Optional Unreal MCP HTTP endpoint. Defaults to http://127.0.0.1:8765/.
  • UNREAL_MCP_URL β€” Compatibility endpoint variable used when FUNPLAY_UNREAL_MCP_URL is not set.
  • FUNPLAY_UNREAL_MCP_TOKEN β€” Unreal MCP local auth token from the Funplay MCP editor menu or Saved/FunplayMCP/funplay_mcp_settings.json.
  • UNREAL_MCP_TOKEN β€” Compatibility token variable used when FUNPLAY_UNREAL_MCP_TOKEN is not set.
Provider
Claude Code
FUNPLAY_UNREAL_MCP_URL=<value> UNREAL_MCP_URL=<value> FUNPLAY_UNREAL_MCP_TOKEN=<secret> UNREAL_MCP_TOKEN=<secret> claude mcp add io.github.funplayai-funplay-unreal-mcp -- npx -y [email protected]

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "io.github.funplayai-funplay-unreal-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "FUNPLAY_UNREAL_MCP_URL": "<value>",
        "UNREAL_MCP_URL": "<value>",
        "FUNPLAY_UNREAL_MCP_TOKEN": "<secret>",
        "UNREAL_MCP_TOKEN": "<secret>"
      }
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

Run on PlugMCP

Host a copy with our keys and logs.

A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.

Launch

Related MCP

View more
  • FirecrawlπŸ”₯ Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
  • N
    NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
  • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

Related skills

View all
  • reaReverse engineer anything with agents, from app behavior down to native binaries.
  • rea-changelog-updatePrepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.
  • rea-tool-designDesign or change REA investigation tools, CLI/MCP contracts, provider capabilities, and Evidence semantics.

Questions

How do I install Funplay Unreal MCP?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Funplay Unreal MCP need an API key?
The publisher lists these environment variables: FUNPLAY_UNREAL_MCP_URL, UNREAL_MCP_URL, FUNPLAY_UNREAL_MCP_TOKEN, UNREAL_MCP_TOKEN.
What transport does Funplay Unreal MCP use?
Funplay Unreal MCP runs locally over stdio.
When was Funplay Unreal MCP last checked?
Last checked 2026-10-16. stdio bridge for the local Unreal Editor MCP server from FunplayAI/funplay-unreal-mcp.

stdio bridge for the local Unreal Editor MCP server from FunplayAI/funplay-unreal-mcp.

πŸ’– 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.

Demo

Codex asks for a castle, Funplay MCP drives the Unreal Editor through MCP, and the finished scene appears directly in the editor.

Quick Start

Three things: (1) drop the plugin into your project, (2) enable it and start the server, (3) point your AI client at it.

1. Install the plugin

πŸ’‘ The plugin is pure Python β€” there is nothing to compile.

  • Copy the 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.
  • It depends on the engine's Python Editor Script Plugin, which the .uplugin enables automatically.

2. Enable and start the MCP Server

  • Open your project. In Edit β†’ Plugins, confirm Funplay MCP for Unreal is enabled, then restart the editor if prompted.
  • On startup the server listens at 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).
  • A per-project auth token is generated and stored in <YourProject>/Saved/FunplayMCP/funplay_mcp_settings.json.
  • Get the endpoint and token any time from **Tools β†’ Funplay MCP β†’ Log Endpoint
    • Token** (printed to the Output Log).

3. Configure your AI client

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):

{
  "mcpServers": {
    "funplay-unreal": {
      "command": "npx",
      "args": ["-y", "funplay-unreal-mcp"],
      "env": {
        "FUNPLAY_UNREAL_MCP_URL": "http://127.0.0.1:8765/",
        "FUNPLAY_UNREAL_MCP_TOKEN": "<token from the Funplay MCP menu>"
      }
    }
  }
}

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.

4. Verify the connection

Ask your assistant to:

  • call get_project_info,
  • read the resource unreal://project/context,
  • run execute_python with result = unreal.SystemLibrary.get_engine_version().

Before You Start

  • Editor only. The server runs inside the Unreal Editor; it does not ship in packaged games.
  • Loopback only. It binds 127.0.0.1 and rejects non-loopback Origins; POST requests require the per-project auth token.
  • Default 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.
  • All unreal API work is marshalled onto the game thread, so the editor never crashes from off-thread access.

Why This Project

  • 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.
  • API discovery built in. 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.
  • Pure Python, no build. No C++ module, no compile step, portable across UE 5.3–5.8.
  • Safe by construction. Game-thread marshalling, loopback binding, auth token, and DNS-rebinding protection out of the box.
  • One-click client config + project skills. Configure Claude Code / Cursor / VS Code / Codex and generate an AGENTS.md bridge from the editor menu.
  • Same family, same conventions as Funplay MCP for Unity / Godot / Cocos.

Highlights

  • 97 built-in tools (32 in the default core profile) across 20 categories.
  • MCP resources (unreal://...) for project, level, selection, logs, and the tool catalog, plus prompt templates for common workflows.
  • Structured results β€” every tool returns JSON the assistant can reason over; screenshots come back as inline images.
  • Auto port-fallback and same-project instance attach.
  • Zero-dependency Node bridge published to npm as funplay-unreal-mcp.

MCP Capabilities

  • Tools: 97 (32 core / 97 full).
  • Primary execution: execute_python β€” run any Python snippet in the editor.
  • Prompts: level_review, feature_plan, debug_runtime, blueprint_actor.
  • Resources: 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}.

Comparison with Funplay MCP for Unity

Funplay MCP for UnrealFunplay MCP for Unity
Editor sidePure-Python plugin (no build)C# package
Primary executionexecute_python (embedded unreal)execute_code (in-memory C#)
TransportLocal HTTP + stdio bridgeLocal HTTP + stdio bridge
Default exposurecore profile (32 of 97)core profile
Engine versionsUE 5.3–5.8Unity 2022.3+
Client configOne-click (Claude/Cursor/VS Code/Codex)One-click

Built-in Tools

97 built-in tools (32 core). Call get_tool_catalog for the live list.

CategoryTools
Executionexecute_python, run_console_command
Reflectionsearch_api, describe_class, list_enum_values, inspect_object
Actorsspawn_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
Componentsadd_component, list_components, get_component_properties, set_component_property, set_static_mesh, set_material, set_physics_properties, add_ism_instances
Assetslist_assets, find_assets, get_asset_info, duplicate_asset, rename_asset, delete_asset, save_asset, import_asset, create_folder, asset_exists, get_asset_references
Blueprintscreate_blueprint, add_blueprint_component, compile_blueprint, get_blueprint_info, spawn_blueprint
Materialscreate_material, create_material_instance, set_material_instance_parameter, get_material_info, add_material_expression, connect_material_expressions, connect_material_property, recompile_material
Levelsnew_level, load_level, save_current_level, save_all_dirty, get_level_info, list_levels
Play-In-Editorplay_in_editor, stop_play_in_editor, simulate_in_editor, get_play_state
Viewportset_viewport_camera, get_viewport_camera, focus_viewport
Screenshotstake_screenshot
Selectionget_selection, set_selection, select_none, get_selected_assets
Editor Stateget_editor_state, get_project_info, get_output_log, sync_content_browser, health_status, undo, redo
Filesread_file, write_file, list_directory, file_exists
Proceduralbuild_wall, build_floor, build_stairs, scatter_actors
Organizationset_actor_folder, create_layer, add_actors_to_layer, list_layers
Datacreate_data_table, get_data_table, set_data_table_rows, export_data_table_csv
UMGcreate_widget_blueprint, add_widget, set_widget_property
Effectsspawn_niagara_system, set_niagara_parameter
Discoveryget_tool_catalog

Repository Layout

FunplayMCP/                         # the Unreal editor plugin (pure Python)
  FunplayMCP.uplugin
  Content/Python/
    init_unreal.py                  # auto-run entry point
    funplay_mcp/                    # server, transport, registry, providers
      tools/                        # one module per tool category
stdio-wrapper/                      # zero-dependency Node.js stdio<->HTTP bridge
scripts/                           # validate_repo.py, package_release.py
tests/                             # Node + Python tests (run without the editor)
server.json                        # MCP registry manifest

Architecture

AI client (Claude Code / Cursor / ...)
        β”‚  stdio (MCP JSON-RPC)
        β–Ό
funplay-unreal-mcp  (Node bridge, npx)
        β”‚  HTTP + token  β†’  127.0.0.1:8765
        β–Ό
Unreal Editor plugin (Python)
        β”‚  game-thread pump (register_slate_post_tick_callback)
        β–Ό
unreal API  β†’  Actors / Assets / Blueprints / Levels / PIE

Contributing

See CONTRIBUTING.md. Run python3 scripts/validate_repo.py before opening a PR.

License

MIT β€” see LICENSE.

How do I install Funplay Unreal MCP?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Funplay Unreal MCP need an API key?
The publisher lists these environment variables: FUNPLAY_UNREAL_MCP_URL, UNREAL_MCP_URL, FUNPLAY_UNREAL_MCP_TOKEN, UNREAL_MCP_TOKEN.
What transport does Funplay Unreal MCP use?
Funplay Unreal MCP runs locally over stdio.
When was Funplay Unreal MCP last checked?
Last checked 2026-10-16. stdio bridge for the local Unreal Editor MCP server from FunplayAI/funplay-unreal-mcp.

No tool list yet. Remote servers get one after the first health check.

plugmcp

Plug any tool into any agent. MCP servers for people who do not write servers. Gateway for volume, n8n for apps.

  • github.com/TODO
  • x.com/TODO
  • linkedin.com/company/TODO

PlugMCP, 2026

Product
  • Browse
  • Install
  • Host your own
  • Pricing
  • Voice mode
  • Browser
Directory
  • All MCP servers
  • MCP Apps
  • Tools
  • Agent skills
  • Categories
  • New
  • Voice
  • Submit a server
Developers
  • Docs
  • Blog
  • Club
  • Work with us
  • What is MCP
  • What is WebMCP
  • Status
Company
  • About
  • Contact
  • Terms
  • Privacy
  • DPA