Maus for vibe coding (Claude Code, Cursor, Codex)
You start the session typing into Claude Code. Twenty minutes in you're the copy-paste cable between the agent and the rest of your Mac. The error from your terminal. A snippet from an old Cursor session. A screenshot of the failing UI. The email Claude just drafted that you need to paste into Gmail without monospace and markdown asterisks dragging along.
This post is about removing yourself from that loop. Maus MCP gives Claude Code, Cursor and Codex direct access to your clipboard history — the agent reads what you copied, searches it, and writes clean text back into it for you to paste. You stop being the bus.
Install
One command, then restart Claude Code:
claude mcp add -s user maus -- npx maus-mcp@latest
Requirements: macOS, Node 20+, Maus installed and run once. Cursor and other MCP clients: see the install page. The MCP is open source on GitHub and ships as maus-mcp on npm.
What changes the moment it's installed
- "Draft a reply and put it in my Maus" — the agent writes the email and saves it as a clipboard item. You paste into Gmail with no markdown junk, no LLM em-dashes, no weird line breaks.
- "Give me a SQL query for X and save it to Maus" — paste straight into Supabase, TablePlus, psql. The agent's chat window is no longer the source of truth for the snippet.
- "What was that wifi password I copied yesterday?" — the agent searches your history, including OCR text from screenshots.
- "Find the screenshot of the error from this morning" — search by OCR text, the agent gets back the image plus extracted text.
- "What have I copied from Cursor today?" — filter by source app.
Pasting screenshots into Claude is expensive — and the cost compounds
The number people quote is "a screenshot is ~2,700 tokens." That number is for one image, one turn. The actual cost is worse, because an image pasted into a conversation joins the context window and gets re-processed on every subsequent turn.
Per Anthropic's vision docs, a 1920×1080 screenshot costs 2,691 visual tokens (⌈width/28⌉ × ⌈height/28⌉ 28-pixel patches). Multiply by the number of images and the number of turns they survive in context:
| How the agent sees a 1920×1080 screenshot | Per image | 4 imgs · 30 turns |
|---|---|---|
| Pasted directly into chat | 2,691 | 322,920 |
Maus MCP get(id, want:"visual") — ≤800px JPEG | ~493 | 59,160 |
Maus MCP get(id, want:"text") — OCR only | ~150 | 18,000 |
OCR figure is a typical error-screenshot worth of text. Visual figure is the reduced JPEG Maus MCP serves to the agent.
322k versus 18k tokens re-processed across the rest of the session is the gap between "the agent has room to keep reasoning" and "Claude Max says no for the next four hours." Prompt caching cuts dollar cost; it doesn't reclaim window space. With the MCP installed, the agent picks the path on its own: visual for layout and design, text for error messages and code.
The six tools the agent gets
list_recent— latest items chronologically, with filters.search— substring search across content, titles, source apps, URLs, and OCR text of screenshots.get— fetch one item by id. For images: returns OCR plus a token-light reduced JPEG.set_title— rename an item. The agent can organize your history with meaningful titles.forget— permanently delete one item or many by filter.add_item— write a clean text item directly into Maus history (Maus Pro).
What stays useful on the human side
The MCP handles agent-to-clipboard flows. The fast manual flows you already lean on still matter when you're driving:
- Pin prompts. Refactor templates, debug patterns, system prompts you've collected — pin them and they sit at the top of Maus. On Pro, pinning is permanent.
- Multipaste.
⌘+Clickfour clips in the order you want them, pressEnterin the Claude input, they paste in sequence. Same principle the agent uses for context loading — just driven by your hand. - Autopaste. Double-tap
⌘to enter listening mode, copy file 1 / file 2 / test / error log, switch to Cursor, press⌘V. They paste in copy order. - OCR. Screenshots from Twitter, Discord, Reddit are OCR'd automatically. The agent searches them via MCP; you search them via
⌘⇧V. - Source filter.
claude,cursor,codex,terminal. Two tokens, exact result.
Privacy
Maus MCP is a local-only bridge. Your clipboard content — queries, titles, item text, OCR — never leaves your Mac. The MCP server reads Maus's local SQLite directly and talks to your agent over stdio. No cloud account, no sync, no clipboard data sent anywhere.
The MCP does report anonymous usage shape (which tool was called, how long it took, your Maus tier) so I can see what's used and what's broken. Opt out with MAUS_MCP_TELEMETRY=off. Full source is on GitHub — what you install from npm is what you read there.
Free vs Pro
The MCP follows your Maus tier exactly. Free gives the agent full access to the last 24 hours of history. Pro unlocks full history, advanced filters (source apps, content patterns), and lets the agent write items via add_item — which is the half that closes the loop for emails, queries and drafts. Maus Pro is a one-time $12.99.
Install Maus MCP
One line in Claude Code. Local-only. Open source. Your Maus history, inside the agent.
Install instructions Download Maus