Let AI agents see and interact with terminal/CLI apps via PNG screenshots
If you already use Can, the can mcp server is the piece that lets your assistant work with it directly. Let AI agents see and interact with terminal/CLI apps via PNG screenshots.
MCP server that lets AI agents see and interact with terminal/CLI applications through virtual terminals and PNG screenshots.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
launch — Start a CLI app in a virtual terminal. Returns a sessionId. Accepts optional env to set environment variablesscreenshot — Capture the terminal as a PNG imagescreenshot_region — Capture a specific rectangular area of the terminalscreenshot_text_region — Find text in the viewport and capture the surrounding area as a PNGcapture_baseline — Snapshot terminal state for later diff comparisondiff_screenshot — Compare current state against baseline with highlighted changesget_cell_info — Query character, colors, and attributes at specific cell(s). Supports compact mode for reduced outputread_text — Read the terminal buffer as plain textread_scrollback — Read text that scrolled above the visible viewportwait_for_text — Wait until specific text appears in the terminal bufferwait_for_idle — Wait until terminal output has been stable for a given duration. Supports stableMs for content-comparison mode (for apps with timers/spinners)wait_for_color — Wait until a specific color appears at a positioncan-see depends on node-canvas (Cairo) and node-pty, which require native compilation. Most systems will need: - Windows: Visual Studio Build Tools (C++ workload) — npm install --global windows-build-tools or install from Visual Studio Installer - macOS: Xcode Command Line Tools — xcode-select --install -
Installation goes through your MCP client rather than a global install: point it at can-see on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
Among the browser automation options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Can's toolset — launch, screenshot, screenshot_region and 11 more — is a fair guide to whether it matches your workflow. It is maintained by HurleySk; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| launch | Start a CLI app in a virtual terminal. Returns a sessionId. Accepts optional env to set environment variables. |
| screenshot | Capture the terminal as a PNG image. |
| screenshot_region | Capture a specific rectangular area of the terminal. |
| screenshot_text_region | Find text in the viewport and capture the surrounding area as a PNG. |
| capture_baseline | Snapshot terminal state for later diff comparison. |
| diff_screenshot | Compare current state against baseline with highlighted changes. |
| get_cell_info | Query character, colors, and attributes at specific cell(s). Supports compact mode for reduced output. |
| read_text | Read the terminal buffer as plain text. |
| read_scrollback | Read text that scrolled above the visible viewport. |
| wait_for_text | Wait until specific text appears in the terminal buffer. |
| wait_for_idle | Wait until terminal output has been stable for a given duration. Supports stableMs for content-comparison mode (for apps with timers/spinners), excludeRows to ignore specific rows, and excludePattern (regex) for dynamic |
| wait_for_color | Wait until a specific color appears at a position. |
| wait_for_exit | Wait until the process exits and return its exit code and signal. |
| start_recording | Begin capturing frames for an animated GIF. |
Or if installed globally:
```json
{
"mcpServers": {
"can-see": {
"command": "can-see"
}
}
}Configuration as documented by the project. Restart the client after saving.
can-see depends on node-canvas (Cairo) and node-pty, which require native compilation. Most systems will need: - Windows: Visual Studio Build Tools (C++ workload) — npm install --global windows-build-tools or install from Visual Studio Installer - macOS: Xcode Command Line Tools — xcode-select --install -
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.