返回市场
增强迭代MCP服务器

增强迭代MCP服务器

作者:2black02 星标更新:2025-08-05

项目介绍

🚀 增强型 iTerm MCP 服务器

npm 版本 许可证: MIT macOS Node.js Python

通过 Python API 集成实现高级 iTerm2 自动化 - 适用于 AI 助手的终极终端控制解决方案。

现在带有原生 Python API - 直接集成 iTerm2 以获得最大可靠性和性能

⚡ 快速开始

1. 安装

通过 NPM (推荐) - 现已可用!

npm install -g enhanced-iterm-mcp-server

🎉 刚刚发布! 该包现已在 NPM 注册表中提供,便于安装。

从源码安装

git clone https://github.com/2black0/enhanced-iterm-mcp-server.git
cd enhanced-iterm-mcp-server
npm install
./setup-python-api.sh
npm run build

2. 启用 iTerm2 Python API

  1. 打开 iTerm2 → 首选项 (⌘,)
  2. 转到 常规 → 魔法
  3. 勾选 “启用 Python API”
  4. 重启 iTerm2

3. 添加到 MCP 配置

{
  "mcpServers": {
    "enhanced-iterm": {
      "command": "node",
      "args": ["/path/to/enhanced-iterm-mcp-server/dist/index-python-api.js"],
      "type": "stdio"
    }
  }
}

4. 测试设置

# 如果全局安装
enhanced-iterm-mcp test

# 如果从源码安装
npm test

📦 安装方法

全局安装 (NPM)

# 全局安装
npm install -g enhanced-iterm-mcp-server

# 在任何地方使用
enhanced-iterm-mcp --help

# Claude Desktop 的配置路径
# ~/.npm/lib/node_modules/enhanced--iterm-mcp-server/dist/index-python-api.js

包现已上线 NPM! 使用 npm install -g enhanced-iterm-mcp-server 安装

本地项目安装

# 在项目中安装
npm install enhanced-iterm-mcp-server

# 使用 npx
npx enhanced-iterm-mcp --help

# Claude Desktop 的配置
# /path/to/project/node_modules/enhanced-iterm-mcp-server/dist/index-python-api.js

直接使用 (NPX)

# 不需要安装即可使用
npx enhanced-iterm-mcp-server --help

# Claude Desktop 的配置
{
  "mcpServers": {
    "enhanced-iterm": {
      "command": "npx",
      "args": ["enhanced-iterm-mcp-server"],
      "type": "stdio"
    }
  }
}

🚀 已在 NPM 注册表中上线: https://www.npmjs.com/package/enhanced-iterm-mcp-server

🛠 可用工具

终端管理

  • open-terminal - 使用配置文件和命令创建新的终端
  • list-all-sessions - 完整的 iTerm2 窗口/标签/会话概览

高级面板操作

  • split-terminal-horizontal / split-terminal-vertical - 支持配置文件的面板分割
  • execute-command-in-pane - 在特定面板中执行命令
  • broadcast-input - 同时向多个面板发送命令

实时信息

  • get-session-info - 基本会话信息和状态
  • get-session-details - 包含所有变量的全面会话详情
  • monitor-session - 随时间监控会话变化

视觉定制

  • set-tab-color - 设置标签颜色(命名颜色或十六进制代码)

兼容性

  • list-panes - 列出跟踪的面板
  • get-terminal-state - 终端状态概览

🎯 关键特性

🐍 Python API 集成

  • 直接访问 iTerm2 的原生 Python API
  • 实时会话变量监控
  • 强大的错误处理和自动重试
  • 没有 AppleScript 的限制

📊 高级自动化

  • 多面板广播 同时执行命令
  • 基于配置文件的终端创建 自定义配置
  • 实时会话监控 超过 10 个变量
  • 视觉定制 标签颜色

🔧 生产就绪

  • 全面的错误处理和日志记录
  • 所有操作的超时保护
  • 虚拟环境隔离
  • 清晰的 TypeScript 实现

📖 使用示例

创建和分割终端

// 打开新终端
await callTool("open-terminal", {
  command: "htop",
  workingDirectory: "/Users/username/projects"
})

// 使用配置文件水平分割
await callTool("split-terminal-horizontal", {
  profile: "Development",
  command: "npm run dev"
})

多面板操作

// 向多个面板广播命令
await callTool("broadcast-input", {
  paneIds: ["session-1", "session-2", "session-3"],
  command: "git status"
})

// 监控会话变化
await callTool("monitor-session", {
  paneId: "session-1",
  duration: 30
})

实时信息

// 获取全面的会话详情
await callTool("get-session-details", {
  sessionId: "213D676B-19F7-42A4-9E34-B2B81D40105B"
})

// 列出所有活动会话
await callTool("list-all-sessions", {})

🔧 开发

构建与运行

npm run build    # 构建 TypeScript
npm start        # 运行生产模式
npm run dev      # 开发模式

测试

npm test         # 测试工具列表
npm run test-sessions  # 测试会话访问

🚨 故障排除

“Python API 未启用”

  • 在 iTerm2 首选项 → 通用 → 魔法 → Python API 中启用
  • 启用后重启 iTerm2

“连接错误”

  • 确保 iTerm2 正在运行
  • 检查 Python 虚拟环境:source iterm_env/bin/activate
  • 验证 iterm2 包:pip list | grep iterm2

“会话未找到”

  • 使用 list-all-sessions 获取有效的会话 ID
  • 会话 ID 在关闭和重新打开会话时会发生变化

📄 许可证

ISC 许可证

🙏 使用了以下工具


🎯 适用于 AI 助手的终极 iTerm2 自动化解决方案

🤝 贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。

贡献者快速开始

git clone https://github.com/2black0/enhanced-iterm-mcp-server.git
cd enhanced-iterm-mcp-server
npm install
./setup-python-api.sh
npm run dev

📜 更新日志

查看 CHANGELOG.md 了解详细的版本历史。

🙏 致谢

⭐ 支持

如果这个项目对你有帮助,请考虑:

  • ⭐ 给仓库点赞
  • 🐛 报告问题
  • 🔧 贡献改进
  • 📢 分享给他人

为 AI 自动化社区打造 ❤️