iterm-mcp

iterm-mcp

site icon
2025.02.18 0
TypeScript终端控制REPL 支持开发效率
iterm-mcp 是一个 Model Context Protocol 服务器,提供对 iTerm 会话的访问。它允许模型检查终端输出,控制终端行为,并与 REPL 交互。该工具设计简洁,依赖少,易于集成到 Claude Desktop 和其他 MCP 客户端中。
View on GitHub

Overview

基本能力

产品定位

iterm-mcp 是一个用于增强开发效率的工具,通过与 iTerm 终端的集成,使模型能够检查和操作终端输出,执行命令,并与 REPL 交互。

核心功能

  • 高效的令牌使用:模型可以仅检查感兴趣的终端输出部分,通常只需查看最后几行输出。
  • 自然集成:用户可以与模型共享 iTerm 会话,询问屏幕上的内容或委托任务给模型执行。
  • 完整的终端控制和 REPL 支持:模型可以启动和与 REPL 交互,发送控制字符(如 ctrl-c、ctrl-z 等)。
  • 低依赖:iterm-mcp 设计简洁,依赖少,可通过 npx 运行。

适用场景

  • 开发过程中需要模型协助执行终端命令或检查输出。
  • 需要模型与 REPL 交互的场景。
  • 多步骤任务的自动化执行。

工具列表

  • write_to_terminal:向活动 iTerm 终端写入内容,通常用于运行命令,返回命令产生的输出行数。
  • read_terminal_output:从活动 iTerm 终端读取指定数量的行。
  • send_control_character:向活动 iTerm 终端发送控制字符。

常见问题解答

  • 安全性:用户需自行确保工具的安全使用,iterm-mcp 不会评估执行的命令的安全性。
  • 模型行为:模型可能表现出意外行为,用户需监控活动并在必要时中止。
  • 多步骤任务:建议从小型、专注的任务开始,熟悉模型行为后再进行复杂任务。

使用教程

使用依赖

  • iTerm2 必须正在运行。
  • Node 版本 18 或更高。

安装教程

与 Claude Desktop 集成

在 macOS 或 Windows 上添加服务器配置:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "iterm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "iterm-mcp"
      ]
    }
  }
}

通过 Smithery 安装

npx -y @smithery/cli install iterm-mcp --client claude

调试方式

使用 MCP Inspector 进行调试:

yarn run inspector
yarn debug <command>

Inspector 将提供一个 URL,用于在浏览器中访问调试工具。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。