终端控制器MCP添加福利群:解决AI开发者的「MCP实战痛点」这是一个基于模型上下文协议(MCP)的服务器,通过标准化接口实现安全的终端命令执行、目录导航和文件系统操作。
要自动通过Smithery安装Claude Desktop的终端控制器:
npx -y @smithery/cli install @GongRzhe/terminal-controller-mcp --client claude
直接从PyPI安装包:
pip install terminal-controller
或使用UV安装:
uv pip install terminal-controller
如果希望从源码安装:
克隆仓库:
git clone https://github.com/GongRzhe/terminal-controller-mcp.git
cd terminal-controller-mcp

运行安装脚本:
python setup_mcp.py
有两种方式配置Claude Desktop使用终端控制器:
在Claude Desktop配置文件中添加:
"terminal-controller": {
"command": "uvx",
"args": ["terminal_controller"]
}

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

配置路径因操作系统而异:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonCursor的配置设置与Claude Desktop类似。
其他客户端请参考其文档中关于配置外部MCP服务器的说明。
配置完成后,您可以通过MCP客户端使用自然语言与终端交互:
ls -la"终端控制器提供以下MCP工具:
execute_command执行终端命令并返回结果。
参数:
command:要执行的命令行命令timeout:命令超时时间(秒,默认:30)返回:
get_command_history获取最近的命令执行历史。
参数:
count:要返回的最近命令数量(默认:10)返回:
get_current_directory获取当前工作目录。
返回:
change_directory更改当前工作目录。
参数:
path:要切换到的目录路径返回:
list_directory列出指定目录中的文件和子目录。
参数:
path:要列出内容的目录路径(默认:当前目录)返回:
write_file以覆盖或追加模式写入文件内容。
参数:
path:文件路径content:要写入的内容mode:写入模式('overwrite'或'append',默认:'overwrite')返回:
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开始,可选)返回:
终端控制器实现了多项安全措施:
如果遇到问题:
python -m terminal_controller
uvx terminal_controller
欢迎贡献!请随时提交Pull Request。
MIT