claudeyes
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@claudeyeswhat changed on my screen in the last minute?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
claudeyes
A macOS perception daemon for Claude Code that only tells the agent about screen changes it did not cause.
t what happened obs self cons world verdict
0.00 agent moves the cursor 66 66 0 0 quiet
0.62 button depresses, toolbar spinner 108 12 96 0 consequence of my action
1.30 page repaints after the click 1392 95 1297 0 consequence of my action
* 2.40 *** Slack message arrives *** 48 0 0 48 WAKE <- 1 region(s)
3.00 agent scrolls 1392 1392 0 0 quiet
* 5.60 *** tests fail on their own *** 136 0 0 136 WAKE <- 1 region(s)
* 6.70 *** popup during the click's wide window *** 48 0 0 48 WAKE <- 1 region(s)
13 frames -> 3 wake-upsExcerpt of tools/demo.py output on a synthetic trace.
An agent is the loudest thing on its own screen, so naive change detection
wakes it on its own echo. claudeyes borrows the efference copy from motor
neuroscience: every action registers a predicted screen delta, the capture loop
reports the observed delta, and only the residual can wake the agent. Each
changed region is labelled SELF (suppressed), CONSEQUENCE (downstream of an
action, used for verification) or WORLD (the interrupt).
See docs/design.md for the full model.
Try it without a Mac
pip install -e . # installs numpy
python3 tools/demo.pyRuns a synthetic 13-frame trace (cursor moves, hover, click, repaint, scroll, typing) with three outside events dropped in. A correct run wakes on exactly those three.
Related MCP server: screen-memory-mcp
Run it for real
cd capture && swift build -c release # macOS 13+, Xcode toolchain
cd .. && ./run.sh # capture | daemon -> ~/.claudeyes/events.db
python3 -m claudeyes.install --apply --editor "Code"
python3 -m claudeyes.doctorGrant Screen Recording permission when asked, or ScreenCaptureKit returns empty
frames without erroring. install merges the PreToolUse/PostToolUse hooks
into ~/.claude/settings.json (with a backup) and prints the claude mcp add
command to run. doctor checks every link in the chain, since most failures
here are silent.
MCP tools
tool | for |
| Ambient context: what happened that the agent did not cause. |
| Blocks until the world does something. Replaces sleep-and-screenshot while waiting on a build. |
| Whether it is watching, and whether the suppression rate is healthy. |
Layout
path | what |
| Swift ScreenCaptureKit shim: dirty rects plus owning app, one JSON line per frame. |
| Predicted-delta envelopes. |
| Observed minus predicted, and the three-way attribution. |
| Capture JSONL in, events to an append-only SQLite log out. |
| MCP server. |
| Claude Code tool hook. |
| Unrelated: a small allowlisted stdio MCP shell for running |
Status
Prototype. The model, event log, MCP server, hooks, installer and doctor work,
and 12 unit tests pass (python3 -m unittest discover -s tests). The Swift
shim compiles but has not yet run a real session with Screen Recording
granted, so frame rate and dirty-rect fidelity are unproven on a live desktop.
License
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Give agents eyes on any web page: structured context, and changes explained in plain language.
- SimSenseOAuthai.simsense
Deploy sims to any screen. Control your displays with Claude.
Deploy sims to any screen. Control your displays with Claude.
Give an AI agent eyes on the web: turn any feed, page, or stream into deduplicated change events.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables Claude to see and interact with any macOS application using natural language commands. Perfect for testing Mac applications, UI automation, and app development with AI assistance.33MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to remember and search everything that appeared on your screen using local OCR and embeddings. Provides tools for semantic search, activity timeline, and code change tracking.MIT
- AlicenseAqualityDmaintenanceEnables Claude to capture screenshots of the screen, windows, regions, and web pages, and compare screenshots for visual regression testing.6MIT
- AlicenseAqualityCmaintenanceEnables Claude to inspect and drive native macOS app UIs during development via an in-process view tree and screenshot renderer, without requiring screen recording permission.7MIT