
Cheat Engine MCP Bridge: Setup for Claude, Cursor and Other Apps
Lets an AI assistant inspect and change the memory of another program through Cheat Engine on Windows.
Cheat Engine is a tool for examining and editing the memory of running programs. It is used for game modding, trainers, reverse engineering and security research. This bridge gives an assistant about 175 tools to read values, scan for patterns, disassemble code, set breakpoints and write to memory.
It runs on your Windows PC and needs Cheat Engine open with the bridge script loaded. It can modify other programs, run arbitrary code and delete files, so use it only on software you own or are allowed to test.
Good for
- Reverse engineers and security researchers analyzing a program's memory
- Modders and trainer authors who want help finding addresses and patterns
- CTF players working through binary challenges
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install cheatengine-mcp-bridge
Claude Code
- 1
Copy this prompt.
Add the cheatengine-mcp-bridge server to Claude Code. Run this command: claude mcp add cheatengine -- python C:/path/to/cheatengine-mcp-bridge/MCP_Server/mcp_cheatengine.py Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Windows, Python 3.10+, Cheat Engine with the bridge script.
Read-only mode: There is no read-only mode. Shell tools stay off unless CE_MCP_ALLOW_SHELL=1 is set.
Clone the repository and run pip install -r MCP_Server/requirements.txt. In Cheat Engine, open File, Execute Script and run MCP_Server/ce_mcp_bridge.lua until it prints that the MCP server is listening. Then replace the example path with where you cloned the repo. The README shows the same command in a generic config and a Codex TOML block; the configs here are adapted from it and are generated. To use the TCP relay from WSL or another machine, see the README.
Built from the package data we hold. Not yet tested by us.
Tools
Checks the bridge is connected
Replies with the bridge version so you know the assistant can reach Cheat Engine.
Try: “Ping Cheat Engine.”
Read ·
pingLists running processes
Returns the processes on the machine with their IDs and names.
Try: “Which processes are running?”
Read ·
get_process_listAttaches Cheat Engine to a process
Opens a process by ID or name so later reads and writes target it.
Try: “Attach to notepad.exe.”
Write ·
open_processShows the attached process
Returns its ID, name, module count and architecture.
Try: “What process is attached?”
Read ·
get_process_infoLists the process's loaded modules
Lists DLLs and modules with base addresses and sizes, in pages.
Try: “List the modules of the attached process.”
Read ·
enum_modulesReads raw bytes from memory
Returns the bytes at an address in the attached process.
Try: “Read 16 bytes at the base address.”
Read ·
read_memoryReads a number from memory
Reads a byte, word, dword, qword, float or double at an address.
Try: “Read the dword at the player address.”
Read ·
read_integerReads text from memory
Reads a string, narrow or wide, up to a length you set.
Try: “Read the string at that address.”
Read ·
read_stringFollows a pointer chain
Follows a multi-level pointer chain and reports every step.
Try: “Resolve [[base+0x10]+0x20]+0x8.”
Read ·
read_pointer_chainStarts a memory value scan
Runs a first scan for a value of a chosen type, or an unknown-value scan.
Try: “Scan for the value 100.”
Read ·
scan_allNarrows a scan
Filters the earlier scan results, for example to values that increased.
Try: “Now keep values that decreased.”
Read ·
next_scanSearches memory for a byte pattern
Finds an array-of-bytes pattern such as 48 89 5C 24.
Try: “Find the pattern 48 89 5C 24.”
Read ·
aob_scanBuilds a unique byte signature for an address
Generates a pattern that can find the same address again after the program updates.
Try: “Make a stable signature for this address.”
Read ·
generate_signatureShows the machine code at an address
Disassembles a number of instructions starting at an address.
Try: “Disassemble the entry point.”
Read ·
disassembleGuesses a data structure at an address
Uses Cheat Engine's auto-guess to read memory as a structure with fields.
Try: “Dissect the structure at this address.”
Read ·
dissect_structureFinds code that touches an address
Lists instructions that access a given address.
Try: “What reads this health address?”
Read ·
find_referencesSets a hardware execution breakpoint
Sets a breakpoint that logs hits without stopping the program.
Try: “Log every hit at this instruction.”
Runs code ·
set_breakpointWatches an address for reads or writes
Sets a hardware watchpoint for read, write or both.
Try: “Tell me what writes to this address.”
Runs code ·
set_data_breakpointStarts an invisible hypervisor watch
Traces reads, writes or executes of an address through the DBVM hypervisor, which needs DBVM enabled in Cheat Engine.
Try: “Watch writes to this address with DBVM.”
Runs code ·
start_dbvm_watchWrites a number into the program's memory
Changes a value in the attached process's memory, as a byte up to a double.
Try: “Set the gold value to 9999.”
Write ·
write_integerWrites raw bytes into memory
Overwrites bytes at an address in the attached process.
Try: “Patch these bytes at the jump.”
Write ·
write_memoryWrites memory using a page-table base
Writes to virtual memory using an explicit CR3 through the DBK driver or DBVM, bypassing the usual translation path. It needs the kernel driver or hypervisor.
Try: “Write these bytes using CR3 0x1234.”
Runs code ·
write_process_memory_cr3Runs an AutoAssembler script
Runs an AutoAssembler script such as a code injection or code cave in the attached program.
Try: “Run this script to inject a hook.”
Runs code ·
auto_assembleRuns any Lua code inside Cheat Engine
Executes arbitrary Lua in Cheat Engine's process. It can do anything Cheat Engine's Lua can.
Try: “Run this Lua snippet.”
Runs code ·
evaluate_luaInjects a DLL into the program
Loads a DLL file into the attached process, which runs the DLL's code there.
Try: “Inject helper.dll.”
Runs code ·
inject_dllCalls a function in the program
Calls a function at an address in the target process with one argument.
Try: “Call the function at this address.”
Runs code ·
execute_codeRuns a shell command on the PC
Runs a command on the host OS. It is refused unless CE_MCP_ALLOW_SHELL=1 is set when the server starts.
Try: “Run dir in the game folder.”
Runs code ·
run_commandPermanently deletes a file
Deletes a file at a path on the Cheat Engine host. The description says the deletion is permanent.
Try: “Delete that old dump file.”
Delete ·
delete_filePresses a key
Simulates holding down a keyboard key by Windows virtual-key code.
Try: “Hold the W key.”
Write ·
key_downMoves the mouse pointer
Moves the cursor to screen coordinates.
Try: “Move the mouse to 100,200.”
Write ·
set_mouse_posLoads a Cheat Engine table file
Loads a .ct or .cetrainer file, optionally merging into the current table.
Try: “Load my trainer.ct.”
Write ·
load_tableSaves the cheat table to a file
Writes the current table to a .ct or .cetrainer file.
Try: “Save the table as myfix.ct.”
Write ·
save_tableFreezes the attached program
Pauses the attached process until you unpause it.
Try: “Pause the game.”
Runs code ·
pause_process
Read from the source code
Permissions
high risk · 7 things to watch
High risk
The assistant can change and run code in other programs, execute any Lua, and delete files on your PC. Our advice is to use it only on software you own, in a virtual machine or test PC, with approval on for every call.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It changes and runs code in other programs
Tools such as write_memory, auto_assemble, inject_dll and execute_code alter or run code inside the attached program. Use it only on software you own or have permission to test. github.com
evaluate_lua runs any Lua code
evaluate_lua, create_thread and queue_to_main_thread execute arbitrary Lua inside Cheat Engine, with no read-only switch. Do not connect an assistant you do not trust. github.com
It can permanently delete files
delete_file removes a file on the Cheat Engine host for good. Keep approval on for each tool call. github.com
Shell tools are off unless you switch them on
run_command and shell_execute are refused unless CE_MCP_ALLOW_SHELL=1 is set at server start. Leave it unset unless you need them. github.com
Kernel and hypervisor tools can crash Windows
The README says some kernel-mode settings cause CLOCK_WATCHDOG_TIMEOUT blue screens when they conflict with DBVM or anti-cheat. Save your work before using DBVM or DBK tools. github.com
The optional TCP relay gives control to anyone who reaches it
The README warns that anyone who can reach the relay can control the bridge. It binds to 127.0.0.1 by default, so keep it there. github.com
Windows only for the default setup
The default pipe mode uses a Windows named pipe via pywin32. The TCP relay lets the MCP server run elsewhere while Cheat Engine stays on Windows. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | No read-only mode is documented. The reading tools only read, but the write, code-execution and file tools are always registered. |
|---|---|
| Talks to | Optional local TCP relay (127.0.0.1:9876 by default) |
| Sign-in and keys | No credentials. Access depends on who can reach the named pipe or the optional TCP relay. |
| Scopes |
|
Questions
Is it official?
No. It is a community project by miscusi-peek and is not made by the Cheat Engine team.
What do I need before I install it?
Windows, Python 3.10 or later, and Cheat Engine with MCP_Server/ce_mcp_bridge.lua loaded. Install the Python packages from the requirements file, then add the server to your client.
Does it work on Mac or Linux?
Not directly. Cheat Engine and the bridge run on Windows. The optional TCP relay lets the MCP server run on another machine, a VM or WSL.
Can it run shell commands?
Only if you set CE_MCP_ALLOW_SHELL=1 when the server starts. Without it the shell tools return an error.
Is it safe to use with online games?
Our advice is not to. The README says its kernel-mode features can conflict with anti-cheat, and its author states the project is for education and research and that he does not condone cheating in multiplayer games or violating Terms of Service. Changing another program's memory may also break a game's rules or the law.
Can I run it read-only?
No. The README documents no read-only mode, and the write, script and file tools are always registered.
How many tools does it have?
The source registers about 175 tools, and this page lists a selection, so the list here is partial.
Which clients does it work in?
The README shows a generic MCP config and a Codex TOML block, and names Claude, Cursor and Copilot as clients. It runs locally over stdio.
Information
updated Nov 2, 2026
- Publisher
- Community
- Transport
- stdio
- Auth
- None
- License
- MIT
- Last commit
- Aug 14, 2026
- Open issues
- 2
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 3Hide
- Cheat Engine MCP Bridge README · github.com
- mcp_cheatengine.py (tool registrations) · github.com
- ce_tcp_relay.py · github.com