clipboard-mcp
Cross-platform MCP server for system clipboard access. Three tools: get_clipboard, set_clipboard, watch_clipboard. Single Rust binary, zero runtime deps.
clipboard-mcp
Cross-platform Model Context Protocol (MCP) server that gives AI assistants direct read/write access to your system clipboard. Website
Copy an error → ask Claude to fix it → the fix lands in your clipboard. No manual paste into chat, no manual copy from response.
cargo install clipboard-mcp
Why clipboard-mcp?
- Single binary — no Python, no Node.js, no runtime to install
- Native clipboard — uses arboard by 1Password, not shell commands like
pbcopy/xclip - Watch mode —
watch_clipboardlets agents react to what you copy in real-time - HTML + format detection — read HTML content, probe available clipboard formats
- Cross-platform — Windows, macOS (Intel + Apple Silicon), Linux (X11 + Wayland)
- HTTP transport — run as a local HTTP server for remote agent access
Tools
| Tool | Description |
|---|---|
get_clipboard | Read current text from the clipboard. Content over 100 KB is truncated. |
get_clipboard_html | Read HTML content from the clipboard (e.g., rich text from browsers). |
set_clipboard | Write text to the clipboard (max 1 MB). |
watch_clipboard | Wait for clipboard text to change (default 30s, max 300s). Max 5 concurrent. |
list_clipboard_formats | Probe which formats are available (text, HTML, image, files). |
clear_clipboard | Clear all clipboard content. |
watch_clipboard parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
timeout_secs | integer (optional) | 30 | Seconds to wait for a change (max 300) |
Installation
cargo install clipboard-mcp
Or download a binary from GitHub Releases.
Configuration
Claude Desktop (stdio, default)
Add to claude_desktop_config.json:
{
"mcpServers": {
"clipboard": {
"command": "clipboard-mcp"
}
}
}
Claude Code (stdio)
# Add for current project
claude mcp add clipboard clipboard-mcp
# Or add globally
claude mcp add --scope user clipboard clipboard-mcp
HTTP Transport
Run as an HTTP server for remote or programmatic access:
clipboard-mcp --http # 127.0.0.1:3100
clipboard-mcp --http --port 8080 # custom port
clipboard-mcp --http --host 0.0.0.0 # expose to network (see Security)
MCP endpoint: http://HOST:PORT/mcp
Usage Examples
Read and transform:
"Take whatever is on my clipboard and rewrite it in a more formal tone, then put the result back."
Watch for changes:
"Watch my clipboard for 60 seconds. When I copy something, summarize it in one sentence."
Round-trip:
"Get my clipboard, translate it to German, and set the translation back."
Data transform:
Copy a CSV table → "Convert what's on my clipboard to JSON" → paste formatted JSON into your editor.
Code from clipboard:
Copy a code snippet from a browser → "Review the code on my clipboard for bugs" → Claude reads it directly, no pasting into chat.
Step-by-step agent output via clipboard history:
Run a multi-step task and
set_clipboardafter each step. With any clipboard manager (Paste, CopyQ, Klipper), you get a chronological log of every result — browse, search, and review the agent's work without switching windows.
Platform Support
- Windows (x86_64) — clipboard persists via OS pasteboard
- macOS (x86_64, aarch64) — clipboard persists via OS pasteboard
- Linux (x86_64, aarch64) — X11 and Wayland (via
wl-data-controlprotocol)
Linux note: On Linux, clipboard content set by the server is kept alive by a background thread. If no clipboard manager is running (bare WMs like i3/dwm), install
clipman,parcellite, orcopyq.
How It Works
Single binary. Uses arboard (by 1Password) for native clipboard access. Communicates via MCP protocol over stdio (default) or HTTP (--http flag, Streamable HTTP transport). No runtime dependencies on Windows and macOS; Linux requires X11 libs or a Wayland compositor with wl-data-control support.
Troubleshooting
Linux: clipboard content disappears
Ensure a clipboard manager is running. On bare window managers (i3, dwm), install clipman, parcellite, or copyq.
Wayland: "clipboard is empty or contains non-text content"
Your compositor must support the wl-data-control protocol. Sway, Hyprland, GNOME, and KDE all do. Older compositors may not.
macOS: clipboard access denied Ensure the terminal running the MCP server has clipboard permissions in System Settings > Privacy & Security.
Security
This server gives connected MCP clients full read/write access to your system clipboard:
get_clipboard/get_clipboard_html— return clipboard content verbatimset_clipboard— silently overwrites clipboard contents (max 1 MB)watch_clipboard— returns the next thing you copy, verbatimclear_clipboard— wipes clipboard without confirmation
Only connect this server to AI sessions you trust. Do not use it in environments where sensitive data (passwords, tokens) may be on the clipboard.
HTTP mode: Default bind is 127.0.0.1 (localhost only). Binding to 0.0.0.0 with --host exposes clipboard to all reachable network interfaces. Browser-initiated requests (with Origin header) are rejected with 403. There is no authentication — non-browser HTTP clients are not restricted. For remote access, prefer SSH tunneling over exposing to the network.
Contributing
Bug reports and pull requests are welcome. For major changes, please open an issue first.
License
MIT
Server Terkait
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Riza
Arbitrary code execution and tool-use platform for LLMs by Riza
Micromanage
A server for managing sequential development tasks with configurable rules using external .mdc files.
OpenAPI Invoker
Invokes any OpenAPI specification through a Model Context Protocol (MCP) server.
Manim MCP Server
Executes Manim Python scripts to generate and return rendered video animations.
Liveblocks
Interact with the Liveblocks REST API to manage rooms, threads, comments, and notifications, with read access to Storage and Yjs.
Test Code Generator
Generates Vitest test code from JSON specifications using boundary value analysis and equivalence partitioning.
MCP JSON
A collection of servers for file system operations, Google search, web automation, and executing terminal commands.
Postman Tool Generation
Generates AI agent tools from Postman collections and requests using the Postman API.
Subotiz MCP
Connect AI assistants to Subotiz - Using Subotiz's external capabilities through natural language
BioMCP
Enhances large language models with protein structure analysis capabilities, including active site analysis and disease-protein searches, by connecting to the RCSB Protein Data Bank.