Token导航 LogoToken导航

MCP Server · AI代理

Universal MCP

一个强大的MCP服务器,允许LLMs查看和与Windows桌面交互,提供屏幕捕获、UI元素检测和输入控制功能。

stdio官方级别未说明来源级核验工具 21
PythonVS CodeAI代理

快速开始

作者 / 组织
hmassareli
提供方
hmassareli
运行时
Python

工具数量

21

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Universal MCP 属于AI代理类 MCP Server,公开资料标注 21 个工具,通过stdio 本地进程接入,适配 VS Code,有可以直接复制的安装命令;接入前先确认权限范围。

分类

AI代理

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python -m venv .venv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 21 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

MCP桌面可视化

🖥️ 通过MCP控制和了解您的Windows桌面

一个强大的MCP(模型上下文协议)服务器,允许LLM查看您的Windows桌面并与之交互。它捕获屏幕,检测UI元素(按钮、输入、文本),并提供鼠标和键盘控制工具。

✨ 特性

  • 增量屏幕截图:只处理更改的区域,大大减少令牌使用
  • UI元素检测:自动检测按钮、输入、文本、复选框等
  • OCR文本提取:使用Tesseract OCR从屏幕读取文本
  • 视觉状态缓存:维护“虚拟桌面DOM”以实现高效查询
  • 鼠标控制:单击、双击、右键单击、拖动、滚动、悬停
  • 键盘控制:键入文本(包括Unicode)、按键、热键
  • 窗口管理:列出、查找和跟踪窗口

🚀 快速开始

先决条件

  1. Python 3.10+ - 下载
  2. 泰瑟光学字符识别 (可选,用于文本识别)- Windows版下载

安装

运行自动安装脚本:

# Clone or download the project
cd universal-mcp

# Run setup (creates venv, installs dependencies, configures VS Code)
.\setup.ps1

这将:

  • 创建虚拟环境(.venv)
  • 安装所有依赖项
  • 检查/安装Tesseract OCR
  • 创建VS代码配置(.vscode/mcp.json)
  • 创建默认配置(mcp-desktop-config.json)

手动安装(替代)

如果您更喜欢手动设置:

# Create virtual environment
python -m venv .venv
.venv\Scripts\Activate.ps1

# Install dependencies
pip install -e .

配置VS代码

安装脚本创建 .vscode/mcp.json 自动。如果您进行了手动安装,请手动创建:

{
  "servers": {
    "desktop-visual": {
      "command": "C:/path/to/universal-mcp/.venv/Scripts/python.exe",
      "args": ["-m", "mcp_desktop_visual.server"]
    }
  }
}

或添加到您的全球VS代码 settings.json:

{
  "mcp": {
    "servers": {
      "desktop-visual": {
        "command": "python",
        "args": ["-m", "mcp_desktop_visual.server"],
        "cwd": "C:/path/to/universal-mcp"
      }
    }
  }
}

📚 可用工具

屏幕状态工具

工具说明
screen_capture捕获屏幕并获取自上次捕获以来的更改
screen_state获取当前缓存的屏幕状态(所有元素)
screen_query按标签、类型或窗口查询元素
find_element通过ID或标签查找特定元素
element_at_position在特定坐标处获取元素

鼠标工具

工具说明
mouse_click点击目标(元素ID、标签或坐标)
mouse_move将鼠标移动到目标
mouse_drag从一个位置拖动到另一个位置
mouse_scroll在位置上下滚动
mouse_position获取当前光标位置

键盘工具

工具说明
keyboard_type在当前位置键入文本
keyboard_type_in单击元素并键入文本
keyboard_press按一个键
keyboard_hotkey按组合键(例如Ctrl+C)

窗口工具

工具说明
window_list列出所有可见窗口
window_find按标题查找窗口
window_active获取活动窗口信息
window_activate按标题激活窗口

实用工具

工具说明
wait_for_element等待元素出现
wait_for_change等待任何屏幕更改
engine_stats获取发动机统计信息

🎯 使用示例

示例:单击按钮

// Find and click a button by label
{ "tool": "mouse_click", "target": "Save" }

// Or by coordinates
{ "tool": "mouse_click", "target": [500, 300] }

示例:填写表格

// Type in an input field
{ "tool": "keyboard_type_in", "target": "Username", "text": "myuser" }

// Press Tab to move to next field
{ "tool": "keyboard_press", "key": "tab" }

// Type password
{ "tool": "keyboard_type", "text": "mypassword" }

// Click submit
{ "tool": "mouse_click", "target": "Submit" }

示例:使用键盘快捷键

// Copy (Ctrl+C)
{ "tool": "keyboard_hotkey", "keys": ["ctrl", "c"] }

// Save (Ctrl+S)
{ "tool": "keyboard_hotkey", "keys": ["ctrl", "s"] }

// Close window (Alt+F4)
{ "tool": "keyboard_hotkey", "keys": ["alt", "f4"] }

示例:窗口管理

// List all windows
{ "tool": "window_list" }

// Find a specific window
{ "tool": "window_find", "title": "Chrome" }

// Activate a window
{ "tool": "window_activate", "title": "VS Code" }

// Get active window info
{ "tool": "window_active" }

示例:查询屏幕状态

// Get all buttons
{ "tool": "screen_query", "element_type": "button" }

// Find elements by text
{ "tool": "screen_query", "label": "Settings" }

// Get incremental changes
{ "tool": "screen_capture" }

📁 例子

这 examples/ 文件夹包含演示常见用例的示例脚本:

  • basic_usage.py -基本屏幕截图和元素检测
  • form_filling.py -通过键盘输入自动填写表单
  • screen_monitoring.py -连续屏幕监控和变化检测

举个例子:

# Activate virtual environment
.venv\Scripts\Activate.ps1

# Run basic usage example
python examples/basic_usage.py

⚙️ 配置

创建 mcp-desktop-config.json 在您的项目或主目录中:

{
  "capture": {
    "diff_threshold": 30,
    "min_region_area": 100,
    "capture_interval": 0.5
  },
  "ocr": {
    "tesseract_path": "C:/Program Files/Tesseract-OCR/tesseract.exe",
    "language": "eng",
    "confidence_threshold": 60
  },
  "input": {
    "click_delay": 0.1,
    "typing_delay": 0.02,
    "failsafe": true
  },
  "cache": {
    "max_elements": 1000,
    "max_history": 10
  }
}

🔧 建筑

┌─────────────────────────────────────────────────────────────┐
│                     MCP Server (stdio)                       │
├─────────────────────────────────────────────────────────────┤
│                    Desktop Visual Engine                     │
├─────────────┬──────────────┬──────────────┬────────────────┤
│   Screen    │   Element    │    Input     │   Visual State │
│   Capture   │   Detector   │  Controller  │     Cache      │
│ (MSS/OpenCV)│  (OCR/CV)    │ (PyAutoGUI)  │ (Virtual DOM)  │
└─────────────┴──────────────┴──────────────┴────────────────┘

增量处理流程

  1. 捕捉:截图
  2. 差异:与前一帧进行比较,查找更改的区域
  3. 检测:仅在更改的区域上运行OCR/元素检测
  4. 缓存:用新元素更新虚拟DOM
  5. 返回:将JSON差异发送到LLM(只发送更改的内容!)

与每次全屏分析相比,这种方法通常将处理量减少80-95%。

🧪 测试

运行测试套件:

# Activate virtual environment
.venv\Scripts\Activate.ps1

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Or run specific test files
python test_mcp.py

\> Nota: a integração via Chrome DevTools Protocol (CDP) foi removida. Para automação dentro do navegador, use a extensão em `browser_extension/`.

🐛 故障排除

未找到Tesseract

如果OCR不起作用,请确保Tesseract已安装且可访问:

# Test Tesseract
tesseract --version

# Or specify path in config
{
  "ocr": {
    "tesseract_path": "C:/Program Files/Tesseract-OCR/tesseract.exe"
  }
}

权限问题

在某些系统上,您可能需要以管理员身份运行VS Code,以便输入控制正常工作。

屏幕截图问题

确保没有屏幕录制或DRM保护处于活动状态,因为这些可能会阻止屏幕截图。

📝 许可证

MIT许可证-请参阅 许可证 了解详情。

🤝 贡献

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

工具与能力

工具数量

21

资源数量

0

提示词数量

0

能力标签

桌面自动化Python本地部署UI元素检测屏幕捕获输入控制LLM集成

支持客户端

VS Code

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 工具数量 21 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 已经在用 VS Code 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Universal MCP

MCP World · 本页

21stdio有1 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Universal MCP 怎么安装?

公开资料给出的安装命令是 python -m venv .venv,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Universal MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Universal MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Universal MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Universal MCP 支持哪些客户端?

公开资料标注支持 VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP