MCP Terminal

MCP Terminal

site icon
2025.04.03 3
Python终端控制AI集成开发效率
MCP Terminal 是一个基于 MCP(Model Context Protocol)的终端控制服务器,专为与大型语言模型(LLM)和 AI 助手集成而设计。它提供了一个标准化的接口,使 AI 可以执行终端命令并获取输出结果。
View on GitHub

Overview

基本能力

产品定位

MCP Terminal 是一个终端控制服务器,旨在为大型语言模型(LLM)和 AI 助手提供终端命令执行能力。

核心功能

  • 使用官方 MCP SDK 实现
  • 支持多种终端控制器:
  • iTerm2 控制器:在 macOS 上使用 iTerm2 的 Python API 提供高级控制
  • AppleScript 控制器:在 macOS 上使用 AppleScript 控制 Terminal 应用
  • Subprocess 控制器:在所有平台上通用的终端控制方式
  • 支持多种服务器模式:
  • STDIO 模式:通过标准输入/输出与客户端通信
  • SSE 模式:通过 Server-Sent Events 提供 HTTP API
  • 自动检测最佳终端控制器
  • 与 Claude Desktop 无缝集成

适用场景

  • AI 助手执行终端命令
  • 自动化脚本开发
  • 开发环境集成

工具列表

  • iTerm2 控制器:提供 macOS 上 iTerm2 的高级控制能力
  • AppleScript 控制器:通过 AppleScript 控制 macOS Terminal 应用
  • Subprocess 控制器:跨平台的通用终端控制方式

常见问题解答

  1. 如何解决集成问题?
  2. 确保 MCP Terminal 服务器正在运行
  3. 检查日志输出以查找错误
  4. 验证 Claude Desktop 的工具配置是否正确
  5. 尝试重启 Claude Desktop 和 MCP Terminal 服务器

  6. 如何确保安全性?

  7. 限制服务器只接受来自受信任来源的连接
  8. 考虑实现命令白名单或黑名单
  9. 定期审计执行的命令
  10. 在专用账户下运行服务器,限制其权限

使用教程

使用依赖

  • Python 3.8+
  • uv 包管理工具

安装 uv 的命令:

# 在macOS上使用Homebrew
brew install uv

# 在其他平台上
pip install uv

安装教程

  1. 克隆仓库并使用 uv 安装依赖:
# 克隆仓库
git clone https://github.com/yourusername/mcp-terminal.git
cd mcp-terminal

# 创建虚拟环境并安装基本依赖
uv venv
source .venv/bin/activate  # 在Windows上使用 .venv\Scripts\activate
uv pip install -e .

# 如果需要iTerm2支持 (仅限macOS)
uv pip install -e ".[iterm]"

# 如果需要开发工具(测试、代码格式化等)
uv pip install -e ".[dev]"
  1. 使用 Makefile 安装:
# 安装基本依赖
make setup

# 安装iTerm2支持
make setup-iterm

# 安装开发依赖
make setup-dev

调试方式

  1. 运行 MCP 终端服务器:
# 使用Python直接运行(默认使用stdio模式和自动检测终端控制器)
python mcp_terminal.py

# 使用Makefile运行(stdio模式)
make run-stdio

# 使用Makefile运行(SSE模式)
make run-sse

# 使用指定控制器
make run-iterm     # 使用iTerm2控制器
make run-applescript  # 使用AppleScript控制器
make run-subprocess   # 使用Subprocess控制器
  1. 查看命令行选项:
python mcp_terminal.py --help

许可证

该项目遵循 MIT 开源许可条款。