
Universal Game Modder
io.github.doritoman90000Published by GitHub account doritoman90000v0.1.4Updated Oct 24, 2026
Local MCP server: detects a game's engine and gives agents native binary analysis/patching tools.
Overview
A local MCP server that detects a game's engine and gives an AI assistant native tools to analyze, search, patch and diff game binaries.
- What you can do
- Detect a game's engine (Unity, Unreal, Godot, Java, native) and load it as the active target, with session and Steam-library helpers and mod scaffolding/debug workflow tools. Analyze binaries: PE headers, file format, DLL structure, RVA/offset conversion, Godot PCK. Read, write, search and replace hex bytes, and run pattern scans. Extract strings and DLL classes, calculate checksums and compare binaries. Disassemble functions and ranges natively.
- When to use it
- Useful when you want an assistant to reverse-engineer or mod software you own or are authorized to analyze: identifying a game's engine, inspecting its binaries, locating values, and applying and verifying byte-level patches locally.
- Requirements
- Runs as a local stdio process via npm (universal-game-modder), started with Node.js 18+ and an MCP-capable client such as Claude Code. Works on Windows, macOS and Linux. No accounts or API keys; an optional UGM_CONFIG environment variable can point to a config file.
Installation
In SourceWeft
- Open Universal Game Modder in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Universal Game Modder
One MCP server to inspect and mod any game — driven by an AI agent.
Universal Game Modder (UGM) is a local Model Context Protocol server that gives an AI agent (like Claude in Claude Code) hands for game reverse-engineering and modding: it auto-detects a game's engine, then exposes a toolset for analyzing and patching the binaries — all running locally on your own machine, no cloud, no telemetry.
This is the free open-core edition (v0.1.3).
⚠️ Responsible-use notice
UGM is a general-purpose binary-analysis and interoperability tool. It is meant for modding, interoperability, security research, and education on software you legally own or are authorized to analyze. You are responsible for how you use it. Before installing, read ACCEPTABLE_USE.md and LICENSE-EULA.md.
What's in the free edition
- One stdio MCP server that an agent connects to and drives.
- Game-engine auto-detection — point it at a game directory; it identifies Unity (Mono / IL2CPP), Unreal, Godot, Java, and native binaries from file signatures.
- Native binary analysis + patching toolset — PE header analysis, hex read/write/search/replace, IDA-style pattern scanning, string extraction, checksums, and binary diffing, running natively in-process (no external tools required).
The guided game-modder workflow skill and the delegated decompilation backends land in a later release; this edition is the MCP server + engine detection + the native toolset.
Not in the free edition (Pro tier)
The web dashboard, the delegated Unity/Unreal/JAR decompilation backends, and native disassembly are part of the Pro tier and are not included here. The free edition is fully functional on its own for engine detection and native binary work.
Requirements
- Node.js 18+ (uses ES modules and
better-sqlite3) - Claude Code or any MCP-capable client
- Windows / macOS / Linux (native tools are cross-platform; the smallest cut ships no OS-specific binaries)
Install
Or manually (dist/ ships prebuilt; there is nothing to compile in this edition):
Then register the server with your MCP client. For Claude Code, add to your MCP config:
On first run, ugm.config.json ships with empty placeholders — the free edition needs no external paths. (The Pro delegate backends are where those get filled in.)
Config resolution
The server reads the first of these that exists and merges it over built-in defaults:
- the file named by the
UGM_CONFIGenvironment variable ugm.config.local.jsonnext topackage.json— your machine-specific paths; keep it out of version control (the repo's.gitignorealready does)ugm.config.json— the tracked file, placeholders only
So you can fill in backend paths without ever editing a file that could end up in a release or a pull request.
Quickstart
Once connected, ask your agent to work through these. Every example below is executed against a real binary before each release — see Verified examples.
Parameter naming: file-level tools take
file_path(andfile_path_a/file_path_bfor comparisons). Game-directory tools takegame_path. Disassembly tools takebinary_path.
1. Detect what a game is built with:
2. Set it as the active target:
3. Analyze a binary:
4. Search and inspect:
5. Patch and verify:
6. Disassemble (native, included):
Full free-edition tool list
These 29 tools run entirely in-process and need no external backend.
Native binary tools (19) — all take file_path unless noted:
Detection / PE: analyze_pe_full, analyze_file_format, analyze_dll_structure, rva_to_offset (+rva), offset_to_rva (+offset)
Hex: hex_read (+offset), hex_write (+offset,hex_data), hex_search (+hex_pattern), hex_replace (+replace_hex)
Scanning: pattern_scan (+pattern), pattern_scan_all (+pattern), search_binary_pattern (+patterns)
Strings / classes: extract_strings, extract_strings_advanced, extract_dll_classes
Integrity / diff: calculate_checksums, compare_binaries_detailed (file_path_a,file_path_b)
Godot: analyze_godot_pck
Disassembly: disassemble_function (binary_path,rva)
Workflow / session tools (10):
detect_engine, load_game, game_status, find_steam_games, mod_this_game, find_gameplay_values, build_and_deploy, debug_mod, scaffold_mod, list_available_tools
What the server also lists (Pro backends)
For transparency: the server advertises 100 tools total. The other 64 are the Unity (27), Unreal (11), and Java/JAR (26) decompilation suites, which route to external Pro-tier backend executables. They appear in the tool list, but calling one without a configured backend returns a clear error:
That is expected behavior in the free edition, not a defect. Configure their paths in ugm.config.json (Pro) to enable them.
Verified examples
The Quickstart calls above are not aspirational. Each release is gated on a verification pass that executes them against a real PE binary and requires every one to return real data. The v0.1.3 pass (2026-09-02, on the restored release cut) ran the gate's 20 documented calls plus 3 clean-failure checks; results are recorded in VERIFICATION.md.
License
The UGM code is released under the MIT License. Use of the tool is additionally governed by LICENSE-EULA.md and ACCEPTABLE_USE.md. Third-party components used by the Pro-tier backends are attributed in licenses/.
Changelog
See CHANGELOG.md. Current version: v0.1.3 — the config can no longer ship machine paths, and the release was
restored and re-verified after a disk incident. v0.1.2 fixed engine detection; v0.1.1 fixed the docs and added the gate.
Source: README.md at commit c172133
Tools
0Version history
1- v0.1.4LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts