← Back to search

@vision-mcp/server

haruhiyuki Scanned 9d ago

Vision-MCP MCP Server:暴露 capsule.* / vision_map.* tools 与 vision-mcp:// resources(stdio transport)

npm
C
66.1 / 100

Versions

0.8.0latest
Jul 13, 2026
0.7.0
Jul 4, 2026
0.6.0
Jun 11, 2026
0.5.0
May 28, 2026
0.4.1
May 28, 2026
+ show 4 moreshow less
0.2.1
May 28, 2026
0.2.0
May 28, 2026
0.1.1
May 28, 2026
0.1.0
May 28, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 31

vision_map.export_trace
annotations: none low

按 session id 过滤;默认返回最近 100 条。

kinds array limit number app_id string session_id string
vision_map.propose_controls
annotations: none low

捕获 frame,运行 builder 自动控件抽取,但不写入 map。

app_id string state_id string
vision_map.commit_state
annotations: none low

调用前应通过 propose_controls 评估候选;本工具会覆盖同名 state。

app_id string state_id string description string
capsule.ensure_display
annotations: none low

按 visual_box.display 在 OS 中创建虚拟显示器;macOS 默认走 fallback 到 real_window/existing_display。

app_id string
capsule.attach_window
annotations: none low

按 visual_box.target_window 寻找窗口;可指定 pick 策略。

pick enum app_id string bundle_id string class_name string title_regex string process_name string
capsule.migrate_window
annotations: none low

将已绑定窗口移动到 capsule display 的 work area。

app_id string display_id string
capsule.restore_window
annotations: none low

释放 capsule 绑定,并将窗口移回原显示器/原状态。

app_id string
capsule.capture
annotations: none low

默认捕获目标窗口;source=display 则捕获整个 capsule 显示器。图像写盘返回 image_path,不内联 base64。

app_id string format enum source enum jpeg_quality number
capsule.validate_geometry
annotations: none low

返回 client size / DPI / scale / 显示器 / foreground 等检查结果。

app_id string
capsule.raise
annotations: none low

macOS 焦点切换是异步的;agent 在 type/key 前可主动调用。

app_id string
vision_map.snapshot
annotations: none low

Agent 探索的核心工具:一次拿到 PNG(默认落盘返回 image_path)、可交互 AX 节点、OCR 文字 token + bbox、

app_id string include_ax boolean include_image boolean max_candidates number
vision_map.click_at
annotations: none low

Agent 看完 snapshot 后直接传 [x, y] norm 触发 click,不需要预先定义 control。

app_id string button enum point_norm tuple click_count number
vision_map.type_text
annotations: none low

在 capsule 目标窗口的当前焦点位置输入文本。支持中文 / Unicode(macOS 走 NSPasteboard,Windows 走 SendInput VK_PACKET 绕过 IME)。

text string app_id string feedback boolean settle_ms number clear_first boolean
vision_map.press_key
annotations: none low

发键盘组合到 capsule 目标窗口(自动 raise)。combo 格式:

combo string app_id string feedback boolean settle_ms number
vision_map.scroll
annotations: none low

在 capsule 客户区 [nx, ny] 位置发滚轮事件。dy 正值=向下滚(屏幕内容上移),与 macOS 一致;一格 ≈ 120(Windows WHEEL_DELTA)。

dx_px number dy_px number app_id string feedback boolean settle_ms number point_norm tuple
vision_map.list_apps
annotations: none low

扫描 apps 根目录下所有包含 vision-mcp.yaml 的子目录,每个 app 返回

app_id string
vision_map.list_workflows
annotations: none low

返回每个 workflow 的 id/description/inputs/timeout_ms/steps_count/destructive。

app_id string
vision_map.describe_workflow
annotations: none low

返回 steps 列表,每步含 action_id + control description + risk_level +

app_id string workflow_id string
vision_map.init
annotations: none low

在 apps_root/<app_id>/vision-mcp.yaml 写入最小骨架。

name string app_id string platform enum width_px number height_px number
vision_map.describe
annotations: none low

比 list_apps 更详细一层:含 app description / 每个 state 的 id+kind+description /

app_id string
vision_map.detect_state
annotations: none low

捕获一帧 → 分析 OCR/Accessibility/visual hash → 在 map.states 中查找最佳匹配。

app_id string
vision_map.list_actions
annotations: none low

可选 state_id 过滤;返回包括默认动作和按 action_type 命名的变种。

app_id string state_id string
vision_map.describe_action
annotations: none low

返回 action_id 对应的 control 完整定义:role / action_types / locator_priority /

app_id string action_id string
vision_map.perform_action
annotations: none low

完整 runtime 流程:geometry → 审批 → 状态检测 → locator → 输入 → postcondition。

text string combo string dx_px number dy_px number app_id string to_norm tuple wait_ms number action_id string modifiers array click_count number
vision_map.run_workflow
annotations: none low

按 workflow.steps 顺序执行 action,并支持 inputs 模板插值。

app_id string inputs record workflow_id string
vision_map.verify
annotations: none low

运行 detect_state 后对单个 condition 求值。condition schema 同 control.postcondition:

app_id string condition record
vision_map.repair_minimal
annotations: none low

默认尝试到 L3;max_level 可降级。

app_id string max_level number
vision_map.apply_patch
annotations: none low

适用于 agent 提议的修复建议被人类批准后写入。

patch record app_id string
vision_map.add_control
annotations: none low

agent 探索时发现 baseline 缺一个可交互元素时调。

app_id string reason string state_id string
vision_map.commit_workflow
annotations: none low

agent 在没有现成 workflow 时用 perform_action 渐进试错、跑通后调本工具沉淀。

name string type enum notes string app_id string params record required boolean action_id string timeout_ms number description string workflow_id string approval_required boolean
vision_map.harvest_session
annotations: none low

比 commit_workflow 更省事:server 自动用本 session 内此 app 上跑过的(默认只取 succeeded 的)

app_id string timeout_ms number description string workflow_id string

Permissions 4

network medium
Server uses network capabilities via: fetch(), http
filesystem low
Server uses filesystem capabilities via: fs/promises, path
shell high
Server uses shell capabilities via: child_process, spawn(), spawnSync()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 86

low
Tool 'capsule.ensure_display' has no annotations annotation_checker · 100%
low
Tool 'capsule.attach_window' has no annotations annotation_checker · 100%
low
Tool 'capsule.migrate_window' has no annotations annotation_checker · 100%
low
Tool 'capsule.restore_window' has no annotations annotation_checker · 100%
low
Tool 'capsule.capture' has no annotations annotation_checker · 100%
low
Tool 'capsule.validate_geometry' has no annotations annotation_checker · 100%
low
Tool 'capsule.raise' has no annotations annotation_checker · 100%
low
Tool 'vision_map.snapshot' has no annotations annotation_checker · 100%
low
Tool 'vision_map.click_at' has no annotations annotation_checker · 100%
low
Tool 'vision_map.type_text' has no annotations annotation_checker · 100%
low
Tool 'vision_map.press_key' has no annotations annotation_checker · 100%
low
Tool 'vision_map.scroll' has no annotations annotation_checker · 100%
low
Tool 'vision_map.list_apps' has no annotations annotation_checker · 100%
low
Tool 'vision_map.list_workflows' has no annotations annotation_checker · 100%
low
Tool 'vision_map.describe_workflow' has no annotations annotation_checker · 100%
low
Tool 'vision_map.init' has no annotations annotation_checker · 100%
low
Tool 'vision_map.describe' has no annotations annotation_checker · 100%
low
Tool 'vision_map.detect_state' has no annotations annotation_checker · 100%
low
Tool 'vision_map.list_actions' has no annotations annotation_checker · 100%
low
Tool 'vision_map.describe_action' has no annotations annotation_checker · 100%
low
Tool 'vision_map.perform_action' has no annotations annotation_checker · 100%
low
Tool 'vision_map.run_workflow' has no annotations annotation_checker · 100%
low
Tool 'vision_map.verify' has no annotations annotation_checker · 100%
low
Tool 'vision_map.repair_minimal' has no annotations annotation_checker · 100%
low
Tool 'vision_map.apply_patch' has no annotations annotation_checker · 100%
low
Tool 'vision_map.export_trace' has no annotations annotation_checker · 100%
low
Tool 'vision_map.propose_controls' has no annotations annotation_checker · 100%
low
Tool 'vision_map.commit_state' has no annotations annotation_checker · 100%
low
Tool 'vision_map.add_control' has no annotations annotation_checker · 100%
low
Tool 'vision_map.commit_workflow' has no annotations annotation_checker · 100%
low
Tool 'vision_map.harvest_session' has no annotations annotation_checker · 100%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: vitest@2.1.8 (GHSA-5xrq-8626-4rwp) dependency_analyzer · 95%
medium
Vulnerable dependency: vitest@2.1.8 (GHSA-9crc-q9x8-hgqq) dependency_analyzer · 95%
medium
Vulnerable dependency: yaml@2.7.0 (GHSA-48c2-rrv3-qjmp) dependency_analyzer · 95%
medium
Vulnerable dependency: @modelcontextprotocol/sdk@1.0.4 (GHSA-w48q-cv73-mx4w) dependency_analyzer · 95%
medium
Buffer.from base64 in Haruhiyuki-vision-mcp-280c5ae/packages/cli/src/cli.ts:1384 entropy_analyzer · 75%
medium
High-entropy string (5.75 bits/char) in Haruhiyuki-vision-mcp-280c5ae/packages/server/src/tools.ts:252 entropy_analyzer · 51%
medium
High-entropy string (5.85 bits/char) in Haruhiyuki-vision-mcp-280c5ae/packages/server/src/tools.ts:254 entropy_analyzer · 52%
medium
High-entropy string (5.72 bits/char) in Haruhiyuki-vision-mcp-280c5ae/packages/server/src/tools.ts:982 entropy_analyzer · 50%
medium
High-entropy string (5.78 bits/char) in Haruhiyuki-vision-mcp-280c5ae/packages/core/src/platform/darwin-osascript.ts:105 entropy_analyzer · 51%
medium
Buffer.from base64 in Haruhiyuki-vision-mcp-280c5ae/packages/core/src/platform/windows.ts:113 entropy_analyzer · 75%
medium
Buffer.from base64 in Haruhiyuki-vision-mcp-280c5ae/packages/core/src/platform/windows.ts:133 entropy_analyzer · 75%
medium
Buffer.from base64 in Haruhiyuki-vision-mcp-280c5ae/packages/core/src/platform/darwin-helper.ts:120 entropy_analyzer · 75%
medium
Buffer.from base64 in Haruhiyuki-vision-mcp-280c5ae/packages/core/src/platform/darwin-helper.ts:155 entropy_analyzer · 75%
info
package.json metadata manifest_parser · 100%
info
Tool: capsule.ensure_display manifest_parser · 85%
info
Tool: capsule.attach_window manifest_parser · 85%
info
Tool: capsule.migrate_window manifest_parser · 85%
info
Tool: capsule.restore_window manifest_parser · 85%
info
Tool: capsule.capture manifest_parser · 85%
info
Tool: capsule.validate_geometry manifest_parser · 85%
info
Tool: capsule.raise manifest_parser · 85%
info
Tool: vision_map.snapshot manifest_parser · 85%
info
Tool: vision_map.click_at manifest_parser · 85%
info
Tool: vision_map.type_text manifest_parser · 85%
info
Tool: vision_map.press_key manifest_parser · 85%
info
Tool: vision_map.scroll manifest_parser · 85%
info
Tool: vision_map.list_apps manifest_parser · 85%
info
Tool: vision_map.list_workflows manifest_parser · 85%
info
Tool: vision_map.describe_workflow manifest_parser · 85%
info
Tool: vision_map.init manifest_parser · 85%
info
Tool: vision_map.describe manifest_parser · 85%
info
Tool: vision_map.detect_state manifest_parser · 85%
info
Tool: vision_map.list_actions manifest_parser · 85%
info
Tool: vision_map.describe_action manifest_parser · 85%
info
Tool: vision_map.perform_action manifest_parser · 85%
info
Tool: vision_map.run_workflow manifest_parser · 85%
info
Tool: vision_map.verify manifest_parser · 85%
info
Tool: vision_map.repair_minimal manifest_parser · 85%
info
Tool: vision_map.apply_patch manifest_parser · 85%
info
Tool: vision_map.export_trace manifest_parser · 85%
info
Tool: vision_map.propose_controls manifest_parser · 85%
info
Tool: vision_map.commit_state manifest_parser · 85%
info
Tool: vision_map.add_control manifest_parser · 85%
info
Tool: vision_map.commit_workflow manifest_parser · 85%
info
Tool: vision_map.harvest_session manifest_parser · 85%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (13) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 80%
low
Permission: filesystem access detected permission_analyzer · 90%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 295 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%