PyMemoryEditor MCP
MCP server for scanning process memory: an agent finds a value, narrows the matches and changes it, Cheat Engine style.
- 225 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- The `write_value` tool changes the memory of another running process, and a wrong write can crash the program or corrupt data.
- Editing memory in online games breaks service rules and leads to account bans.
- Reading process memory exposes everything in it, including passwords and keys, so the target is chosen deliberately.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/pymemoryeditorDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The `write_value` tool changes the memory of another running process, and a wrong write can crash the program or corrupt data.
- Editing memory in online games breaks service rules and leads to account bans.
- Reading process memory exposes everything in it, including passwords and keys, so the target is chosen deliberately.
This is third-party code. Review the repository files before installing.
What it does
PyMemoryEditor is a pure-Python library for reading, searching and writing the memory of running processes on Windows, Linux and macOS. The `mcp` extra installs the `pymemoryeditor-mcp` server, and an agent runs the whole loop itself: it scans memory by value, asks the user to change the value in the game or program, narrows the matches and hands back the address. The server exposes 14 tools: open a process, list memory regions, find a value or a byte pattern, refine results, read a value, write a value, follow a pointer chain. Scan results stay server-side behind a handle, so a first scan with 40,000 hits does not flood the context. Attaching to a process needs a human's consent. Writing can be switched off entirely with the `--read-only` flag, and `--confirm-writes` turns on confirmation of every write.
Who it is for. Game mod and tool developers, engineers who need to look into the state of a live process, and security researchers using Claude Code or Claude Desktop.
Good fit when
- In a single-player game the address of the character's health must be found: it reads 100, then 85, then 60.
- A live program keeps a counter in memory and its value has to be read without attaching a debugger.
- The address shifts on every launch, and the agent builds a pointer chain that survives ASLR.
- A software sample is examined in a lab and a signature is searched in memory by byte pattern.
Not a fit when
- The target is an online game with anti-cheat: editing memory breaks the service's rules and leads to a ban.
- The process belongs to another person or organization and there is no permission to analyze it.
- A debugger with breakpoints and a disassembler is wanted: the library reads and writes values and does not debug code.
Example request
Find the address of the health value in my single-player game game.exe. It is 100 now, I will tell you when it changes.MCP
- Transport
- stdio
- Authentication
- not required
Limitations
Python 3.10 or newer and an install with the extra are required: `pip install "PyMemoryEditor[mcp]"`. The server runs with the rights of the user who started it, and system processes such as `lsass.exe`, `launchd` and `systemd` are blocked by a denylist. Process names are not a security boundary: the list guards against accidents, not intent. On macOS and Linux other users' processes need elevated rights, see the platform notes in the documentation. By default one scan is capped at 100,000 addresses and 30 seconds.
How to disable. Remove the connection with `claude mcp remove pymemoryeditor`. To keep the server but without writing, start it with the `--read-only` flag: the write tool then does not exist.
FAQ
How do I connect PyMemoryEditor to Claude Code?
Install the package with the `mcp` extra, then run `claude mcp add pymemoryeditor -- pymemoryeditor-mcp`.
Can the agent change memory without my knowledge?
The agent attaches to a new process only with your consent. Every write can be confirmed with `--confirm-writes`, and `--read-only` gives a full ban.
How do I pre-approve a known process?
Pass the server the `--allow-process` flag with the process name. Other targets will ask for confirmation.
Does the server work on macOS and Linux?
Yes, the library supports Windows, Linux and macOS, 32 and 64 bit. Other users' processes need rights, as the platform notes describe.
Is there a graphical app?
Yes, the `app` extra installs a Cheat Engine style scanner started with the `pymemoryeditor` command.
Discussion
No questions or reviews yet.
Related
MCP serversA persistent-memory MCP server for coding agents: a graph of a project's concepts, architecture and decisions that survives across sessions
Official PlayCanvas Editor MCP server: 130 tools for scenes, entities, scripts, assets and runtime checks with screenshots
An MCP server that lets an agent control the Unreal Engine editor in words: actors, blueprints, node graphs, camera
The oid-mcp MCP server: an agent sees image buffers in a live gdb or lldb session, reads values and dumps them to .npy.
A local code graph with version history: an MCP server that tells the agent who calls a function and what an edit breaks
An MCP server that builds a code graph once and serves the answer to the agent instead of re-reading files
README in short
The package combines a library, a desktop scanner and an MCP server on a shared core, with documentation on Read the Docs. The README stresses that the tool should be pointed only at processes the user owns or is allowed to inspect.