ScreenBlurt

Agents · MCP

Let your agent talk to you.

Claude Code, Codex, Claude Desktop, Cursor, Windsurf — anything that speaks MCP can be given a speak tool. The server is inside the Mac app; there is nothing extra to install.

Needs ScreenBlurt 1.1 or later installed at /Applications/ScreenBlurt.app. Download the latest release.

Fastest: let the agent do it

Paste this into Claude Code, Codex, Cursor, or anything that can fetch a page and run a command.

Read https://screenblurt.com/agents.md and set up ScreenBlurt so you can speak to me.

The agent reads https://screenblurt.com/agents.md, picks the install step for its own client, and says hello when it is connected. If your agent cannot fetch pages, paste the whole thing instead.

By hand, per client

Every option registers the same stdio server: the app's own executable with one argument, --mcp.

Claude Code

User scope, so it follows you between projects. Check with claude mcp list or /mcp.

claude mcp add --scope user screenblurt -- "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt" --mcp

Codex

Or add the TOML to ~/.codex/config.toml.

codex mcp add screenblurt -- "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt" --mcp
[mcp_servers.screenblurt]
command = "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt"
args = ["--mcp"]

Claude Desktop

Merge into ~/Library/Application Support/Claude/claude_desktop_config.json (create it if missing, keep other servers), then quit and reopen Claude Desktop.

{
  "mcpServers": {
    "screenblurt": {
      "command": "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt",
      "args": ["--mcp"]
    }
  }
}

Cursor

One click, or merge the JSON into ~/.cursor/mcp.json.

{
  "mcpServers": {
    "screenblurt": {
      "command": "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt",
      "args": ["--mcp"]
    }
  }
}

VS Code (Copilot)

One click, or the CLI.

code --add-mcp '{"name":"screenblurt","command":"/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt","args":["--mcp"]}'

Windsurf and others

Windsurf reads ~/.codeium/windsurf/mcp_config.json. Any other MCP client: a stdio server, command /Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt, args ["--mcp"].

{
  "mcpServers": {
    "screenblurt": {
      "command": "/Applications/ScreenBlurt.app/Contents/MacOS/ScreenBlurt",
      "args": ["--mcp"]
    }
  }
}

What to expect

  • An Allow / Deny prompt in the app

    The first time a client connects, ScreenBlurt asks whether to allow it and remembers the answer. Settings → Agents lists every client it has been asked about.

  • Every read costs characters

    A spoken message spends the same allowance as a hotkey read: 1 character per character at Standard, 2.5× at HQ. Agents are told to keep it to a sentence or two.

  • 4,096 character cap

    Text longer than 4,096 characters is cut there, and the tool result says so.

  • The app launches itself

    If ScreenBlurt is not running when an agent connects, the bridge opens it and waits up to 15 seconds for it to come up.

Try it: tell the agent “Use ScreenBlurt to say hello.”

The tools

speaktext (required), voice, quality (standard | hq), wait

Opens a small floating player on the user's Mac and reads the text aloud. Returns once playback starts, or with wait: true, once it finishes. Costs characters.

stop—

Closes every read an agent started. Reads the user started with the hotkey are left alone.

status—

Signed in or not, characters remaining, the voice list, and the default voice and quality. Free.

See plans and character allowances