Screen Agent

Screen Agent

A Windows desktop automation MCP server that enables UI recognition through OCR, UIA controls, and multi-point color matching. It allows agents to interact with desktop applications via actions like clicking and typing while using a learning system to track and improve operation success.

Category
访问服务器

README

Screen Agent

Windows 桌面自动化 MCP 服务器,支持 OCR、UIA 控件和多点颜色匹配的 UI 识别。

功能特性

  • 多种 UI 识别方式

    • OCR 文字识别(RapidOCR)
    • Windows UIA 控件识别
    • 多点颜色特征匹配
  • 智能操作

    • 窗口绑定与自动聚焦
    • 弹窗检测与处理
    • 操作验证与错误恢复
  • 学习与进化

    • 技能学习系统
    • 操作成功率追踪
    • 向量数据库存储经验

安装

环境要求

  • Windows 10/11
  • Python 3.12+
  • Ollama(可选,用于视觉识别)

安装步骤

# 克隆仓库
git clone https://github.com/lqszhsp/screen-agent.git
cd screen-agent

# 创建虚拟环境
python -m venv venv
venv\Scripts\activate

# 安装依赖
pip install -r requirements.txt

配置

  1. 复制配置模板:
copy config\settings.example.py config\settings.py
  1. 编辑 config/settings.py 设置 API 密钥(如需使用云端视觉 API)

使用方法

作为 MCP 服务器

在 Claude Desktop 或其他 MCP 客户端中配置:

{
  "mcpServers": {
    "screen-agent": {
      "command": "python",
      "args": ["C:\\path\\to\\screen_agent\\mcp_server.py"]
    }
  }
}

可用工具

工具 说明
screen_get_layout 绑定窗口,获取布局信息
screen_click 点击屏幕元素
screen_input_text 输入文字
screen_scroll 滚动屏幕
screen_hotkey 按下快捷键
screen_capture 截图并识别元素
screen_wait 等待指定时间
screen_explore 自动探索界面
screen_detect_ui 检测 UI 元素位置
screen_scan_ui_elements 扫描并生成图标特征
screen_ask_user_locate 请求用户帮助定位
screen_learn_success 记录成功操作
screen_query_knowledge 查询已学习知识

点击模式

# OCR 模式(默认)- 通过文字定位
screen_click(target="设置", mode="ocr")

# UIA 模式 - 通过控件定位
screen_click(target="确定", mode="ui", control_type="Button")

# 多点颜色模式 - 通过颜色特征定位
screen_click(mode="multipoint", features={"0|0": "#07c160", "10|10": "#ffffff"})

项目结构

screen_agent/
├── mcp_server.py          # MCP 服务器入口
├── actions/               # 操作模块
│   ├── click.py          # 点击操作
│   ├── input_text.py     # 文字输入
│   ├── scroll.py         # 滚动操作
│   └── ...
├── core/                  # 核心模块
│   ├── perception.py     # OCR 感知
│   ├── window_manager.py # 窗口管理
│   ├── evolution.py      # 进化机制
│   └── ...
├── app_layouts/           # 程序布局文件
│   ├── _guidelines.md    # 操作手册
│   ├── _template.md      # 布局模板
│   ├── 微信.md           # 微信布局
│   └── ...
└── config/               # 配置文件
    └── settings.py

布局文件

每个程序可以有专属的布局文件(app_layouts/{程序名}.md),包含:

  • 窗口结构和区域定义
  • 常用元素位置
  • 操作规范和限制
  • 快捷键列表

参考 app_layouts/_template.md 创建新的布局文件。

技术文档

许可证

MIT License

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选