MCP server for controlling UEFN (Unreal Editor for Fortnite) from Claude Code — 22 tools for actors, assets, levels, viewport, and Python execution
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"uefn-mcp-server": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Control UEFN (Unreal Editor for Fortnite) from Claude Code via the Model Context Protocol.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in developer-tools / entertainment
Manage Supabase projects — databases, auth, storage, and edge functions
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
A Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
MCP server for using the GitLab API
MCP Security Weekly
Get CVE alerts and security updates for Uefn Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Control UEFN (Unreal Editor for Fortnite) from Claude Code via the Model Context Protocol.
Claude Code <--stdio--> MCP Server (mcp_server.py) <--HTTP--> Listener (uefn_listener.py, inside UEFN)
unreal.* calls dispatched via editor tick callbackOpen Claude Code and ask: "Help me set up UEFN MCP server" — it will install dependencies, create config files, and walk you through the rest.
If you prefer to do it manually, follow steps 1-5 below.
Use Tools > Execute Python Script in the UEFN menu bar, then select the uefn_listener.py file.
A status window will appear showing:
You can safely close this window — the listener continues running in the background.
On your system (not inside UEFN):
pip install mcp
Create .mcp.json in your project root (or add to ~/.claude/settings.json):
{
"mcpServers": {
"uefn": {
"command": "python",
"args": ["C:/path/to/uefn-mcp-server/mcp_server.py"]
}
}
}
Claude Code picks up .mcp.json on startup. After restart, you'll have 28 UEFN tools available.
Ask Claude Code:
To start the listener automatically when UEFN opens your project:
# Copy both files to your UEFN project's Content/Python/ directory
cp uefn_listener.py <YourUEFNProject>/Content/Python/uefn_listener.py
cp init_unreal.py <YourUEFNProject>/Content/Python/init_unreal.py
UEFN automatically executes init_unreal.py on project open.
| Category | Tools |
|---|---|
| System | ping, execute_python, get_log, get_editor_log, shutdown |
| Actors | get_all_actors, get_selected_actors, spawn_actor, delete_actors, set_actor_transform, get_actor_properties, set_actor_properties, select_actors, focus_selected |
| Assets | list_assets, get_asset_info, get_selected_assets, rename_asset, delete_asset, duplicate_asset, does_asset_exist, save_asset, search_assets |
| Project | get_project_info |
| Level | save_current_level, get_level_info |
| Viewport | get_viewport_camera, set_viewport_camera |
The execute_python tool is the most powerful — it runs arbitrary Python code inside the editor with full access to the unreal module:
# Pre-populated variables: unreal, actor_sub, asset_sub, level_sub, tk, get_tk_root
# Assign to `result` to return a value
actors = actor_sub.get_all_level_actors()
result = [a.get_actor_label() for a in actors]
Tkinter note: When creating UI windows via
execute_python, useget_tk_root()+tk.Toplevel(root). Never calltk.Tk()— multiple instances crash the editor.
The system uses two independently running Python process