Token导航 LogoToken导航

MCP Server · 运维云端

Iterm2 Agent

通过iTerm2 Python API控制终端会话的MCP服务器,提供屏幕读取、命令执行、按键发送、输出监控和窗格管理功能。

stdio官方级别未说明来源级核验工具 6skills
开发工具PythonClaudeClaude Desktop

快速开始

作者 / 组织
xjthy001
提供方
xjthy001
运行时
Node.js

工具数量

6

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Iterm2 Agent 属于运维云端类 MCP Server,公开资料标注 6 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude,有可以直接复制的安装命令;接入前要先准备 会话凭据。

分类

运维云端

传输方式

stdio

认证方式

会话凭据

部署方式

公开资料未说明

安装与配置

安装命令

npx skills add xjthy001/iterm2-agent

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Node.js,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 6 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

iterm2代理

MCP服务器,用于通过iTerm2 Python API控制iTerm2终端会话。

读取屏幕、运行命令、发送击键、监视输出和管理窗格——全部通过 模型上下文协议.

先决条件

  • macOS与 iTerm2 安装
  • iTerm2 Python API已启用: 偏好→ 将军→ 魔法→ 启用Python API
  • Python 3.11+
  • 紫外线 (brew install uv)

安装

MCP服务器

git clone git@github.com:xjthy001/iterm2-agent.git
cd iterm2-agent
uv venv
uv pip install -e .

然后在中注册 ~/.claude.json (参见 使用Claude代码 在......下面

技能(可选)

通过安装代理技能 技能s.sh:

npx skills add xjthy001/iterm2-agent

或手动:

mkdir -p ~/.claude/skills/iterm2-agent
cp skills/iterm2-agent/SKILL.md ~/.claude/skills/iterm2-agent/SKILL.md

该技能为您的AI代理提供了有效使用6个工具的参考指南。当您提到iTerm2或终端控制时,它会自动激活。

工具

工具目的
read_screen读取可见的终端内容和光标位置
run_command执行shell命令,等待输出稳定,返回结果
send_text将原始文本发送到会话(使用可选的Enter键)
send_control发送控制字符(Ctrl+C、Ctrl+Z、Ctrl+D等)
watch_output监视输出,直到正则表达式模式匹配
manage_session列出、创建、拆分、关闭或聚焦会话

read_screen

阅读会话的可见屏幕内容。

lines: int = -1          # Number of lines to read (-1 = all visible)
session_id: str = ""     # Target session (empty = active session)

运行命令

执行命令并捕获输出。等待输出稳定(2秒空闲)后返回。

command: str             # Shell command to execute
timeout: int = 30        # Max seconds to wait
session_id: str = ""

命令由保安进行分类:

  • 安全 --只读命令(ls, pwd, git status, ...)
  • 小心 --修改命令(mkdir, npm install, git push, ...)
  • 危险 --破坏性命令(rm, sudo, kill, ...)--产生警告

send_text

在不自动按Enter键的情况下向会话发送文本。集 press_enter=true 提交。

text: str                # Text to send
press_enter: bool = false
session_id: str = ""

send_control

发送一个控制字符。

character: str           # One of: C, Z, D, L, ESCAPE, A, E, U, K, W, R
session_id: str = ""
角色关键动作
CCtrl+C中断
ZCtrl+Z挂起
DCtrl+DEOF
LCtrl+L清除屏幕
ESCAPEEsc退出
ACtrl+A行首
ECtrl+E行尾
UCtrl+U终止行
KCtrl+K杀死到行尾
WCtrl+W删除单词
RCtrl+R反向搜索

watch_output

阻止,直到屏幕上出现正则表达式模式或超时。

pattern: str             # Regex pattern to match
timeout: int = 60        # Max seconds to wait
session_id: str = ""

管理会话

管理iTerm2会话。

action: str              # list | create | split | close | focus
session_id: str = ""     # Required for close/focus, optional for split
direction: str = "horizontal"  # horizontal | vertical (split only)

使用Claude代码

1.注册MCP服务器

添加 iterm2-agent 进入 mcpServers 对象在 ~/.claude.json:

{
  "mcpServers": {
    "iterm2-agent": {
      "type": "stdio",
      "command": "/path/to/iterm2-agent/.venv/bin/python",
      "args": ["-m", "iterm2_agent"]
    }
  }
}

替换 /path/to/iterm2-agent 使用您的实际克隆路径。该命令必须指向项目virtualenv中的Python二进制文件,以便依赖项可用。

如果 ~/.claude.json 已经有了 mcpServers 对象,只需添加 "iterm2-agent": { ... } 与现有服务器并排进入。不要覆盖整个文件。

编辑后重新启动Claude Code。服务器在启动时连接到iTerm2-确保iTerm2正在运行并且启用了Python API。

2.安装技能(可选)

npx skills add xjthy001/iterm2-agent

或者从仓库手动复制:

mkdir -p ~/.claude/skills/iterm2-agent
cp skills/iterm2-agent/SKILL.md ~/.claude/skills/iterm2-agent/SKILL.md

安装后,用以下命令调用它 /iterm2-agent 或者当你提到终端/iTerm2时,它会自动激活。

3.验证

启动一个新的Claude Code会话并尝试:

  • “我的终端上现在有什么?”
  • “跑 git status iTerm2“
  • “拆分终端并在新窗格中运行测试”
  • “启动开发服务器,并告诉我它什么时候准备好”
  • “发送Ctrl+C以停止正在运行的进程”

建筑

┌─────────────────────────────────────┐
│         MCP Client                  │
│   (Claude Code / Claude Desktop)    │
└──────────────┬──────────────────────┘
               │ stdio (JSON-RPC)
┌──────────────▼──────────────────────┐
│       iterm2-agent (MCP Server)     │
│                                     │
│  server.py        FastMCP + lifespan│
│  connection.py    Session resolver  │
│  security.py      Command classifier│
│  tools/                             │
│    read_screen.py                   │
│    run_command.py                   │
│    send_text.py                     │
│    send_control.py                  │
│    watch_output.py                  │
│    manage_session.py                │
└──────────────┬──────────────────────┘
               │ WebSocket
┌──────────────▼──────────────────────┐
│         iTerm2 Python API           │
│     (iterm2.Connection)             │
└──────────────┬──────────────────────┘
               │
┌──────────────▼──────────────────────┐
│           iTerm2.app                │
└─────────────────────────────────────┘

项目结构

iterm2-agent/
├── pyproject.toml
├── config/
│   └── default.toml
├── src/iterm2_agent/
│   ├── __init__.py
│   ├── __main__.py           # Entry point: python -m iterm2_agent
│   ├── server.py             # FastMCP server with iTerm2 lifespan
│   ├── connection.py         # iTerm2Context, session resolution, screen reading
│   ├── security.py           # Command classification (SAFE/CAUTION/DANGEROUS)
│   └── tools/
│       ├── __init__.py       # Tool registration
│       ├── read_screen.py
│       ├── run_command.py
│       ├── send_text.py
│       ├── send_control.py
│       ├── watch_output.py
│       └── manage_session.py
├── tests/
│   ├── test_security.py      # Security guard unit tests
│   ├── test_read_screen.py   # Session resolution unit tests
│   ├── test_run_command.py   # Security integration tests
│   └── test_send_control.py  # Control character mapping tests
├── test_integration.py       # Live integration tests (requires iTerm2)
└── skills/iterm2-agent/
    └── SKILL.md              # Agent skill definition (skills.sh compatible)

测试

单元测试(无需iTerm2):

uv pip install pytest pytest-asyncio
uv run pytest

实时集成测试(需要运行iTerm2):

uv run python test_integration.py

许可证

麻省理工学院

工具与能力

工具数量

6

资源数量

0

提示词数量

0

能力标签

终端控制Python本地部署iTerm2集成自动化工具开发辅助

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 6 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Node.js,换机器要重新装一遍。
  • 需要自备会话凭据,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到会话凭据的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Iterm2 Agent

MCP World · 本页

6stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Iterm2 Agent 怎么安装?

公开资料给出的安装命令是 npx skills add xjthy001/iterm2-agent,运行环境为 Node.js。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Iterm2 Agent 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Node.js;保存后完全退出客户端再打开,配置才会生效。

Iterm2 Agent 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Iterm2 Agent 需要 API Key 吗?

公开资料标注的认证方式是会话凭据,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Iterm2 Agent 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP