World Monitor
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 97 tools.
Turn the real Windows screen into a numbered element table your AI agent can operate.
选择你使用的 AI 应用,然后复制设置。
通过 3/3 项检查 · 在你的电脑上运行
第一步:你用哪个 AI?
选择你用的应用,步骤会显示在下方。
ChatGPT 暂时无法连接 XuLan ScreenPilot
开发者尚未在 MCP 注册表中填写安装方式
B · 其他 类中能连接 ChatGPT 的其他服务器
从同类中使用较多的里挑选,仅限用地址即可连接、无需密钥的
Claude Code 暂时无法连接 XuLan ScreenPilot
开发者尚未在 MCP 注册表中填写安装方式
Cursor 暂时无法连接 XuLan ScreenPilot
开发者尚未在 MCP 注册表中填写安装方式
VS Code 暂时无法连接 XuLan ScreenPilot
开发者尚未在 MCP 注册表中填写安装方式
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月16日
注册名称已通过 GitHub 账户 dahuam 验证,该账户拥有此仓库
代码最后更新于昨天
使用 Apache-2.0
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
提问、分享技巧或报告无法使用。按“有帮助”数量排序。
还没有评价
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于昨天,最新版本(1.0.0)于12天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。
同一分类中有:World Monitor, openstatus, Oh My Posh Validator, Strata, Jitsu
同一分类、其他作者、命令已通过检查。官方的排在前面,再按星标排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 97 tools.
Manage monitors, status pages, incidents and maintenances in your openstatus workspace.
Validate oh-my-posh configurations and segment snippets against the official schema.
MCP server for progressive tool usage at any scale (see https://klavis.ai)
Manage Jitsu data pipelines: destinations, streams, connections, functions, live events.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Turn the real Windows screen into a structured element table your AI agent can operate.
XuLan ScreenPilot solves the two classic pain points of GUI automation for AI agents — *not seeing the elements* and *missing the click* — by giving the agent a numbered element table instead of a screenshot to guess coordinates from. The agent scans once, reads the table, and drives the screen by element id (click / type), in a closed loop.
Pure local CPU. No cloud model, no GPU, no API key.
compact=false restores the raw table; meta.compact_removed reports what was filtered).meta.privacy_skip); an explicit book=true overrides.meta.errors.uia_stats.ok=false: action_executed distinguishes "the click was sent but no evidence appeared" from "the action itself failed", so risky buttons are not blindly retried.crop_screen / crop_xy accept force_refresh to bypass the 60 s shot cache when verifying a screen right after an action.Three engines run in parallel and fuse into one element table (priority UIA > OCR > visual):
| Engine | Source | Covers |
|---|---|---|
uia | Windows UIA accessibility tree | Native apps, browsers (incl. web a11y tree) — precise and fast |
ocr | RapidOCR (onnxruntime, CPU) | Games and custom-drawn UI with no control tree; full-screen text fallback |
visual | OpenCV connected components + shape detectors | Icon candidates; dedicated channels for checkboxes / radio dots / sliders / close buttons |
Fusion dedupes by center-containment or IoU ≥ 0.3, numbers elements top-to-bottom / left-to-right, and produces:
elements.json — the element table cache (queried by id for click/type)annotated_scan.png — annotated screenshot (red = UIA, blue = OCR, green = visual, id printed on each box)On top of the table:
meta.tracker reports kept/new/lost).PrintWindow (no need to raise it).precise=True restores pixel accuracy.hit_window), and can refuse clicks on occluded targets (top_must).expect {find, mode: appear|disappear} makes a click "successful" only when the business evidence shows up on screen.cleanup_windows closes them at task end (WM_CLOSE only, six-gate safety chain, no taskkill); a crashed session leaves a residual report that the next session auto-surfaces.Requirements: Windows 10/11, Python 3.11+, CPU only.
git clone <repo-url> screenpilot && cd screenpilot
pip install uiautomation rapidocr-onnxruntime onnxruntime opencv-python numpy pillow pyperclip pyautogui mcp python screenpilot.py scan :: full-screen scan, prints the element table
Tested on Python 3.13. The optional element-book vector channel and the benchmark matcher additionally need tokenizers and the SigLIP int8 ONNX weights under SCREENPILOT_MODELS_DIR.
Optional: the semantic matcher and the element-book vector channel use SigLIP int8 ONNX models. Set SCREENPILOT_MODELS_DIR to a local folder holding the model directories (see README.zh-CN.md §两级视觉与文本通道). Datasets for the public benchmark go under SCREENPILOT_DATASETS_DIR.
# MCP tools (stdio server) or the CLI expose the same verbs:
scan_screen(window="记事本") # 1. scan -> numbered element table click_element(element_id=7) # 2. act by id (UIA control-level when possible) type_text(element_id=3, text="hi") # 3. type into an edit field click_safe(element_id=12, expect={"find": "设置", "mode": "appear"}) # 4. act only when evidence shows watch_burst(window="记事本", seconds=3) # 5. catch transient feedback frames
MCP config (e.g. Claude Desktop / ZCode):
{"mcpServers": {"screenpilot": {
"command": "python", "args": [" /screenpilot/mcp_server.py"], "env": {"PYTHONIOENCODING": "utf-8"} }}}
Public GUI-grounding benchmarks, frozen matcher, official scoring. Pure CPU on a desktop with a GTX 1070 Ti (GPU unused):
| Benchmark | Scope | acc | oracle* | Latency |
|---|---|---|---|---|
| ScreenSpot-v2 | full 1,272 questions | 49.61% | 88.36% | 1.94 s/question |
| ScreenSpot-Pro | Windows, stratified 200 questions (4K-heavy) | 18.00% | 78.5% | 3.87 s/question |
\* oracle = the GT target has a recognizable candidate in the element table — an upper bound assuming a perfect matcher. It separates the *recognition engine's* account from the *matcher's* account: on ScreenSpot-Pro the gap is almost entirely matcher-side (match_error 88% of misses), which is where the roadmap points. The acc numbers are with a frozen heuristic matcher standing in for the agent; in real use the agent reads the table itself, so live experience tracks the oracle line more than acc. We report both, no cherry-picking.
Reproduce: python bench/public_sspot.py --dataset v2 / --dataset pro (datasets not included; see the docstring for the two HF sources).
20 tools over stdio (scan_screen, scan_image, click_element, click_safe, click_xy, type_text, press_key, scroll_screen, snap_screen, crop_screen, crop_xy, book_find, watch_burst, verify_typing, probe_hang, split_static_dynamic, window_stack, activate_window, register_window, cleanup_windows). scan_image runs the same engines offline on a static file; book_find queries the persistent element book (two-level: text match + SigLIP vector search) so recurrent UIs are found without a full rescan.
Session cleanup (register-then-clean, sp/cleanup.py): the server opens a session ledger on start; register_window logs windows the agent launched itself, and the six state-changing tools auto-log windows newly opened by an action (advisory only). At task end, cleanup_windows closes ledger windows gently — WM_CLOSE only, no taskkill anywhere — behind a six-gate safety chain: identity re-check (hwnd+pid), permanent whitelist (explorer / task manager / own process), own-session ledger only, cross-session windows report-only, dirty-content protection (unsaved work is never closed), and survivor re-check that reports instead of escalating. If a session dies, a residual report is written and the next session's first tool call surfaces it automatically.
Full docs (in Chinese, with internals, known limitations, and the test-suite map): README.zh-CN.md.
Working system in daily use as the studio's screen channel. Known gaps are documented, not hidden: dark-theme professional apps (deep-background small text) hurt OCR recall, 4K toolbar icons stress the matcher, and the Pro benchmark score is capped by the frozen matcher — see README.zh-CN.md §已知限制与坑.
Open core: the core engine in this repository is released under the Apache License 2.0. Commercial value-added integrations (closed source) are not part of this repository.
Built on RapidOCR, uiautomation, OpenCV, and onnxruntime.