Token导航 LogoToken导航TokenDH.com
Hyprland MCP logo
运维云端stdio官方级别未说明来源级核验

Hyprland MCP

MCP Server

Hyprland-mcp是一个用于Hyprland桌面的自动化服务,提供屏幕捕捉、OCR、鼠标键盘控制、窗口管理等功能,适用于AI助手与桌面交互。

工具数

27

提示词数

0

GitHub Stars

3

资源数

0
PythonClaude云端部署Claude

安装说明

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

作者 / 组织

alderban107

提供方

alderban107

最后核验

2026/5/17 20:23

运行时

Python

快速接入

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

命令预览

python3 -m venv .venv

详细介绍

Hyperland-MCP

用于Hyprland桌面自动化的MCP服务器。让AI助手能够看到屏幕、控制鼠标和键盘、管理窗口以及与桌面交互——所有这些都是通过Hyprland的原生Wayland工具实现的。

专为 克劳德代码,但适用于任何MCP客户端。

它做什么

  • 截图 --捕获整个桌面、特定显示器、窗口或区域。图像会自动调整大小并进行JPEG压缩,以适应MCP输出限制。每个屏幕截图都包含一个坐标映射,因此AI知道如何将图像位置转换为屏幕坐标。
  • 光学字符识别 --使用Tesseract在屏幕上查找并单击文本。 click_text("Send") 捕获屏幕截图、运行OCR、查找文本并单击它——所有这些都在一个工具调用中完成。自动将范围调整到活动窗口,以获得更好的准确性。
  • 老鼠 --移动、单击、滚动和拖动。定位使用Hyprland的本地 movecursor (像素精确,无鼠标加速问题)。
  • 键盘 --键入文本或发送组合键。快捷方式可以针对特定窗口,而无需对其进行聚焦。
  • 窗口管理 --列出、聚焦、关闭、移动、调整大小、全屏和浮动窗口。
  • 工作区和监视器 --列出工作区,在它们之间切换,查询监视器布局和光标位置。
  • 剪贴板 --读写剪贴板文本。
  • 应用程序启动 --通过Hyprland启动应用程序(分离式,无外壳扩展)。

需求

  • Hyprland (地面合成器)
  • Python 3.10+
  • 系统工具: grim, wtype, ydotool, wl-clipboard, tesseract

安装脚本会检查所有这些内容,并提供安装任何缺失的内容。

安装

curl -sSL https://raw.githubusercontent.com/alderban107/hyprland-mcp/main/install.sh | bash

安装脚本会自动处理所有内容:

  1. 检测您的包管理器(pacman、apt、dnf、zypper、xbps、emerge、nix)
  2. 安装任何缺失的系统依赖项
  3. 通过pipx安装hyprland mcp
  4. 使用Claude Code注册MCP服务器

安装后重新启动Claude Code。

证实 claude mcp list --你应该看看 hyprland: ✓ Connected.

Manual installation

pipx install git+https://github.com/alderban107/hyprland-mcp.git
claude mcp add --transport stdio --scope user hyprland -- hyprland-mcp

或者从本地克隆:

git clone https://github.com/alderban107/hyprland-mcp.git
cd hyprland-mcp
python3 -m venv .venv
.venv/bin/pip install -e .
claude mcp add --transport stdio --scope user hyprland -- /path/to/hyprland-mcp/.venv/bin/hyprland-mcp

工具(27)

屏幕截图和OCR

工具说明
screenshot捕获桌面、显示器、窗口或区域。返回内联JPEG+坐标映射,用于将图像位置转换为屏幕坐标。
screenshot_with_ocr一次通话中的截图+OCR。返回图像和所有检测到的文本。自动调整活动窗口的范围。
click_text通过OCR在屏幕上查找文本并单击它。一个工具调用将替换屏幕截图→ 解析→ 点击。自动调整活动窗口的范围。
find_text_on_screen通过OCR在屏幕上查找文本。返回所有比赛的屏幕坐标,准备就绪 mouse_click.
type_into通过占位符文本查找文本输入字段,单击它,键入,然后按Enter键(可选)。

老鼠

工具说明
mouse_move将光标移动到绝对坐标(通过Hyprland的像素精度) movecursor)
mouse_click点击位置或当前位置(左/右/中,单/双)
mouse_scroll在位置或当前位置向上/向下滚动滚轮
mouse_drag单击并从一个位置拖动到另一个位置

键盘

工具说明
type_text键入文本作为键盘输入(通过 wtype)
key_press按以下组合键 ctrl+c, alt+F4 (通过Hyprland sendshortcut)
send_shortcut发送带有显式修饰符和键的快捷方式,可选择针对特定窗口

窗口管理

工具说明
list_windows列出所有窗口,包括类别、标题、大小、位置(可按工作区/监视器筛选)
get_active_window获取当前聚焦窗口的详细信息
focus_window按类别或标题选择器聚焦窗口
close_window关闭窗口(WM_Close——应用程序可以显示保存对话框)
move_window将窗口移动到像素位置或工作区
resize_window将窗口调整为精确的像素尺寸
toggle_fullscreen切换全屏或最大化模式
toggle_floating切换浮动模式

工作区和监视器

工具说明
list_monitors列出连接的监视器,包括分辨率、位置和刷新率
list_workspaces列出具有窗口数的活动工作区
switch_workspace按名称或编号切换到工作区
get_cursor_position获取绝对布局坐标中的当前光标位置

剪贴板和系统

工具说明
clipboard_read读取当前剪贴板文本
clipboard_write将文本写入剪贴板
launch_app启动应用程序(分离,通过 hyprctl dispatch exec)

运作原理

屏幕截图坐标映射

多显示器设置和图像缩放使坐标转换变得棘手。每 screenshot 调用返回图像旁边的坐标映射:

Coordinate mapping: This 941x1030 image covers screen region
starting at absolute (5447, 38), native size 941x1030.
To convert image coordinates to absolute screen coordinates:
  screen_x = image_x * 1.00 + 5447
  screen_y = image_y * 1.00 + 38

这可以防止人工智能直接使用图像像素位置作为屏幕坐标——这是多显示器设置中的一种常见故障模式,在这种设置中,显示器在布局中的位置不同。

OCR和深色主题

Tesseract OCR是为白纸上的黑色文本而设计的。大多数桌面应用程序使用深色主题,这会降低OCR的准确性。hyprland mcp自动检测暗背景屏幕截图,并在运行OCR之前将其反转,从而显著提高了文本检测能力。

默认情况下,OCR工具自动将范围调整到活动窗口(可配置为 scope="full" 整个桌面)。更小的捕获区域=更好的OCR精度=更可靠的坐标映射。

鼠标定位

鼠标移动使用 hyprctl dispatch movecursor --Hyprland的原生IPC命令,将光标设置为精确的像素坐标。没有鼠标加速,没有相对移动,没有坐标漂移。ydotool仅用于点击和滚动事件(不涉及定位)。

屏幕截图大小

屏幕截图会自动缩放以适应MCP输出限制。默认值:最大宽度1024px,JPEG质量60。2560x1440的桌面大小约为80-100KB,足够在对话中进行内联显示。

要阅读精细文本或UI详细信息,请使用 region 以全分辨率捕获较小区域或捕获特定区域的参数 window.

项目结构

hyprland_mcp/
  server.py       # FastMCP instance, all tool definitions, entry point
  hyprctl.py      # Async wrappers for hyprctl IPC (query, dispatch, batch)
  screenshot.py   # grim capture + Pillow resize/compress + coordinate mapping
  input.py        # Mouse (movecursor + ydotool) and keyboard (wtype + sendshortcut)
  clipboard.py    # wl-copy / wl-paste wrappers
  ocr.py          # Tesseract OCR with dark-theme preprocessing
  errors.py       # Exception hierarchy + tool availability checks

安全

  • close_window 发送WM_CLOSE——应用程序可以显示“保存更改?”对话框。没有强制杀伤工具。
  • launch_app 经历 hyprctl dispatch exec --与MCP工艺分离,没有外壳膨胀。
  • 没有文件系统访问权限——MCP可以看到屏幕并与之交互,但不能读取或写入文件。
  • 缺少的系统工具会产生明确的错误消息,列出要安装的内容。

许可证

麻省理工学院

目录标签

目录标签

PythonClaude云端部署桌面自动化本地部署AI交互屏幕捕捉OCR窗口管理

支持客户端

Claude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

27

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP