Ships with 1.0

CLI and MCP

A command-line tool and an MCP server ship inside the app, so coding agents can check what's running before they boot another emulator, and stop their own servers when they're done.

Install

Both live inside the app, at /Applications/Ramback.app/Contents/Helpers/ramback. MCP clients can use that path as it is. To type ramback in a terminal, link it onto your PATH once:

$ sudo mkdir -p /usr/local/bin && sudo ln -sf /Applications/Ramback.app/Contents/Helpers/ramback /usr/local/bin/ramback

Commands

ramback status
Everything running, grouped, with RAM, memory pressure and swap.
ramback status --json
The same list as JSON, for scripts and agents.
ramback stop <id|port|project>
Stops one row by its id, by the port it listens on, or every row in a project. Same stop as the app: simctl, adb, docker or SIGTERM.
ramback free <GB>
Stops idle rows you haven't pinned, biggest first, until about that much memory is free. Skips databases and anything building.
ramback mcp
Runs the MCP server over stdio. Your MCP client starts it; you don't type it yourself.

Memory is in bytes, counted the way Activity Monitor counts it. Rows Ramback doesn't stop, like an agent itself or the Docker VM, are still listed.

$ ramback status --json
[
  {
    "building" : false,
    "guarded" : false,
    "id" : "sim:4F1A…",
    "kind" : "simulator",
    "memory" : 1800000000,
    "pids" : [ 51022 ],
    "startedBy" : "Xcode",
    "title" : "iPhone 17 Pro"
  },
  {
    "building" : false,
    "cwd" : "/Users/you/code/shop",
    "guarded" : false,
    "id" : "server:48213",
    "idleSince" : "2026-10-17T09:12:44Z",
    "kind" : "server",
    "memory" : 712000000,
    "pids" : [ 48213, 48230 ],
    "ports" : [ 3000 ],
    "project" : "shop",
    "startedBy" : "Claude Code",
    "title" : "next dev"
  }
]

MCP server

Add it to any MCP client that reads a JSON config:

{
  "mcpServers": {
    "ramback": { "command": "/Applications/Ramback.app/Contents/Helpers/ramback", "args": ["mcp"] }
  }
}

Or, in Claude Code:

$ claude mcp add ramback -- /Applications/Ramback.app/Contents/Helpers/ramback mcp

Tools

list_running
Everything running, with RAM, who started it, and whether it's idle or building. The same data as status --json.
stop
Stops one row, if the agent is allowed to (see below).
free_memory
Frees up to the amount asked for, from rows the agent is allowed to stop, biggest idle first.
find_free_port
A local port nothing is listening on, so the agent doesn't start a second server on 3000.

What an agent can't do

The MCP server checks these itself. They don't depend on what the agent was told.

Raycast

A Raycast extension built on the same CLI comes next.