I built an MCP server that connects Claude (Desktop or Claude Code) to iTerm2. It lets the AI read what's in your other terminal tabs and send commands to them.
What it does:
- List all open panes with their working directories and running processes
- Read the screen buffer from any pane
- Send commands or keystrokes (Ctrl+C, Ctrl+D, etc.) to any pane
- Split panes programmatically
Why I made this:
When using Claude Code for development, I often have servers, logs, or test runners in other terminal tabs. Previously, I had to copy-paste output to give Claude context. Now I can just say "What's the error in tab 3?" or "Run the tests in the pane next to you."
It uses iTerm2's Python API via WebSocket. For Claude Code:
claude mcp add --scope user iterm2 -- npx github:sumchattering/iterm2-mcp-server
GitHub: https://github.com/sumchattering/iterm2-mcp-server
Hope you find it useful!