PbScope MCP Server
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PbScope MCP Servercompare the clipboard events on the source and target Macs"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PbScope
macOS pasteboard diagnostics. PbScope watches NSPasteboard.general, records
every clipboard generation as an event (who wrote it, which flavor UTIs were
declared, what they weigh once materialized), and exposes the whole history to
AI agents over an HTTP MCP server — so you can run one instance on the machine
that copies and another on the machine that pastes, and let an agent compare
what each side saw.
Built by PwrDrvr to diagnose clipboard-transfer problems in PwrSnap (uncompressed-TIFF size bloat over Universal Clipboard / Splashtop, flavors dying between copy and paste), but it is PwrSnap-agnostic: it observes the system pasteboard.
Why observing the clipboard is tricky (and how PbScope handles it)
Many pasteboard flavors are promised, not rendered — the source app only produces the bytes when a paste target asks. Reading a flavor is therefore a side-effectful act: it resolves promises and can trigger Universal Clipboard network transfers, changing the very behavior you're debugging.
PbScope is passive by default: it polls changeCount (~150ms) and
enumerates each item's declared UTIs, which does not materialize data. Sizes,
hashes, and previews appear only when you:
click a flavor chip (fetch that one flavor),
enable Auto-fetch contents (materialize every flavor of each new event),
run Paste test (read every flavor the way a real paste target would), or
call the side-effect-marked MCP tools.
Every fetch is recorded on the event, so you can tell afterward whether observation perturbed the experiment.
Attribution
NSPasteboard does not record which app wrote it. PbScope badges events using
presence-only markers in the declared flavor set:
PwrSnap — any
com.pwrdrvr.*UTI presentUniversal Clipboard —
com.apple.is-remote-clipboardconcealed / transient — the
org.nspasteboard.*conventions
Related MCP server: sieve-map
Install / run
Requires macOS, Node ≥ 24 (.nvmrc), pnpm, and Xcode command line tools
(swiftc).
pnpm install # also compiles the Swift helper (build/native/pasteboard-monitor)
pnpm dev # run the appPackage a distributable zip (ad-hoc signed; right-click → Open on the target
machine, or xattr -dr com.apple.quarantine PbScope.app):
pnpm packageClosing the window quits the app (and its MCP server) — the server only runs while PbScope is visibly running in the Dock.
MCP server
Streamable HTTP, stateless, no auth — intended for localhost and trusted private networks only.
Default:
http://127.0.0.1:4577/mcpHealth check:
GET /healthzLAN mode (for the remote-machine workflow): launch with
--lanorPBSCOPE_HOST=0.0.0.0; change the port withPBSCOPE_PORT.
Connect from Claude Code:
claude mcp add --transport http pbscope-local http://127.0.0.1:4577/mcpclaude mcp add --transport http pbscope-remote http://192.168.1.50:4577/mcpTools
Tool | Side effects | What it does |
| none | Helper liveness, current changeCount, event count, auto-fetch state |
| none | Event history: declared UTIs per item, markers, superseded flag, recorded fetches ( |
| none | Full detail for one event by |
| materializes |
|
| materializes | Read every declared flavor like a paste target; per-flavor size/duration plus |
A typical two-machine session
Run PbScope on the source Mac (
pnpm dev) and on the paste-target Mac (--lan).Point your agent at both MCP endpoints.
Copy an image in the app under test on the source Mac.
Ask the agent to
pb_list_eventson both sides and compare: did one copy produce one event or two? Which flavors were declared on each side? Thenpb_fetch_flavor/pb_paste_teston the target to see what the paste actually weighs (a 250 KB PNG arriving as an 8 MBpublic.tiffis your uncompressed-TIFF bloat) and whether any flavor returns nil.
Architecture
native/pasteboard-monitor/main.swift Swift CLI: polls changeCount, NDJSON
over stdio; fetch/pasteTest on demand
src/main/monitor.ts spawns + speaks to the helper
src/main/event-store.ts ring buffer of events (payloads never stored)
src/main/mcp-server.ts Streamable HTTP MCP (stateless, no auth)
src/main/index.ts Electron bootstrap + IPC
src/renderer/ event timeline UIThe Swift helper exists because Electron's clipboard API can't do any of the
load-bearing parts: it exposes no changeCount, can't enumerate declared UTIs
without reading them, and can't distinguish promised from rendered flavors.
License
MIT © PwrDrvr LLC
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceAn MCP server that gives Claude and other AI assistants access to your Maccy clipboard history, allowing search, retrieval, and management of copied content through natural conversation.Last updated9
- AlicenseAqualityCmaintenanceLocal MCP server for macOS that scans AI coding tool history (Claude Code, Cursor, Copilot, Cline, Codex, Gemini CLI) for leaked secrets. Finds API keys in chat transcripts, redacts with sieve:// placeholders, and runs commands with Keychain-injected secrets - no plaintext values ever returned.Last updated91MIT
- Alicense-qualityDmaintenanceA standalone clipboard history MCP server for macOS that monitors clipboard in real-time, stores history locally in SQLite, and exposes it to any MCP-compatible AI assistant.Last updated5MIT
- Alicense-qualityBmaintenanceMCP server that gives AI agents access to your Maus clipboard on macOS, enabling them to write clean text into history, search, and manage clipboard items locally.Last updated151MIT
Related MCP Connectors
User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pwrdrvr/pbscope'
If you have feedback or need assistance with the MCP directory API, please join our Discord server