mem
Provides process memory introspection and debugging on Linux, including reading memory maps, reading/writing process memory, searching memory, attaching/detaching with ptrace, reading CPU registers, and running valgrind.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@memShow memory maps for process 1234"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mem — MCP server for process memory introspection
Live process memory introspection, debugger, and valgrind runner. Linux-only (x86_64). Runs as an MCP stdio server for the pi agent.
Tools
Tool | What it does |
| Read /proc/<pid>/maps — memory layout of a running process |
| Read bytes from a process's address space (process_vm_readv) |
| Write bytes into a process's address space (process_vm_writev) |
| Search process memory for a hex byte pattern |
| Spawn a command as a child of this server (makes it inspectable) |
| List supervised child processes |
| ptrace-attach to a process (stops it) |
| Read CPU registers (PTRACE_GETREGS, x86_64) |
| ptrace-detach from a process (resumes it) |
| Run a command under valgrind |
| Poll a running valgrind job |
Related MCP server: re-gdb
Requirements
Linux (process_vm_readv/writev, ptrace, /proc)
ptrace_scope= 0 (or useruntool to spawn child processes)valgrind (optional, for valgrind_run)
ptrace_scope limitation
On Ubuntu (default ptrace_scope=1), process_vm_readv and ptrace only
work on direct child processes of the MCP server. To inspect a program:
Use
runto spawn it — the server is its parent, all tools workOr set
ptrace_scope=0:echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scopeOr use
CAP_SYS_PTRACE
The run tool makes the child fully inspectable without any sysadmin
changes.
Debugging workflow
1. run → spawns the target program, returns PID
2. maps → read its memory layout
3. mem_read → read bytes from any address
4. attach → ptrace-stop the process
5. registers → read CPU registers (rip, rsp, rax, etc.)
6. mem_write → patch a variable or instruction
7. detach → resume execution
8. valgrind_run → check for memory errorsWiring
pi.mcpServers in package.json declares the server; the hub merges it
into pi's mcp.json when the package is registered (this workspace is a
watched hub workspace, so a new package dir wires itself). The command is
relative to this dir on purpose — hub resolves it. Build first, then restart
pi: pi reads mcp.json at startup.
Build
cd /home/feb/dev/_pi_extensions/mem
cargo build --releaseSafety
mem_writecan crash or corrupt the target process.attachstops the target process. Alwaysdetachwhen done.valgrind jobs run with a timeout (default 300s).
Not wired by default
pi.mcpServers is empty on purpose — 11 tools on every session's surface for a
debugger that fires a few times a year is a bad trade. Wire it where you need
it, with a .mcp.json in the project root:
{ "mcpServers": { "mem": {
"command": "/home/feb/dev/_pi_extensions/mem/target/release/mem",
"args": [], "directTools": true, "lifecycle": "lazy-keep-alive"
} } }This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for remote debugging with gdbserver, offering full debugging capabilities including breakpoint control, stepping, memory inspection, and process management.MIT
- AlicenseBqualityCmaintenanceMCP server wrapping GDB and GEF for dynamic analysis, enabling interactive debugging and memory inspection via GDB/MI protocol.141MIT
- AlicenseNot gradedqualityBmaintenanceAn MCP server that exposes dynamic binary instrumentation, memory editing, pointer scanning, and scripting capabilities to AI agents, enabling real-time process inspection and modification.MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server for Windows process memory inspection/editing and crash dump analysis, enabling live memory scanning, patching, pointer resolution, disassembly, and offline dump examination via structured tool calls.MIT
Related MCP Connectors
2,000+ MCP servers read at source level. Know what one does before you connect. Free, no key.
An MCP server for deep research or task groups
MCP server for ScanMalware.com URL scanning, malware detection, and analysis.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pi-oilrig/oilrig-mem'
If you have feedback or need assistance with the MCP directory API, please join our Discord server