
uvx设置MCP)注意: 第一次运行uvx computer-control-mcp@latest时会下载Python依赖项(约70MB),这可能需要一些时间。建议在作为MCP使用前,在终端中先运行此命令。后续运行将是即时的。
{
"mcpServers": {
"computer-control-mcp": {
"command": "uvx",
"args": ["computer-control-mcp@latest"]
}
}
}
或者使用pip全局安装:
pip install computer-control-mcp
然后运行服务器:
computer-control-mcp # 代替uvx computer-control-mcp,这样可以使用最新版本,也可以通过`uv cache clean`清除缓存并再次使用`uvx`来获取最新版本。
click_screen(x: int, y: int): 在指定的屏幕坐标处点击move_mouse(x: int, y: int): 将鼠标光标移动到指定坐标drag_mouse(from_x: int, from_y: int, to_x: int, to_y: int, duration: float = 0.5): 从一个位置拖动鼠标到另一个位置mouse_down(button: str = "left"): 按下鼠标按钮('left', 'right', 'middle')mouse_up(button: str = "left"): 松开鼠标按钮('left', 'right', 'middle')type_text(text: str): 在当前光标位置输入指定文本press_key(key: str): 按下指定的键盘键key_down(key: str): 按住特定的键盘键直到释放key_up(key: str): 释放特定的键盘键press_keys(keys: Union[str, List[Union[str, List[str]]]]): 按下键盘键(支持单个键、序列和组合)take_screenshot(title_pattern: str = None, use_regex: bool = False, threshold: int = 60, scale_percent_for_ocr: int = None, save_to_downloads: bool = False): 捕获屏幕或窗口take_screenshot_with_ocr(title_pattern: str = None, use_regex: bool = False, threshold: int = 10, scale_percent_for_ocr: int = None, save_to_downloads: bool = False): 使用OCR从屏幕或窗口中提取并返回带有坐标的文本get_screen_size(): 获取当前屏幕分辨率list_windows(): 列出所有打开的窗口activate_window(title_pattern: str, use_regex: bool = False, threshold: int = 60): 将指定的窗口带到前台wait_milliseconds(milliseconds: int): 等待指定的毫秒数# 克隆仓库
git clone https://github.com/AB498/computer-control-mcp.git
cd computer-control-mcp
# 安装在开发模式下
pip install -e .
# 启动服务器
python -m computer_control_mcp.core
# -- 或者 --
# 在`pip install hatch`后构建
hatch build
# Windows
$latest = Get-ChildItem .\dist\*.whl | Sort-Object LastWriteTime -Descending | Select-Object -First 1
pip install $latest.FullName --upgrade
# 非Windows
pip install dist/*.whl --upgrade
# 运行
computer-control-mcp
python -m pytest
详见API参考,了解可用函数和类的详细信息。
MIT