↳ goals-iterm-mcp
macOS / 本地 stdio MCP / MIT 开源

多个编程代理,
多个终端,
一个对话入口。

让编程代理访问你的 iTerm2。在同一个对话中启动 Coding CLI、查看进度,并发送下一步指令。

工作流程 / 示意

$ uvx --python 3.12
goals-iterm-mcp@0.2.0 serve

agent → list_sessions
确认准确的会话 ID。

agent → read_screen
查看进度,再决定下一步。

你的对话 支持 MCP 的代理 iTerm2 Coding CLI

围绕你的终端开展工作。

随时查看执行进度

通过明确的会话 ID,列出终端会话、读取当前屏幕或历史输出。

为每个项目安排独立终端

创建窗口和标签页、命名会话,并把指令发送到目标终端。

根据结果推进下一步

由协调代理检查结果、补充指令,并验证任务是否达到完成标准。

安装与连接

连接你的 Mac。

MCP 服务器让代理访问本地终端。先准备 iTerm2,再配置使用它的 MCP 客户端。

查看完整文档 ↗

  1. 准备 iTerm2

    使用 macOS,并保持 iTerm2 运行。在 Settings → General → Magic 中启用 Python API,首次连接时批准 iTerm2 授权提示。

  2. 检查安装包

    如未安装 uv,请按其官方说明安装。当前文档使用 0.2.0 版本和 Python 3.12。

    uvx --python 3.12 goals-iterm-mcp@0.2.0 --help

    安装 uv · PyPI 0.2.0

  3. 配置 MCP 客户端

    执行 command -v uvx 获取绝对路径。按客户端支持的格式添加下面的配置,并保留其他已有设置。

    {
      "mcpServers": {
        "iterm": {
          "command": "/absolute/path/to/uvx",
          "args": [
            "--python",
            "3.12",
            "goals-iterm-mcp@0.2.0",
            "serve"
          ]
        }
      }
    }
  4. 验证连接

    重新加载 MCP 连接,检查工具发现,并调用 list_sessions。执行任务前,先在 iTerm2 中完成目标 Coding CLI 的登录配置。

客户端必须能够访问这台 Mac。纯云端聊天无法直接连接本地 iTerm2;手机使用需要远程界面连接到具备本地 MCP 访问能力的代理。

任务示例

从明确的任务开始。

在一个独立的 iTerm2 会话中,进入 /path/to/project 并启动我的 Coding CLI。
让它先定位登录问题,再修复并执行相关测试。
发送后续指令前先查看进度,最后根据实际结果验收。

开始之前。

它和配套 Skill 有什么区别?

MCP 服务器提供终端操作工具。goals-iterm-skill 提供任务委托、监控、决策、恢复和验收的流程指令。

服务器可以访问哪些终端?

默认可以操作当前用户的所有 iTerm2 会话。使用 --read-only 仅观察;使用一个或多个 --session-id <ID> 限定会话。限定会话后无法创建窗口和标签页。

发送成功是否代表命令完成?

不代表。确认信息只说明 iTerm2 API 调用成功,协调代理仍需查看终端输出并验证执行结果。

它自带后台监控服务吗?

不自带。服务器提供终端工具;监控、持续推进和调度由协调代理及其宿主负责。