{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ymms5ar4t5wm","handle":"iterm2-mcp","url":"https://wellknown.network/agents/iterm2-mcp","links":{"self":"https://wellknown.network/agents/iterm2-mcp/record.json","html":"https://wellknown.network/agents/iterm2-mcp","markdown":"https://wellknown.network/agents/iterm2-mcp/record.md","api":"https://wellknown.network/api/v1/agents/iterm2-mcp","status":"https://wellknown.network/api/v1/agents/iterm2-mcp/status","claim":"https://wellknown.network/agents/iterm2-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/iterm2-mcp/claim.json","badge":"https://wellknown.network/agents/iterm2-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/iterm2-mcp/history","tools":"https://wellknown.network/api/v1/agents/iterm2-mcp/tools"},"ard":{"identifier":"urn:air::server:iterm2-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"iterm2-mcp","summary":"MCP server that gives Claude full control over iTerm2 via the iTerm2 Python API.","description":"# iterm2-mcp\n\nAn MCP server that provides full control over iTerm2.\n\n## Prerequisites\n\n1. iTerm2 running on macOS.\n2. **Preferences > General > Magic > \"Enable Python API\"** must be checked.\n3. Install iTerm2 [shell integration](https://iterm2.com/documentation-shell-integration.html)\n   in your shell. `run_command` and session variables like `path`/`jobName` depend on it.\n   Without it, `run_command` falls back to its timeout.\n\nThe first time the server connects, iTerm2 will prompt you to approve the binary. Approve once; subsequent launches are automatic.\n\n## Install\n\n```bash\nuv tool install iterm2-mcp\n```\n\nOr from source:\n\n```bash\ngit clone https://github.com/lorencarvalho/iterm2-mcp.git\ncd iterm2-mcp\nuv sync\n```\n\n## Register with Claude\n\n**Claude Code:**\n\n```bash\nclaude mcp add iterm2 -- uvx iterm2-mcp\n```\n\n**Claude Desktop** — add to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"iterm2\": {\n      \"command\": \"uvx\",\n      \"args\": [\"iterm2-mcp\"]\n    }\n  }\n}\n```\n\n## Security\n\nThis server can type into terminals, run commands, and close sessions — anything\nyou can do in iTerm2. Only connect it to MCP clients you trust. It has no\nsandboxing beyond what iTerm2 itself provides.\n\n## Tools\n\nMost tools accept an optional `session_id` — omit it to target the currently active\nsession.\n\n| Tool | Purpose |\n| --- | --- |\n| `list_sessions` | Tree of windows/tabs/sessions with IDs |\n| `get_active_session` | ID and name of the focused session |\n| `focus_session` | Bring a session to the foreground |\n| `write_to_terminal` | Send text (optionally with newline) |\n| `send_control_character` | Send Ctrl-C, Ctrl-D, Ctrl-Z, ESC, etc. |\n| `send_escape_sequence` | Send a raw ANSI escape (e.g. `\\x1b[2J`) |\n| `read_screen` | Read the visible screen as plain text |\n| `get_cursor_position` | Current cursor `(x, y)` |\n| `run_command` | Send a command and wait for `COMMAND_END` |\n| `create_window` | Open a new iTerm2 window |\n| `create_tab`…","publisher":{"name":"Loren Carvalho","url":null},"homepage":"https://github.com/lorencarvalho/iterm2-mcp","repository":"https://github.com/lorencarvalho/iterm2-mcp","version":"0.1.0","license":"MIT","protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:iterm2-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"dev.terminal","name":"Terminal & Shell","confidence":1,"provenance":"derived"},{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"}],"categories":["dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"iterm2-mcp","registry":"pypi","observedAt":"2026-09-15T21:22:08.452Z","publishedAt":"2026-04-19T01:01:09.947722Z","latestVersion":"0.1.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"iterm2-mcp","url":"https://pypi.org/project/iterm2-mcp/","firstSeenAt":"2026-09-09T22:22:10.104Z","fetchedAt":"2026-09-15T21:20:31.148Z","normalizedAt":"2026-09-15T21:20:31.148Z"}]},"firstSeenAt":"2026-09-09T22:22:10.104Z","updatedAt":"2026-09-15T21:22:08.452Z"}