MCP server
RAAD ships an MCP server so an AI client can search, read, and (if you allow it) organize your clipboard history. It's read-only and off by default.
Turn it on
- Open RAAD → Settings → Platform Surfaces.
- Toggle "Allow MCP clients". This is the read scope — search, recent clips, pinboards, session context.
- Optionally, toggle "Allow saving and organizing clips" (write) and/or "Allow changing
what ⌘V pastes" (clipboard). Both are off by default and independent of read access and of
each other — see the security policy for why
set_clipboardgets its own toggle. - Click Configure next to your client (Claude Desktop, Claude Code, Cursor, VS Code) in the
same settings pane. RAAD writes only its own
raadentry into that client's config — any other MCP server you've already set up stays untouched.
If your client isn't listed, or the one-click configure can't parse its config file, add this to the client's MCP config by hand:
{
"mcpServers": {
"raad": {
"command": "/Applications/RAAD.app/Contents/Helpers/raad-mcp"
}
}
}VS Code's native MCP support uses a different shape — a servers key, with "type": "stdio"
alongside command:
{
"servers": {
"raad": {
"type": "stdio",
"command": "/Applications/RAAD.app/Contents/Helpers/raad-mcp"
}
}
}The helper is launched by the client over stdio, on demand — never by RAAD itself, and it needs RAAD running for anything beyond the four tools that read the database file directly (see the tool reference for which those are).
What it can see
- Sensitive clips are never returned — a clip whose type is concealed, or that was copied from an excluded app, is invisible to every MCP tool no matter what's asked.
- Deleted clips are never returned.
- Sealed pinboards are invisible entirely — not shown with a redacted name, not distinguishable from a pinboard that doesn't exist. Asking for one by id gets the identical error either way.
- Every write is logged to a local, on-device audit table (Settings → Platform Surfaces → Recent MCP Activity) — and that table itself is unreachable from any MCP tool, so an agent can act on your data but can't read its own audit trail back.
Full detail, including what a compromised machine can see regardless of any of this, is in the security policy.
Protocol details
- Negotiates
protocolVersionwith the client — echoes back whatever version the client asked for if RAAD's server supports it, otherwise falls back to the newest version it knows. - Every tool result includes both a text content block and
structuredContentmatching itsoutputSchema, so a client that reads structured output doesn't need to parse JSON out of a string. - Advertises
tools.listChangedand emits the notification when the granted consent scopes change while a client session is open — flip a toggle in Settings and a connected client finds out without needing to reconnect.