Brainstem for any MCP app

Your own AI agent server, running on your computer. Connected to any AI app that supports MCP.

Paste this into any AI agent that can run commands

Runs on your machineUses your GitHub CopilotNo API key

Or pick your AI app for exact steps: Claude Desktop, Claude Code, Cline, Codex CLI, Copilot CLI, Cursor, Gemini CLI, Goose, Kiro, OpenCode, VS Code, Windsurf

Works with any MCP app.

Agents that can run commands set it up from the link. For apps that can't, use the settings below.

  1. Gets Brainstem readyThe official setup, nothing hidden.
  2. Prepares the serverThe same local MCP server for every app.
  3. Registers itIn your app's MCP settings, under the name brainstem.
For AI agents reading this page

You are setting up the RAPP Brainstem (RAPP = Rapid Agent Prototype Platform) for the user and connecting it to any MCP app as an MCP server named brainstem. Follow these steps in order. Ask the user before approving any sign-in for them, and never type their credentials. The user needs a GitHub account with GitHub Copilot.

0. Ask the user first

Before you run anything, tell the user in a few lines what this setup does and ask them to confirm. It installs the RAPP Brainstem, an open-source local agent server (source: github.com/kody-w/rapp-installer), into ~/.brainstem. It serves on localhost:7071 and signs in with their GitHub account, which they approve themselves in the browser. It also adds a 70-line bridge (source: brainstem_mcp.py) so any MCP app can talk to it. Only continue once they say yes. It is fine to show them the commands below before running them.

1. Check whether the Brainstem is already running

curl -sf http://localhost:7071/health

If this returns JSON with "status":"ok", skip to step 3. Don't reinstall over a running Brainstem, because the installer restarts it.

2. Install it

macOS / Linux:

curl -fsSL https://kody-w.github.io/rapp-installer/install.sh | bash

Windows (PowerShell):

irm https://kody-w.github.io/rapp-installer/install.ps1 | iex

Run it in the background. When it finishes installing it keeps running as the server. Watch its output. If it prints a GitHub device code, show the user the code and https://github.com/login/device, then wait while they approve it. Poll curl -sf http://localhost:7071/health every few seconds until it answers. A first install can take a few minutes. If sign-in was skipped, the user can finish it at http://localhost:7071/login.

3. Connect any MCP app

Install the bridge next to the Brainstem. macOS / Linux:

mkdir -p ~/.brainstem/mcp-bridge
curl -fsSL https://kody-w.github.io/rapp-brainstem-claude/brainstem_mcp.py -o ~/.brainstem/mcp-bridge/brainstem_mcp.py
~/.brainstem/venv/bin/python -m venv ~/.brainstem/mcp-bridge/venv
~/.brainstem/mcp-bridge/venv/bin/pip install -q "mcp>=2,<3" requests

Windows (PowerShell):

$d = "$env:USERPROFILE\.brainstem\mcp-bridge"; mkdir $d -Force | Out-Null
irm https://kody-w.github.io/rapp-brainstem-claude/brainstem_mcp.py -OutFile "$d\brainstem_mcp.py"
& "$env:USERPROFILE\.brainstem\venv\Scripts\python.exe" -m venv "$d\venv"
& "$d\venv\Scripts\pip.exe" install -q "mcp>=2,<3" requests

Then register it with the user's AI app as a local (stdio) MCP server named brainstem. If the app has a command for this (for example <app> mcp add brainstem -- <command> <arg>), use it. Otherwise merge it into the app's MCP config file, keeping every server already there; if a brainstem entry exists, ask the user before replacing it. Most apps use this shape:

{
  "mcpServers": {
    "brainstem": {
      "command": "/Users/you/.brainstem/mcp-bridge/venv/bin/python",
      "args": [
        "/Users/you/.brainstem/mcp-bridge/brainstem_mcp.py"
      ]
    }
  }
}

Use the user's real absolute paths (run echo $HOME; on Windows $env:USERPROFILE) in place of /Users/you. Config files do not expand ~. On Windows the command is C:\\Users\\you\\.brainstem\\mcp-bridge\\venv\\Scripts\\python.exe and the argument is C:\\Users\\you\\.brainstem\\mcp-bridge\\brainstem_mcp.py (backslashes doubled inside JSON). Some apps name the top-level key servers or mcp; follow the app's own docs for the key and file location.

Per-app pages with exact steps: Claude Desktop, Claude Code, Cline, Codex CLI, Copilot CLI, Cursor, Gemini CLI, Goose, Kiro, OpenCode, VS Code, Windsurf.

4. Confirm

Restart the app or reload its MCP servers, and check brainstem is listed with its tools.

Then call the capabilities tool and tell the user which agents their Brainstem has. The bridge gives two tools. chat(user_input, session_id?) sends a plain-language request; pass the returned session_id to continue the conversation. capabilities() reports status, model and agents.