setup
before setting up, make sure screenpipe is running on your machine:/mcp add slash command inside Copilot CLI:
| field | value |
|---|---|
| name | screenpipe |
| type | local |
| command | npx |
| args | -y screenpipe-mcp |
| tools | * |
~/.copilot/mcp-config.json directly:
stdio vs http — which should I use?
use stdio (type: "local" in config). this is the standard for local MCP servers on the same machine. screenpipe runs locally on your machine, so stdio communication has no network overhead and is the intended pattern.
HTTP transport is only for remote scenarios where your MCP client (Claude, Cursor, etc.) runs on a different machine than screenpipe — see openclaw for that pattern. for Copilot CLI on the same machine, always choose stdio.
verify connection
inside Copilot CLI, run:screenpipe listed with its tools.
available tools
| tool | description |
|---|---|
search-content | search screen text (accessibility-first, OCR fallback), audio transcriptions, and input |
activity-summary | lightweight overview of app usage, speakers, and recent texts for a time range |
search-elements | search structured UI elements from the accessibility tree |
frame-context | full accessibility tree, URLs, and text for a specific frame |
list-meetings | list detected meetings with duration, app, and attendees |
export-video | export screen recordings as MP4 for a time range |
usage examples
ask Copilot CLI to use screenpipe naturally:example workflows
recall context from earlier:requirements
- screenpipe running on localhost:3030 (start with
npx -y screenpipe@latest record) - GitHub Copilot CLI installed
- Node.js >= 18.0.0
troubleshooting
how do I check I’m on the latest screenpipe CLI? always invoke screenpipe with the@latest npm tag — it pulls the freshest build from npm each time:
-
verify screenpipe is running:
you should see
{"status":"healthy"}. -
confirm Copilot sees the server:
-
remove and re-add via
/mcpif the server is in an error state.
- check screenpipe has data:
curl "http://localhost:3030/search?limit=1" - ensure screen recording permissions are granted
- give screenpipe a minute or two of running before querying
- System Settings → Privacy & Security → Screen Recording → enable for your terminal