Install
git clone https://github.com/CrossPaste/crosspaste-desktop.gitWho it is for
If you want seamless copy and paste across several computers and also want an assistant to read this machine's pasteboard history, CrossPaste fits. It turns the desktop app into a cross-device universal pasteboard and ships a built-in MCP service that exposes pasteboard history to assistants such as Claude.
It fits people already on Mac, Windows, or Linux: official text says the interface stays consistent on these three systems, so you do not have to change habits. It also fits people who do not want the clipboard sent to a cloud: sync uses asymmetric encryption for end-to-end protection, the architecture is LAN-only with no cloud server, and data is stored locally.
If you only want to click once in a browser to connect to some remote service and you have no local compile environment, the confirmed range stops here — the official entry is clone the repository and run it with Gradle; there is no second ready-made installer path.
First try in 3 minutes
There is only one official path: clone from the repository, then compile and run the desktop app at the repository root. Repository URL on its own line:
https://github.com/CrossPaste/crosspaste-desktop
Prerequisites: this machine can run git and the Gradle wrapper script, and the OS is Mac, Windows, or Linux. Sync is designed LAN-only, so devices should be on the same LAN; official text does not describe a public-network relay.
Install and run from the root of the cloned crosspaste-desktop repository. First run the official clone command, then enter the directory and start with the official command:
git clone https://github.com/CrossPaste/crosspaste-desktop.git
cd crosspaste-desktop
./gradlew app:run
Low-risk first action: after the app is running, copy ordinary text on the same machine, then let a Claude that is already connected to this built-in MCP service read pasteboard history. Official text only says it exposes pasteboard history to the assistant; it does not give a concrete tool name, parameters, or config snippet. So the first try is read-only history viewing; do not assume you can write or clear the clipboard.
Observable success: ./gradlew app:run brings the app up and the desktop UI appears; then the assistant can repeat the text you just copied. If the app does not start, stop at compile-and-run; do not switch to an undocumented start method.
Usage examples
Example 1: Ask the assistant to recall what you just copied. The built-in MCP service's job is to expose pasteboard history to assistants such as Claude. Copy a meeting note or a command on any connected device, then ask the assistant about recent paste records. Official text does not name tools or return fields, so you can only confirm the "can see history" layer, not paging, search, or per-device filters.
Example 2: Pull text from a screenshot without leaving this machine. Official text says built-in OCR extracts text from images locally, makes no network request, and screenshots do not leave the device. Copy a screenshot onto the pasteboard, then use the app for local recognition. Official text does not say whether OCR is also exposed to the assistant through MCP, so do not write "the assistant reads images directly" as a confirmed capability.
Limits
The sync scope is written as LAN, no-server architecture, local storage. Do not expect public-network roaming or cloud backup. Encryption is asymmetric end-to-end encryption to protect data; official text does not give key escrow, multi-user sharing, or an enterprise audit interface.
OCR stresses local, no network call, but that does not mean the whole path has no boundary: the app still reads this machine's pasteboard, which may contain tokens, passwords, or personal data. When history is exposed to an assistant, the assistant side sees that content too.
Cross-platform coverage is only Mac, Windows, and Linux. Mobile, browser extensions, or remote headless hosts are not written. The official start command is ./gradlew app:run; there is no prebuilt installer, system package manager, or one-click Claude setup. If a step is missing, stop at the commands that are written.