Token导航 LogoToken导航TokenDH.com
Terminal Controller for MCP logo
安全风控stdio官方级别未说明来源级核验

Terminal Controller for MCP

MCP Server

@smithery/cli

A Model Context Protocol (MCP) server that enables secure terminal command execution, directory navigation, and file system operations through a standardized interface.

工具数

10

提示词数

0

GitHub Stars

99

资源数

0
PythonClaude安全Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

GongRzhe

提供方

GongRzhe

最后核验

2026/5/18 02:51

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @smithery/cli install @GongRzhe/terminal-controller-mcp --client claude

详细介绍

MCP终端控制器

一种模型上下文协议(MCP)服务器,通过标准化接口实现安全的终端命令执行、目录导航和文件系统操作。

![](https://badge.mcpx.dev?type=server "MCP Server") ](https://smithery.ai/server/@GongRzhe/terminal-controller-mcp)

特性

  • 命令执行:运行具有超时控制和全面输出捕获的终端命令
  • 目录管理:使用直观的格式导航和列出目录内容
  • 安全措施:针对危险命令和操作的内置防护措施
  • 命令历史记录:跟踪和显示最近执行的命令
  • 与跨平台支持:适用于基于Windows和UNIX的系统
  • 文件操作:以行级精度读取、写入、更新、插入和删除文件内容

安装

通过Smithery安装

通过以下方式自动安装Claude Desktop的终端控制器 史密瑟里:

npx -y @smithery/cli install @GongRzhe/terminal-controller-mcp --client claude

先决条件

  • Python 3.11+
  • MCP兼容客户端(如Claude Desktop)
  • 已安装UV/UVX(可选,适用于UVX方法)

方法1:PyPI安装(推荐)

直接从PyPI安装软件包:

pip install terminal-controller

或者,如果您更喜欢使用UV:

uv pip install terminal-controller

方法2:来源

如果您更喜欢从源代码安装:

  1. 克隆此存储库:
   git clone https://github.com/GongRzhe/terminal-controller-mcp.git
   cd terminal-controller-mcp
  1. 运行安装脚本:
   python setup_mcp.py

客户端配置

克劳德桌面

有两种方法可以配置Claude Desktop以使用终端控制器:

选项1:使用UVX(推荐)

将此添加到您的Claude Desktop配置文件中:

"terminal-controller": {
  "command": "uvx",
  "args": ["terminal_controller"]
}

选项2:直接使用Python

"terminal-controller": {
  "command": "python",
  "args": ["-m", "terminal_controller"]
}

配置路径因操作系统而异:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json

光标

对于Cursor,使用与Claude Desktop类似的配置设置。

其他MCP客户端

对于其他客户端,请参阅其关于如何配置外部MCP服务器的文档。

用法

配置后,您可以使用自然语言通过MCP客户端与您的终端进行交互:

  • “运行命令 ls -la 在当前目录中”
  • “导航到我的文档文件夹”
  • “显示下载目录的内容”
  • “显示我最近的命令历史记录”
  • “读取config.json的内容”
  • 用“print(“Hello World”)”更新script.py文件中的第5行
  • “从日志文件中删除第10-15行”
  • “在文本文件的开头插入新行”

api参考

终端控制器提供以下MCP工具:

execute_command

执行终端命令并返回其结果。

参数:

  • command:要执行的命令行命令
  • timeout:命令超时(秒)(默认值:30)

退货:

  • 命令执行的输出,包括stdout、stderr和执行状态

get_command_history

获取最近的命令执行历史记录。

参数:

  • count:要返回的最近命令数(默认值:10)

退货:

  • 格式化命令历史记录

get_current_directory

获取当前工作目录。

退货:

  • 当前工作目录路径

change_directory

更改当前工作目录。

参数:

  • path:要切换到的目录路径

退货:

  • 操作结果信息

list_directory

列出指定目录中的文件和子目录。

参数:

  • path:列表内容的目录路径(默认:当前目录)

退货:

  • 目录内容列表,用目录和文件图标格式化

write_file

使用覆盖或附加选项将内容写入文件。

参数:

  • path:文件的路径
  • content:要写的内容
  • mode:写入模式(“重写”或“附加”,默认:“重写”)

退货:

  • 操作结果信息,包括成功写入验证

read_file

使用可选的行选择从文件中读取内容。

参数:

  • path:文件的路径
  • start_row:要读取的起始行(从0开始,可选)
  • end_row:要读取的结束行(从0开始,包含在内,可选)

退货:

  • 文件内容或选定行

insert_file_content

在文件中的特定行插入内容。

参数:

  • path:文件的路径
  • content:要插入的内容
  • row:要插入的行号(从0开始,可选)
  • rows:要插入的行号列表(从0开始,可选)

退货:

  • 操作结果信息

delete_file_content

从文件中删除特定行的内容。

参数:

  • path:文件的路径
  • row:要删除的行号(从0开始,可选)
  • rows:要删除的行号列表(从0开始,可选)

退货:

  • 操作结果信息

update_file_content

更新文件中特定行的内容。

参数:

  • path:文件的路径
  • content:要放置在指定行的新内容
  • row:要更新的行号(从0开始,可选)
  • rows:要更新的行号列表(从0开始,可选)

退货:

  • 操作结果信息

安全考虑

终端控制器实施了多种安全措施:

  • 防止长时间运行命令的超时控制
  • 危险命令黑名单(rm-rf/,format,mkfs)
  • 正确的错误处理和命令执行隔离
  • 仅访问特别授予的命令和目录

局限性

  • 只有在超时时间内完成的命令才会返回结果
  • 默认情况下,服务器可以访问与运行它的用户相同的文件系统权限
  • 由于终端界面的非交互式特性,一些交互式命令可能无法按预期工作

故障排除

如果您遇到问题:

  1. 检查你的Python版本是否为3.11或更高版本
  2. 验证您的Claude Desktop配置是否正确
  3. 尝试直接运行终端控制器以检查错误:
   python -m terminal_controller
  1. 对于UVX相关问题,请尝试:
   uvx terminal_controller
  1. 查看MCP客户端的日志以查找连接错误

贡献

欢迎投稿!请随时提交拉取请求。

许可证

麻省理工学院

目录标签

目录标签

PythonClaude安全os-automation终端控制本地部署命令执行文件管理跨平台安全操作

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@smithery/cli

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP