本地PC控制工具

通过Claude Code直接控制本地PC的MCP服务器,提供鼠标键盘控制、屏幕截图、持久化bash会话和真实文件系统编辑功能。适用于需要直接操作真实计算机的生产力任务。

  • by Chelu97
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Chelu97/claude-local-control

使用说明

克劳德本地控制

通过Claude代码直接控制您本地真实PC的MCP服务器

通过模型上下文协议(MCP),使用Claude Code控制您的真实电脑——鼠标、键盘、截图、命令行、文件编辑——一切尽在掌控。

🎯 这是什么?

这是一台MCP服务器,允许Claude Code进行控制 您的真实本地电脑直接:

  • 🖱️ 鼠标和键盘控制
  • 📸 每次操作自动截图
  • 🐚 持久化的Bash shell会话
  • 📝 实际文件系统文件编辑
  • 🖥️ 所有操作都在您的真实屏幕上进行

对比 Docker 版本

这个项目是基于claude-desktop-control改编的,但它不是在独立的Docker容器中运行,而是 控制你真实的本地机器。

方面 Docker 版本 本地版本(本项目)
项目 类别 描述
** 显示 Xvfb 虚拟显示
(Xwayland :0) ** 文件
** 安全 隔离
** 用例 安全实验

|

🚀 快速入门

  • 先决条件
  • 带有X11/Xwayland的Ubuntu/Debian Linux
  • Node.js 和 npm
  • Python 3.10+(或 Python 3.10及以上版本)

Claude CLI 命令行接口

# 1. Clone the repository
cd ~/Personal
git clone https://github.com/YOUR_USERNAME/claude-local-control.git
cd claude-local-control

# 2. Run the installer (installs dependencies, creates venv, compiles MCP)
./install.sh

# 3. Add MCP to Claude Code
claude mcp add local-control -- bash ~/Personal/claude-local-control/start-mcp.sh

# 4. Verify installation
claude mcp list
# Should show: local-control: ... - ✓ Connected

# 5. IMPORTANT: Restart Claude Code if it was already running
# (for the MCP to be fully activated)

安装

使用方法

/local

[Your task here]

在Claude Code中,激活本地控制模式: /local 这个(或:那个)

该命令会自动加载适当的上下文以控制您的真实电脑。

🛠️ 可用工具 computer 1.

- 电脑控制

  • **使用鼠标、键盘和截图功能控制您的真实电脑:**屏幕截图
  • 捕捉您的真实屏幕鼠标移动
  • **将鼠标移动到坐标 [x, y]**左键点击 **,**右键点击 **,**中键点击
  • 鼠标点击双击 **,**三击
  • 多次点击左键点击并拖动
  • **从当前位置拖动到 [x, y]**钥匙
  • **按下键/组合键(例如,“回车”,“ctrl+c”)**类型
  • 输入文本滚动
  • 向指定方向滚动指定距离光标位置
  • 获取当前光标位置等一下

等待N秒并截取屏幕截图✨ 关键特性

每个操作都会自动返回一张显示结果的截图。 bash 2.

- 持久性外壳(或持久会话)

  • 在您实际系统上保持持久的Bash会话:
  • 工作目录在命令之间保持不变
  • 维护的环境变量
  • 以您的实际用户身份运行

完全访问您的文件系统 str_replace_editor 3.

- 文件编辑器 在您的设备上编辑文件真实文件系统

  • **:**视图
  • 查看文件或列出目录创造;创建
  • 创建新文件str_replace(在中文中,这通常被理解为“字符串替换”的意思,但直接翻译该英文词汇为中文时,可保持为“str_replace”,因为这是一个特定的编程函数名,不直接对应中文的某个短语)
  • 替换文件中的文本插入
  • 在行号处插入文本撤销编辑

撤销上一次编辑 ⚠️警告

在您的真实系统上,更改是永久性的。

🧠 何时使用什么 computer 使用

  • (MCP 工具) 当:
  • ✅ 你需要与图形用户界面(GUI)应用程序进行交互
  • ✅ 预订酒店,安排住宿,进行在线购物
  • ✅ 需要进行视觉验证
  • ✅ 使用桌面应用程序(Firefox、LibreOffice、计算器等)
  • ✅ 复杂的导航设计,阻挡机器人

✅ 任何需要“看并点击”的操作

  • 在以下情况下使用Claude Code原生工具:WebFetch✅ 网络爬虫/数据提取( WebSearch,
  • )
  • ✅ 代码生成,CSV文件创建,数据处理
  • ✅ 快速信息搜索
  • ✅ 在主机上进行文件操作Read✅ 阅读/分析文件 ( Grep, Glob,

)

  1. 当以下情况时,使用HYBRID策略: 生成内容
  2. 使用原生工具(快速) 转移 ~/claude-local-workspace/
  3. 通过工作区 格式/呈现 computer 和;与;带有

在桌面应用程序中

⚡ 效率提升策略

脚本 > 点击❌ 差

在Excel中通过逐一点击创建1000行(耗时10小时)✅ 好

# Generate CSV with Python (30 seconds)
bash({ command: `python3 << 'EOF'
import csv
data = [['Product', 'Price', 'Stock']]
for i in range(1000):
    data.append([f'Item {i}', 100 + i, 50 + i])
with open('$HOME/claude-local-workspace/data.csv', 'w') as f:
    csv.writer(f).writerows(data)
EOF` })

# Import in LibreOffice (2 minutes)
computer({ action: 'screenshot' })
# Open Calc, File > Open, select CSV

:

文件传输工作区 ~/claude-local-workspace/ 使用

在原生工具和桌面应用程序之间传输文件。

claude-local-control/
├── tools/                    # Python MCP tools
│   ├── computer.py          # Screen control (adapted for local)
│   ├── bash.py              # Persistent shell
│   └── edit.py              # File editor
├── mcp-server/              # Node.js MCP server
│   ├── src/
│   │   ├── index.ts         # MCP server entry point
│   │   ├── bridge.ts        # Python-Node.js bridge (adapted)
│   │   └── tools/           # Tool definitions
│   └── package.json
├── .claude/
│   └── commands/
│       └── local.md         # /local slash command
├── install.sh               # Installation script
├── start-mcp.sh            # MCP launcher (created by install.sh)
├── CLAUDE.md               # Complete usage guide
├── EXAMPLES.md             # Practical examples
└── README.md               # This file

📁 项目结构

🔒 安全考量 **⚠️(注意/警告)**重要警告

: 这个MCP具有全面访问您的真实电脑

  • :
  • 可以以您的用户身份执行任何命令
  • 可以读取/修改您有权访问的任何文件
  • 可以在真实屏幕上控制鼠标/键盘

能看到你所看到的一切

仅在你信任Claude执行的任务中使用此功能。

与Docker版本不同,这里没有隔离或沙盒机制。所有操作都会直接在您的真实系统上执行。

  • 📊 系统信息显示 $DISPLAY 自动检测来自 :0环境(通常
  • **)**决心 xrandr 通过自动检测
  • **(备用分辨率:1920x1080)**工作区 ~/claude-local-workspace/ :
  • **(用于文件传输)**屏幕截图 /tmp/claude-local-outputs/
  • **:**Python 虚拟环境(venv) ~/.claude-local-venv/
  • **:**用户

您实际的系统用户

  • **📚 文档**CLAUDE.md(文件名,可译为“克劳德文档”或保持原样,具体根据上下文决定是否翻译文件名)
  • **使用该系统的完整指南**EXAMPLES.md 翻译为中文是:“示例.md”(注:.md 通常表示这是Markdown格式的文件,但在此处作为文件名的一部分,直接翻译为“示例”即可,不特别指出其格式)
  • 包含正确/错误策略的详细示例.claude/commands/local.md(文件路径,直译为“claude/命令/本地.md”,但具体含义需结合上下文理解,通常表示这是某个名为“claude”的项目或系统中关于本地命令的说明文件) /local :

命令文档

🎓 哲学

“采用智能策略优化速度,但务必始终完成100%的请求工作。Claude Sonnet 4.5可连续工作长达7小时——没有理由留下未完成的工作。”

  • 基本原则: 🧠 表示“大脑”或“思考”的意思,但在此作为单独的符号使用时,通常不直接翻译为具体的文字,而是根据上下文理解为与“思维”、“智慧”或“大脑”相关的概念。如果需要一个简单的对应词,可以理解为“智慧”或“思考”。不过,在实际应用中,这个符号往往保留其原样,以传达一种直观的感觉或暗示。 超薄(或极简设计)
  • 在行动之前——选择最佳策略 📸(相机或拍照的含义,可单独用作表情符号表示拍照或相机) 总是开始
  • 附上截图以查看当前状态 ⚡(闪电符号,无特定含义,常用于表示速度、能量或警告) 优化 但总是 完成
  • 全部任务 🎯(瞄准目标) 100%完成
  • - 永远不要放弃部分已完成的工作 🔒(锁形符号,常用于表示安全、保密或锁定状态) 小心

- 这是你的真电脑

🛠️ 开发

cd mcp-server
npm install
npm run build

构建MCP服务器

测试

# In a new Claude Code session
/local

# Test 1: Screenshot
computer({ action: "screenshot" })

# Test 2: Mouse movement
computer({ action: "mouse_move", coordinate: [960, 540] })

# Test 3: Bash
bash({ command: "pwd && whoami" })

# Test 4: File editor
str_replace_editor({ command: "view", path: "/home/chelu/.bashrc" })

安装完成后,您可以测试每个工具:

🤝 贡献

这是一个对Anthropic计算机使用演示的个人改编版本。欢迎随意进行分支开发并根据自己的需求进行调整。

📄 许可证

基于Anthropic的计算机使用演示,已适配本地系统控制。

⚠️ 免责声明


这个工具允许Claude Code直接控制您的真实计算机。请负责任地使用它,仅用于您信任的任务。作者不对任何意外操作或系统修改负责。

/local

What should I do on your computer?