Handing an assistant a searchable record of everything on your screen is only acceptable if you can bound it. Here the bounds are YAML frontmatter per pipe — apps, windows, content types, hours, endpoints — enforced at three layers, so a denied endpoint is never even described to the model. Data stays in a local SQLite database by default; cloud sync is an opt-in tier.
A continuous local recorder with an MCP server on top. Screen and audio are captured to a local SQLite database on your machine; the MCP endpoint lets Claude Desktop, Cursor, VS Code extensions and other clients query that history instead of you scrolling back through your day.
- Your screen history searched from the assistant — "what did I see in the last 5 mins", "summarize today conversations"
- Recent context and meeting transcriptions available to the assistant as tool results
- Capture across macOS, Windows and Linux, all monitors, with local Whisper transcription for audio
- Pipes: scheduled AI agents written as markdown files in `~/.screenpipe/pipes/`, with YAML frontmatter that restricts what data each one may touch — allowed and denied apps and windows, content types, time ranges and days, and endpoint gating
- A full REST API on localhost, default port 3030, with raw SQL access to the underlying SQLite database and a JavaScript/TypeScript SDK
The desktop app, or the CLI via `npx screenpipe record`. Wiring it to an assistant is one command — `claude mcp add screenpipe -- npx -y screenpipe-mcp@latest` — or `npx screenpipe setup` to configure every supported agent it finds. No account is needed for the core application. The source is available for personal, non-commercial use; the signed desktop app is a subscription: Standard $25/month, Pro $50/seat/month adding cloud sync and integrations, Enterprise $150/seat/month with central config, per-pipe permissions, SSO/SAML and MDM support.
One command — claude mcp add screenpipe -- npx -y screenpipe-mcp@latest
