screenpipe provides an MCP (Model Context Protocol) server that lets AI assistants like Claude and Cursor search your screen recordings, audio transcriptions, and control your computer.Documentation Index
Fetch the complete documentation index at: https://docs.screenpi.pe/llms.txt
Use this file to discover all available pages before exploring further.
claude desktop
quick setup (recommended)
open the screenpipe app → settings → connections → click “install extension” Claude will open and prompt you to confirm. click install — done! try asking Claude: “what did I do in the last 5 minutes?”manual setup (stdio)
if the one-click install doesn’t appear or you prefer manual config, edit Claude’s config file directly: macOS:~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %AppData%\Claude\claude_desktop_config.json
add or update the mcpServers section:
claude code
one command:claude mcp list or /mcp inside Claude Code.
cursor
click here to install in cursor or manually: open cursor settings → mcp → add new global mcp server → set command tonpx with args ["-y", "screenpipe-mcp"].
warp
Warp’s Agent Mode supports MCP. Open Settings → AI → Manage MCP servers → + Add, choose CLI Server (Command), then paste:other editors (cline, continue, windsurf, etc.)
any editor that supports MCP works with screenpipe. the server command is:HTTP transport (optional)
if you need remote MCP access or prefer HTTP over stdio, thescreenpipe-mcp package also provides an HTTP server:
screenpipe-mcp (stdio) and screenpipe-mcp-http (HTTP) come from the same npm package screenpipe-mcp.
available tools
search-content (all platforms)
search through recorded screen content, audio transcriptions, and user input events:| parameter | type | description |
|---|---|---|
q | string | search query (optional - omit to get recent content) |
content_type | string | all, ocr, audio, input, or accessibility (default: all) |
limit | integer | max results (default: 10) |
offset | integer | pagination offset (default: 0) |
start_time | string | ISO 8601 UTC start time (e.g., 2024-01-15T10:00:00Z) |
end_time | string | ISO 8601 UTC end time |
app_name | string | filter by app (e.g., Google Chrome, Slack) |
window_name | string | filter by window title |
min_length | integer | minimum content length |
max_length | integer | maximum content length |
include_frames | boolean | include base64 screenshots (OCR only) |
speaker_ids | string | comma-separated speaker IDs for audio filtering (e.g., 1,2,3) |
speaker_name | string | filter audio by speaker name (case-insensitive partial match) |
export-video
create video exports from screen recordings for a specific time range:| parameter | type | description |
|---|---|---|
start_time | string | ISO 8601 UTC start time (required) |
end_time | string | ISO 8601 UTC end time (required) |
fps | number | frames per second (default: 1.0) |
example queries
try these in Claude or Cursor:- “search for any mentions of ‘project’ in my screen recordings”
- “find audio transcriptions from the last hour”
- “show me what was on my screen in VS Code yesterday”
- “export a video of my screen from 10am to 11am today”
- “find what John said in our meeting about the API”
- “what did I type in Slack today?” (uses content_type=input)
- “what did I copy to my clipboard recently?” (uses content_type=input)
testing
test your setup with MCP Inspector:requirements
- screenpipe must be running on localhost:3030
- Node.js >= 18.0.0
manual config (advanced)
troubleshooting
mcp not connecting?- ensure screenpipe is running (
screenpipein terminal) - check it’s accessible at http://localhost:3030/health
- restart Claude Desktop / Cursor after config changes
- grant accessibility permissions in System Settings > Privacy & Security > Accessibility