Skip to main content
Glama

ValidPilot Verify

Don't just generate, verify.

让 AI 代码生成结果可验证、可信赖。证据驱动的 MCP 验证平台。

npm version npm downloads CI License MCP Protocol Node.js Contributor Covenant English

📘 MCP 新手入门:先看 MCP 协议速查手册,5 分钟搞懂 MCP。 📖 详细操作指南:见 用户操作手册,从安装到精通。 🔧 遇到问题:见 日志排查手册,常见错误与解决方案。


📑 目录


Related MCP server: PixelCheck

🎯 一句话介绍

ValidPilot Verify 是一个面向 AI 编程的全息验证平台。通过 MCP 协议,AI 可以自动验证代码生成结果——生成截图证据、诊断错误根因、留存完整证据链。

它能做什么?

  • 🔍 验证 AI 生成的代码:打开页面、点击按钮、填写表单、验证结果

  • 📸 留存证据:每步操作自动截图,形成可追溯的证据链

  • 🐛 智能诊断错误:自动分析错误根因,给出置信度评分和修复建议

  • 断言验证:验证元素存在、文本内容、URL 匹配等

  • 📊 生成验证报告:Markdown 报告,包含截图证据和诊断结果


🔄 Skill + MCP = 最佳体验

ai-verify-mcp 提供 136 个底层验证工具(浏览器操作、截图、a11y 扫描、断言验证、视觉比对、网络监控、性能分析、内存检测、证据链采集、安全扫描等),但这些工具需要被编排调用才能完成完整的验证任务。

v1.9.3+ 起,编排能力已通过 MCP Prompts 原语内置到 MCP 服务器——无需安装任何 IDE 扩展包,在支持 MCP Prompts 的客户端(Claude Desktop、Cursor、Trae)输入 / 即可看到 7 个斜杠命令工作流。

flowchart LR
    A[AI 生成代码] --> B[Skill 编排验证流程]
    B --> C[ai-verify-mcp 执行验证]
    C --> D{验证通过?}
    D -->|失败| E[AI 自动修复]
    E --> C
    D -->|通过| F[留存证据链]

三种 Skill 形态

形态

是什么

是否需安装

v1.9.3+ 状态

A. MCP Prompts

/validate-login/submit-form 等 7 个斜杠命令,内置在 MCP 服务器中

❌ 不需要

✅ 开箱即用

B. Skill 指导文档

docs/skills/*.md 8 篇工具链编排手册

❌ 不需要(随 npm 包发布)

✅ v1.9.3 已有

C. IDE Skill 扩展包

Trae 的 browser-dev-full-validation-skill 等 IDE 原生扩展

✅ 需在 Trae Skill 市场安装

可选增强

Skill 负责

职责

说明

流程编排

定义验证步骤顺序:打开页面 → 截图 → 检查 a11y → 断言结果

证据管理

统一存放截图、日志、HAR 文件到各阶段产物目录

生成验证报告

将多轮验证结果汇总为一份完整报告(成功率、故障清单、修复建议)

对比基准

对比当前验证结果与上一轮(或原始版本),计算回归情况

ai-verify-mcp 负责

职责

说明

153 个工具(v1.9.5 重构后)

browser_open / browser_visual / browser_session / browser_locator / browser_find / browser_performance / browser_state / browser_debug / browser_captcha / browser_overlay / validation_check / validation_report / trace_correlate / skill_validate / error_analyze / security_scan / evidence / chain_spec / mcp_diag / contract / asset_discovery / browser_smoke_test / browser_counterfactual_analyze / browser_assert / browser_a11y_check / security_headers_check / security_owasp_top10 / api_probe 等(旧工具名通过 TOOL_ALIASES 别名转发继续可用,完全向后兼容)

7 个 MCP Prompts

/validate-login/submit-form/audit-performance/audit-security/visual-regression/debug-page/e2e-flow 内置工作流

证据链采集

每步操作自动截图,记录 Console 日志和网络请求

对比与 CSS 变量扫描

axe-core 集成、CSS 变量追踪

报告输出

结构化 JSON + Markdown 报告

💡 最佳实践(v1.9.3+):

  • 最小依赖路径(推荐):只装 @validpilot/ai-verify-mcp MCP Server,输入 / 即可触发 7 个 Skill 工作流。无需任何 IDE 扩展包。

  • 增强路径(可选):在 Trae 中额外启用 browser-dev-full-validation-skill 扩展包,获得 7 阶段细粒度流程编排(每个 Skill 内部拆成 7 个执行阶段)。

  • 详见 Skill 使用指南


🚀 快速开始

方式一:1 分钟快速体验

# 1. 安装
npm install @validpilot/ai-verify-mcp

# 2. 启动服务
npx @validpilot/ai-verify-mcp start

# 3. 在 AI 助手中配置 MCP(以 Cursor 为例)

方式二:直接验证(无需 MCP)

# 快速验证一个网站
npx @validpilot/ai-verify-mcp validate --url https://example.com

# 截图留证
npx @validpilot/ai-verify-mcp screenshot --url https://example.com --name evidence-001

# 一键检查
npx @validpilot/ai-verify-mcp quick-check --url https://example.com

📦 更新到最新版本

查看当前版本:

# 查看 npm 上的最新版本
npm view @validpilot/ai-verify-mcp version

# 查看本地已安装版本(全局安装方式)
npm list -g @validpilot/ai-verify-mcp

根据您的使用方式选择对应的更新方法

场景 A:MCP 配置中使用 npx(推荐,多数用户)

如果您的 MCP 配置是这种形式:

"validpilot-ai-verify-mcp": {
  "command": "npx",
  "args": ["-y", "@validpilot/ai-verify-mcp@1.6.2"]
}

更新方法:将版本号改为最新版本(当前为 1.6.9),或使用 @latest 自动跟随最新:

// 方式 1:指定具体版本(推荐,确保稳定性)
"args": ["-y", "@validpilot/ai-verify-mcp@1.6.9"]

// 方式 2:使用 latest 标签(每次启动自动拉取最新)
"args": ["-y", "@validpilot/ai-verify-mcp@latest"]

改完后重启 IDE重载 MCP Server 即可生效。npx 会自动下载新版本到缓存。

💡 提示:如果之前用过旧版本,npx 缓存可能残留旧包。如遇异常,执行 npx clear-npx-cache 清除缓存后重试。

场景 B:全局安装方式

如果您的 MCP 配置是这种形式:

"validpilot-ai-verify-mcp": {
  "command": "ai-verify-mcp",
  "args": []
}

更新方法

# 更新到最新版本
npm install -g @validpilot/ai-verify-mcp@latest

# 或指定具体版本
npm install -g @validpilot/ai-verify-mcp@1.6.9

# 验证更新成功
ai-verify-mcp --version

更新后重启 IDE 即可生效,无需修改 MCP 配置。

场景 C:项目本地安装方式

如果是在项目中 npm install @validpilot/ai-verify-mcp 安装的:

# 更新到最新版本
npm install @validpilot/ai-verify-mcp@latest

# 或在 package.json 中修改版本号后执行
npm update @validpilot/ai-verify-mcp

🔧 配置 MCP Server

在 Cursor 中使用

  1. 打开 Cursor → 设置 → MCP Servers → Add

  2. 填写配置

或在 IDE 的 MCP 配置文件中添加(项目级 .cursor/mcp.json 或用户级配置):

{
  "ai-verify-mcp": {
    "command": "npx",
    "args": ["-y", "@validpilot/ai-verify-mcp"],
    "env": {
      "MCP_MODE": "http",
      "MCP_HTTP_PORT": "3456"
    }
  }
}

在 Claude Code 中使用

在项目根目录创建 .mcp.json

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_MODE": "http",
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

在 Windsurf 中使用

Settings → MCP Servers → Add:

{
  "ai-verify-mcp": {
    "command": "npx",
    "args": ["-y", "@validpilot/ai-verify-mcp"]
  }
}

🎬 实际使用示例

场景:验证 AI 生成的登录页面

你告诉 AI:

"帮我验证这个登录页面:打开 https://example.com/login,输入用户名 test 和密码 123,点击登录按钮,验证是否跳转到首页。"

AI 调用的工具链:

1. browser_open → 打开登录页面(截图:login-page.png)
2. browser_type → 输入用户名(截图:username-filled.png)
3. browser_type → 输入密码(截图:password-filled.png)
4. browser_click → 点击登录按钮(截图:login-clicked.png)
5. validation_check → 验证跳转到首页(截图:homepage.png)
6. browser_assert → 断言 URL 包含 /home(生成证据报告)

结果:完整证据链

artifacts/
├── login-page.png          # 页面初始状态
├── username-filled.png     # 输入用户名后
├── password-filled.png     # 输入密码后
├── login-clicked.png       # 点击登录后
├── homepage.png            # 登录成功后
└── validation-report.md    # 验证报告(含诊断结果)

🏆 为什么选择 ValidPilot Verify?

特性

ValidPilot Verify

Playwright

Puppeteer

MCP 协议原生

✅ 开箱即用

❌ 需自己封装

❌ 需自己封装

AI Agent 友好

✅ 136 个专用工具

❌ 通用 API

❌ 通用 API

证据链留存

✅ 自动截图 + 时间戳

❌ 手动实现

❌ 手动实现

智能诊断

✅ 错误根因 + 置信度

❌ 仅日志

❌ 仅日志

验证报告

✅ Markdown + 截图

❌ 需自己写

❌ 需自己写

快速验证

✅ 一键检查

❌ 需编写测试

❌ 需编写测试

核心差异:Playwright/Puppeteer 是"手"(负责操作),ValidPilot Verify 是"眼+脑"(负责检查和验证)。

Skill + MCP 协同优势

单独用 MCP

单独用 Skill

Skill + MCP 组合

✅ 136 个工具但需手动编排

✅ 有流程但缺执行能力

✅ 自动编排 + 自动执行

❌ 验证结果零散

❌ 流程模板固定

✅ 完整证据链 + 灵活配置

❌ 需手动对比差异

❌ 无法直接操控浏览器

✅ 全自动闭环

推荐配置:在 Trae 中启用 browser-dev-full-validation-skill,同时配置 ai-verify-mcp 作为 MCP Server。Skill 负责"什么时候验、验什么",MCP 负责"怎么验"。

🎨 验证流程可视化

┌─────────────────────────────────────────────────────────────┐
│                    AI 生成代码 → 验证流程                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌────────┐ │
│  │ 1. 打开   │ -> │ 2. 操作   │ -> │ 3. 断言   │ -> │ 4. 报告 │ │
│  │ browser_  │    │ browser_  │    │ browser_  │    │ evidence│ │
│  │ open      │    │ type/click│    │ assert    │    │ _pack  │ │
│  └──────────┘    └──────────┘    └──────────┘    └────────┘ │
│       │               │               │               │      │
│       ▼               ▼               ▼               ▼      │
│  📸 screenshot    📸 screenshot    📸 screenshot    📄 .md   │
│  login.png        input.png       result.png       report   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

🔄 v1.9.5 工具体系重构

重构动机与收益

v1.9.5 之前,ai-verify-mcp 注册了 137 个工具,IDE 工具列表过长,AI 模型在工具选择时容易混淆。v1.9.5 通过 mode 参数统一 + TOOL_ALIASES 别名转发机制,将功能相近的工具合并为主工具 + 子模式:

  • 工具数:137 → 154(含 59 个别名转发规则,实际主工具约 95 个)

  • 视觉噪音:IDE 工具列表大幅精简,AI 模型工具选择更准确

  • 完全向后兼容:所有旧工具名通过 TOOL_ALIASES 继续可用,不破坏任何现有调用

mode 参数使用指南

v1.9.5 起,主工具通过 mode 参数区分子模式。例如:

// 旧方式(仍然可用):调用 3 个独立工具
browser_captcha_detect({})
browser_captcha_read({})
browser_captcha_screenshot({})

// 新方式(推荐):调用 1 个主工具 + mode 参数
browser_captcha({ mode: 'detect' })
browser_captcha({ mode: 'read' })
browser_captcha({ mode: 'screenshot' })

旧工具名 → 新工具名映射表

旧工具名

新主工具

mode 值

browser_captcha_detect

browser_captcha

detect

browser_captcha_read

browser_captcha

read

browser_captcha_screenshot

browser_captcha

screenshot

browser_overlay_detect

browser_overlay

detect

browser_overlay_dismiss

browser_overlay

dismiss

browser_session_create

browser_session

create

browser_session_switch

browser_session

switch

browser_session_close

browser_session

close

browser_sessions

browser_session

list

browser_visual_baseline

browser_visual

baseline

browser_visual_compare

browser_visual

compare

browser_visual_report

browser_visual

report

browser_visual_check

browser_visual

check

browser_visual_snapshot

browser_visual

snapshot

screenshot_diff

browser_visual

diff

browser_screenshot_element

browser_screenshot

element

browser_locator_suggest

browser_locator

suggest

browser_locator_validate

browser_locator

validate

browser_find_element

browser_find

element

browser_find_page

browser_find

page

browser_performance_check

browser_performance

check

browser_performance_trace

browser_performance

trace

browser_cookies

browser_state

cookies

browser_storage

browser_state

storage

browser_debug_report

browser_debug

report

browser_diagnose

browser_debug

diagnose

debug_investigate

browser_debug

investigate

validation_quick_run

validation_check

quick

validation_report_export

validation_report

export

trace_correlation_check

trace_correlate

check

browser_trace_chain

trace_correlate

chain

browser_chain

browser_flow

chain

browser_batch

browser_flow

batch

validation_chain

validation_flow

chain

browser_errors_aggregate

browser_errors

aggregate

browser_errors_clear

browser_errors

clear

browser_events_clear

browser_events

clear

browser_smart_fill

browser_form_fill

smart

browser_network_detail

browser_network

detail

skill_mcp_validate

skill_validate

mcp_validate

skill_consistency_check

skill_validate

consistency

skill_tools_map

skill_validate

tools_map

error_fix_suggestion

error_analyze

fix

error_summary_md

error_analyze

summary

security_headers_check

security_scan

headers

security_csp_analyze

security_scan

csp

security_sql_injection_scan

security_scan

sqli

security_xss_scan

security_scan

xss

security_owasp_top10

security_scan

owasp

evidence_pack

evidence

pack

evidence_index

evidence

index

chain_list_templates

chain_spec

list

chain_spec_run

chain_spec

run

chain_score_report

chain_spec

score

mcp_health_check

mcp_diag

health

mcp_self_test

mcp_diag

self_test

contract_baseline

contract

baseline

contract_guard

contract

guard

asset_endpoint_enum

asset_discovery

enum

asset_endpoint_probe

asset_discovery

probe

asset_routes_discover

asset_discovery

routes

迁移建议

  1. v1.10.0 已移除别名:自 v1.10.0 起,TOOL_ALIASES 正式移除,旧工具名不再可用,必须使用主工具 + mode 参数

  2. 升级前必做:从 v1.9.5 升级到 v1.10.0 前,请按上方映射表将代码中所有旧工具名调用替换为主工具 + mode 参数

  3. 推荐使用新主工具:新代码直接使用主工具 + mode 参数,工具列表更简洁

  4. IDE 工具列表缓存:升级后需重启 IDE 才能在自动补全中显示新的 93 个主工具列表


📦 完整工具列表

✅ 验证框架(8个)

工具

说明

validation_check

检查点验证(负载时间、JS错误、HTTP错误等)

validation_element

元素状态验证(存在、可见、文本包含等)

validation_flow

流程验证(多步骤验证流程)

validation_quick_run

一键快速验证(7项检查)

validation_report

生成验证报告

validation_report_export

导出验证报告

browser_assert

断言验证(URL、标题、元素等)

screenshot_diff

视觉回归对比

🔍 智能诊断(9个)

工具

说明

browser_diagnose

错误自动诊断(根因分析 + 置信度)

browser_element_status

元素状态检查(可见性、可交互性、遮挡)

browser_quick_fix

快速修复(8种策略自动尝试)

browser_verify_fix

修复验证闭环

browser_debug_report

调试报告生成

browser_errors_aggregate

错误聚合统计

error_fix_suggestion

修复建议(基于规则)

error_summary_md

错误摘要(Markdown)

debug_investigate

深度调查

📸 证据收集(6个)

工具

说明

browser_screenshot

全屏截图

browser_screenshot_element

元素截图

browser_artifacts

工件管理

browser_artifacts_clear

清理工件

browser_har_export

导出 HAR 文件

browser_snapshot

页面快照

🌐 浏览器操作(21个)

完整浏览器操作能力:打开、点击、输入、滚动、等待、Cookie、存储、网络、控制台等。

🎯 智能定位(4个)

工具

说明

browser_find_element

按文本智能查找元素

browser_locator_suggest

选择器建议

browser_locator_validate

选择器验证

browser_find_page

页面类型识别

🔒 安全扫描(6个)

工具

说明

security_headers_check

HTTP 安全头部检查(CSP、HSTS、XFO 等 7 项 + 信息泄露检测)

security_csp_analyze

CSP 策略深度分析(unsafe-inline/eval 检测、评分)

security_sql_injection_scan

SQL 注入扫描(20 个 payload,多数据库错误检测)

security_xss_scan

XSS 漏洞扫描(26 个 payload,未转义检测)

security_owasp_top10

OWASP Top 10 快速检查(A1-A10 全覆盖)

api_probe

API 端点探测(多 HTTP 方法 + CORS 分析)


🔬 证据链概念

证据链是 ValidPilot Verify 的核心概念:

  1. 每步操作自动截图:时间戳 + 操作类型 + 结果状态

  2. 错误自动诊断:错误类型 + 根因分析 + 置信度评分

  3. 修复建议生成:基于规则的修复建议 + 验证闭环

  4. 报告自动生成:Markdown 报告 + 截图引用 + 诊断结果

示例证据链报告:

# 验证报告 - 登录流程

## ✅ 通过的步骤

| 步骤 | 操作 | 截图 | 时间戳 |
|------|------|------|--------|
| 1 | 打开登录页 | login-page.png | 2026-06-28T10:00:00Z |
| 2 | 输入用户名 | username-filled.png | 2026-06-28T10:00:05Z |
| 3 | 点击登录 | login-clicked.png | 2026-06-28T10:00:10Z |

## ❌ 失败的步骤

| 步骤 | 操作 | 错误 | 截图 | 诊断 |
|------|------|------|------|------|
| 4 | 验证首页 | URL不匹配 | homepage.png | 置信度 85% - 登录可能失败 |

**错误类型**: 验证失败
**置信度**: 85%
**建议**: 检查登录是否成功,查看是否有错误提示。

⚙️ 环境变量

变量

说明

默认值

MCP_MODE

MCP 运行模式(stdio/http)

stdio

MCP_HTTP_PORT

HTTP 端口

3456

VALIDPILOT_ARTIFACTS_DIR

证据存放目录

./artifacts

SCREENSHOT_QUALITY

截图质量

80


❓ 常见问题

Q: 和 browser-mcp 有什么区别?

browser-mcp 是"手"——负责操作浏览器(打开、点击、输入)。 ai-verify-mcp 是"眼+脑"——负责验证和诊断(检查结果、留存证据、诊断错误)。

两者可以配合使用:browser-mcp 操作,ai-verify-mcp 验证。

Q: 支持哪些 AI 助手?

支持所有 MCP 协议兼容的 AI 助手:Cursor、Claude Code、Windsurf、Cline 等。

Q: 证据存放在哪里?

默认存放在 ./artifacts 目录,包含截图、HAR 文件、验证报告等。

Q: 如何更新到最新版本?

详见上方 📦 更新到最新版本 章节。简要说明:

  • npx 方式:将 MCP 配置中的版本号改为 @latest 或具体新版本号(如 @1.6.9),重启 IDE

  • 全局安装:执行 npm install -g @validpilot/ai-verify-mcp@latest

  • 查看最新版本:执行 npm view @validpilot/ai-verify-mcp version

Q: 启动失败,Error: Playwright browser failed to launch

  • 原因 A: Playwright 浏览器二进制未安装

  • 解决: 运行 npx playwright install chromium

  • 原因 B: Linux 系统缺少系统依赖

  • 解决: Debian/Ubuntu 执行 apt-get install libnspr4 libnss3 libatk1.0-0 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libasound2

Q: MCP 连接失败,MCP error -32000: Connection closed

  • 原因: node 可执行文件路径在 MCP Host 里找不到

  • 解决: 在 MCP config 中使用 command: "npx" args: ["-y", "@validpilot/ai-verify-mcp"] 而非 node .../start-http.js

Q: 端口 3456 已被占用

  • 解决: 在 MCP config 中指定自定义端口: "env": { "MCP_HTTP_PORT": "3557" }

Q: 截图没生成到 ./artifacts

  • 检查1: 进程对当前目录有写权限

  • 检查2: 通过环境变量覆盖: "env": { "VALIDPILOT_ARTIFACTS_DIR": "C:/temp/evidence" }

  • 检查3: AI 是否真的调用了 browser_screenshot 工具(在 MCP 调试模式下看 ListTools 调用日志)


🔌 MCP Client 配置速查

所有客户端的 stdio/HTTP shape 一致,下面列出可直接复制粘贴的配置块。

在 Cursor(项目级推荐)

.cursor/mcp.json(项目根目录):

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

在 Claude Desktop

编辑 %APPDATA%/Claude/claude_desktop_config.json(Windows)或 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS):

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

⚠️ Claude Desktop 只会加载用户级 config 文件,重启 Claude Desktop 才能看到新工具。

在 Windsurf

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

在 Claude Code(本地安装)

项目根目录的 .mcp.json

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"]
    }
  }
}

在 Cline / Continue / 其他 stdio MCP 客户端

{
  "name": "ai-verify-mcp",
  "command": "npx",
  "args": ["-y", "@validpilot/ai-verify-mcp"]
}

在 Trae IDE

两种入口二选一,推荐项目级。

方式 A:项目级(推荐,多人共享)

在项目根目录创建 .trae/mcp.json

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

方式 B:用户级(全局生效)

%APPDATA%\Trae\User\mcp.json(Windows)或 ~/.config/Trae/User/mcp.json(macOS/Linux):

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

💡 Trae 在 settings → MCP → "+ Add" → "Raw Config (JSON)" 按钮可直接弹出对应路径;保存后重启 Trae 会话加载新工具。

⚠️ Trae MCP 限制提醒

Trae 因模型上下文窗口有限,对 MCP 引入的两道硬性上限

限制项

上限值

触达后果

所有 MCP Server 工具描述总字符数

≈ 8000 字符

超出后按工具粒度丢弃多余的工具描述

所有 MCP Server 工具总数

≈ 40 个工具

超出后按工具粒度丢弃装不下的工具

📌 数据来源:Trae 官方 FAQ|MCP 工具 · 2026-02

大量堆叠 MCP 后,可能出现"list tools failed"或工具显示不全的现象——并非 ai-verify-mcp 自身问题,而是触达 Trae 上限后按工具粒度丢失描述。具体规避措施请参考 Trae 官方文档。

在 Codex CLI(OpenAI)

~/.codex/config.toml(TOML 格式,注意与 JSON 区别):

[mcp_servers.ai-verify-mcp]
command = "npx"
args = ["-y", "@validpilot/ai-verify-mcp"]

[mcp_servers.ai-verify-mcp.env]
MCP_HTTP_PORT = "3456"

或使用 CLI 一次性添加:

codex mcp add ai-verify-mcp -- npx -y @validpilot/ai-verify-mcp

💡 Codex CLI 默认用 stdio,HTTP 端口仅在 MCP_MODE=http 时使用;如需用 HTTP 暴露给浏览器调试,需用 start-http.js 启动后让 Codex 通过 SSE/HTTP 连接(Codex 0.40+ 支持)。

在 OpenClaw(开源 Claude Code 替代品)

~/.openclaw/openclaw.json

{
  "mcp": {
    "servers": {
      "ai-verify-mcp": {
        "command": "npx",
        "args": ["-y", "@validpilot/ai-verify-mcp"],
        "env": {
          "MCP_HTTP_PORT": "3456"
        }
      }
    }
  }
}

💡 OpenClaw 使用 mcp.servers.<name> 嵌套结构(不是 servers 后缀是另一种风格),与 Claude Code 同源协议,可平滑迁移。

在 Hermes Agent(Nous Research)

~/.hermes/config.yaml(YAML 格式,与 JSON 路径不同):

mcp_servers:
  ai-verify-mcp:
    command: "npx"
    args: ["-y", "@validpilot/ai-verify-mcp"]
    env:
      MCP_HTTP_PORT: "3456"

或使用 CLI 交互式添加:

hermes mcp add ai-verify-mcp \
  --command "npx" \
  --args "-y,ai-verify-mcp"

💡 Hermes 会自动 discover 工具列表,启动后用 hermes tools list 可看到 browser_*validation_* 等工具已注册。

在华为云 CodeArts(码云 IDE)

设置 → MCP工具 → "配置MCP" → 编辑 mcp_settings.json

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

或在 IDE 命令面板执行:

  1. Ctrl+Shift+P → "CodeArts: Add MCP Server"

  2. 选 stdio → 填 npx → 填 -y,ai-verify-mcp

  3. 配置自动写入 mcp_settings.json

⚠️ 华为云码云建议开启 MCP 不超过 8 个,启用 3 个最佳,本工具是验证类,建议与 Playwright、Context7 等共用并设置 defer_loading 避免冲突。

在 Tencent CodeBuddy

方式 A(推荐):~/.codebuddy/.mcp.json(推荐)

~/.codebuddy/.mcp.json(全局)或项目级 .mcp.json(项目级):

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"],
      "env": {
        "MCP_HTTP_PORT": "3456"
      }
    }
  }
}

方式 B:Settings.json 集成

设置 → "Add MCP" → 自动打开 settings.json,追加:

{
  "mcpServers": {
    "ai-verify-mcp": {
      "command": "npx",
      "args": ["-y", "@validpilot/ai-verify-mcp"]
    }
  }
}

💡 CodeBuddy 支持 STDIO / SSE / HTTP 三种 transports,本节配置均用 STDIO(最常用);如需用 HTTP 模式,把 command/args 替换为 url: "http://localhost:3456/sse" 即可。


🎬 演示:✅ vs ❌ 对比

❌ 没有验证(普通 AI 编程)

👤 "帮我写一个登录页"
🤖 "已生成 login.html / login.js ..."
👤 "能跑吗?"
🤖 "应该没问题"
👤 "......"   ❌ 没有证据

✅ 使用 ValidPilot Verify

👤 "帮我写一个登录页,跑完之后验证一下"
🤖 "好的,我边写边验证:
    1. 打开页面 → validation_quick_run ✅
    2. 输入用户名 → screenshot 已留存
    3. 输入密码 → screenshot 已留存
    4. 点击登录 → screenshot + URL断言 ✅
    5. 验证首页 → evidence/report.md ✅
👤 *(点击 evidence/login-flow-report.md 查看截图证据)*

完整证据链文件结构:

artifacts/
├── step-1-login-page.png
├── step-2-username-typed.png
├── step-3-password-typed.png
├── step-4-login-clicked.png
├── step-5-home-verified.png
└── login-flow-report.md

📦 发布自动化

发布到 npm 时会自动执行健康校验。

{
  "scripts": {
    "start": "node server.js",
    "http": "node start-http.js",
    "cli": "node bin/validpilot.js",
    "validate": "node bin/validpilot.js health",
    "pack:dry": "npm pack --dry-run",
    "prepublishOnly": "node bin/validpilot.js health && npm pack --dry-run"
  }
}

执行流程:

$ npm publish
> @validpilot/ai-verify-mcp@1.6.9 prepublishOnly
> node bin/validpilot.js health && npm pack --dry-run

{ "ok": true, "name": "@validpilot/ai-verify-mcp", "version": "1.6.9", ... }
npm notice package size: 649.9 kB
npm notice total files: 220
+ @validpilot/ai-verify-mcp@1.6.9 → 上传 npm registry

发布前可手动验证:

  • npm run validate → Playwright 健康检查

  • npm run pack:dry → 打包预览(不实际打包)


🙏 致谢

感谢以下项目和技术的启发:


💬 社区与联系

钉钉交流群

扫码加入 ai-verify-mcp 官方交流群,提问、反馈、交流最佳实践:

钉钉交流群

此二维码永久有效

联系邮箱

📧 validpilot@outlook.com

  • 商务合作

  • 安全漏洞报告(请优先使用 SECURITY.md 流程)

  • 其他问题


❤️ 支持捐赠 / Donations

感谢您对本项目的关注与支持!如果您觉得这个项目对您有帮助,欢迎通过捐赠的方式给予鼓励。

Thank you for your interest and support! If you find this project helpful, consider buying me a coffee.

捐赠将用于项目维护、功能开发、服务器开销等,所有资金将透明公开,专款专用。

Donations will be used for project maintenance, feature development, and server costs. All funds will be transparent and project-dedicated.

捐赠方式 / Donation Methods

支付宝 (Alipay)

微信支付 (WeChat)

PayPal

支付宝

微信支付

PayPal

无论金额大小,都是对我莫大的鼓励。再次感谢您的支持!

No matter the amount, every bit of support means a lot. Thank you!

GitHub Sponsors:暂未开通,敬请期待。Not yet available, stay tuned.


Contributing:欢迎贡献!阅读 CONTRIBUTING.md 了解如何参与。请遵守 Code of Conduct

Security:发现漏洞?查看 SECURITY.md 了解安全策略。

AI Agents:你是 AI Agent?查看 AGENTS.md 获取编码指南和项目约定。

LicenseMIT © 2026 ValidPilot

📜 许可证

MIT © 2026 ValidPilot Team


Don't just generate, verify. 让 AI 编程可信赖。

Available Tools

142 tools
api_probeA

API endpoint prober: sends multiple HTTP methods (GET/POST/PUT/DELETE/PATCH/OPTIONS) to the target URL, analyzes response status, content-type, and CORS configuration. Supports custom headers and body, suitable for API security testing and endpoint discovery.

中文详情:

  • 用途:API 端点探测工具,向目标 URL 发送多种 HTTP 方法,分析响应状态、内容类型和 CORS 配置,支持自定义请求头和请求体

  • 何时使用:API 安全测试时探测允许的方法;CORS 配置验证时;端点发现/枚举时;OPTIONS 预检请求行为验证时

  • 输出:{ ok: boolean, url: string, results: array, corsAnalysis: object } — results 每项含 { method, status, contentType, contentLength, allowed }; corsAnalysis 含 { enabled, allowedOrigins, allowCredentials }

  • 参数:

    • url (string, 必填):目标 API URL

    • methods (array, 可选):要测试的 HTTP 方法列表,默认 ["GET","POST","PUT","DELETE","PATCH","OPTIONS"]

    • headers (object, 可选):自定义请求头,如 {"Authorization":"Bearer token","Content-Type":"application/json"}

    • body (string, 可选):请求体(POST/PUT/PATCH 方法使用)

    • checkCors (boolean, 可选):是否分析 CORS 配置,默认 true

  • 错误:URL 不可达抛出 'Request failed';methods 为空数组使用默认方法列表

  • 示例:{"url":"https://api.example.com/users","methods":["GET","POST","OPTIONS"],"headers":{"Authorization":"Bearer token"},"checkCors":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 API URL(必填)
bodyNo请求体(POST/PUT/PATCH 方法使用)
headersNo自定义请求头,如 {"Authorization": "Bearer token", "Content-Type": "application/json"}
methodsNo要测试的 HTTP 方法列表,默认 ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS']
checkCorsNo是否分析 CORS 配置,默认 true

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the tool's actions (sending methods, analyzing responses, CORS analysis) and error behavior ('Request failed' on unreachable URLs). Safety implications (non-destructive) are implied but not explicitly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with sections (purpose, details, output, params, errors, example) and includes both English and Chinese, which may be redundant but not detrimental. It is somewhat verbose but every section adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no output schema, and a complex return object, the description fully explains the output structure (results array, corsAnalysis object), error cases, and provides a concrete example. It is complete for an agent to understand invocation and expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds meaningful context: default for methods, example header format, body usage notes, and checkCors default. This goes beyond the schema's brief descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as an API endpoint prober that sends multiple HTTP methods and analyzes response status, content-type, and CORS configuration. It distinguishes itself from sibling tools (e.g., security_scan, security_headers_check) by focusing on method probing and CORS verification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage contexts: API security testing, CORS configuration validation, endpoint discovery/enumeration, and OPTIONS preflight behavior verification. However, it does not discuss when not to use the tool or compare it to alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_discoveryA

v1.9.5 起合并 asset_routes_discover / asset_endpoint_enum / asset_endpoint_probe 三大资产发现工具。通过 mode 参数切换:routes=前端路由发现;enum=API 端点枚举;probe=端点主动探测。需要先 browser_open 打开页面。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo发现模式:routes=前端路由发现(DOM/hash/JS bundle 静态分析);enum=API 端点枚举(被动分析);probe=端点主动探测(GET/HEAD 请求)enum
methodNo[probe] 探测方法:HEAD 更快但可能被拦截;GET 更可靠HEAD
timeoutNo[probe] 单个请求超时时间(毫秒)
basePathNo[probe] API 基础路径/api
maxScriptsNo[routes/enum] 最多抓取解析的外部 JS bundle 数量(上限 30),用于控制耗时
includeHiddenNo[probe] 是否包含隐藏端点(如 .env, /admin, /backup 等)
maxConcurrentNo[probe] 最大并发请求数
customEndpointsNo[probe] 自定义探测端点列表
probeCategoriesNo[probe] 探测类别:auth=认证;user=用户;order=订单;config=配置;admin=管理端;system=系统;all=全部

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions the prerequisite browser_open but does not disclose error behavior, state side effects, or performance implications. The description does not confirm whether the tool is read-only or destructive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with version info and mode explanation. It efficiently communicates key information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters and no output schema or annotations, the description lacks coverage of return values, error handling, and overall behavior. It is incomplete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds marginal context for the mode parameter by listing the three modes. However, it does not significantly enhance understanding beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is a merged version of three asset discovery tools and explains each mode (routes, enum, probe) with specific verbs and resources. It distinguishes itself from siblings by being a consolidated tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly requires prior browser_open and differentiates the three modes with usage scenarios. However, it does not explicitly mention when not to use or acknowledge that sibling tools like asset_routes_discover may now be redundant.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_routes_discoverA

开源版浅层路由发现:从 DOM 链接、hash 路由、内联脚本、已加载 JS bundle 以及 network 日志中静态提取前端路由(SPA / hash / REST 路径)。仅做被动分析,不发起主动探测或越权访问。需要先 browser_open 打开页面。

ParametersJSON Schema
NameRequiredDescriptionDefault
maxScriptsNo最多抓取解析的外部 JS bundle 数量(上限 30),用于控制耗时

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations, so description carries full burden. States passive analysis, no unauthorized access, and lists data sources. Lacks detail on output format but adequately describes behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single focused paragraph with key information upfront. Slightly dense but no wasted content; could benefit from structured list of sources.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers main purpose, data sources, passive nature, and prerequisite. No output schema, but agent can infer likelihood. Lacks constraints on environment or timeout behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter description in schema. Tool description does not add new meaning beyond schema's explanation of parameter purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specifies verb 'discover' and resource 'front-end routes' with explicit sources (DOM links, hash routes, inline scripts, JS bundles, network logs), differentiating from active probing tools. Purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States prerequisite 'need to browser_open the page first' and constraint 'passive analysis only, no active probing'. Does not explicitly compare to sibling tools but context of options implies when to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_a11y_checkA

Run an axe-core accessibility check on the current page, supporting scan-scope restriction, exclude regions, and rule-tag filtering, returning a violations summary.

中文详情:

  • 用途:使用 axe-core 对当前页面执行可访问性检查,支持限定扫描范围、排除区域和规则标签过滤,返回 violations 摘要

  • 何时使用:上线前 WCAG 合规检查时;可访问性自动化回归时;排查元素缺少 aria-label/alt 时;针对特定组件做 a11y 局部扫描时

  • 输出:{ ok: boolean, url: string, total: number, violations: array, passes: number, incomplete: number, summary: string } — 每项含 { id, impact, tags, description, help, nodes: array }

  • 参数:

    • selector (string, 可选):CSS 选择器;指定后只扫描该区域

    • excludeSelectors (array, 可选):排除扫描的 CSS 选择器列表

    • tags (array, 可选):axe runOnly 标签,如 wcag2a/wcag2aa/best-practice

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:浏览器未启动抛出 'Browser not launched';selector 无匹配抛出 'element not found'

  • 示例:{"selector":"main","excludeSelectors":[".ad-banner"],"tags":["wcag2a","wcag2aa"]}

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoaxe runOnly 标签,如 wcag2a、wcag2aa、best-practice
selectorNo可选 CSS 选择器;指定后只扫描该区域
sessionNameNo浏览器会话名称,默认当前活跃会话
excludeSelectorsNo排除扫描的 CSS 选择器列表

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes the tool as running checks, returning a violations summary, and mentions errors (browser not launched, selector not found). It also gives output structure, which is helpful transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English summary followed by Chinese details, front-loaded with key purpose. Though slightly long, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters, no output schema, and no annotations, the description is very complete: purpose, use cases, parameters, output format, errors, and example. No output schema is needed because return values are described.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description restates each parameter (selector, excludeSelectors, tags, sessionName) with purpose and optionality. It also adds example usage and error handling, providing clear meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it runs an axe-core accessibility check on the current page, with scan-scope restriction, exclude regions, and rule-tag filtering. This distinguishes it from sibling tools like browser_visual_check (visual regression) and browser_lighthouse_audit (performance/SEO) by specifically focusing on a11y violations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: pre-release WCAG compliance, automated regression, debugging missing aria-labels, local component scanning. It does not explicitly mention when not to use, but the specific use cases provide clear guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_aria_typeA

通过可访问性树的 ref 稳定标识符定位元素并输入文本。与 browser_aria_snapshot 配合使用:先用 snapshot 获取元素的 ref,再用此工具输入文本。自动清空元素已有内容后再输入。不依赖 CSS 选择器,CSS 重构后定位仍然稳定有效。

ParametersJSON Schema
NameRequiredDescriptionDefault
refYesaria_snapshot 返回的 ref 标识符(如 'ref_0'、'ref_a3')
textYes要输入的文本内容

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that it automatically clears existing content before input. With no annotations, this adds important behavioral context. Could mention event triggering but still good.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four concise sentences: purpose, workflow, auto-clear, advantage. No redundancy, efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, workflow, behavior, and stability advantage. Lacks error handling details but sufficient for low-complexity tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both params. Description adds value by explaining ref originates from aria snapshot and that text is input after clearing. Beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it locates an element via a stable ref from the accessibility tree and inputs text. It specifies the verb '输入文本' and resource '元素', and distinguishes from CSS-based siblings by emphasizing stability.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly mentions pairing with browser_aria_snapshot and workflow steps. Provides context for when to use (unstable CSS) but lacks explicit when-not-to-use or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_artifactsA

列出当前 MCP 浏览器验证产生的证据产物:截图、trace.zip、HAR、HTML reports、visual 视觉产物、日志文件和当前 checkpoint。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It states the tool lists artifacts but does not disclose that it is likely a read-only, non-destructive operation. Behavioral traits such as side effects or access methods are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the purpose and lists the artifact types efficiently. Every part adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains the function but does not specify the return format (e.g., list of paths or names). It is minimally sufficient but could improve by describing what the user receives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty (zero parameters), so baseline is 4. The description does not need to add parameter semantics, and it meets that baseline without repetition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists evidence artifacts (screenshots, trace.zip, HAR, HTML reports, visual artifacts, log files, checkpoint) from MCP browser verification. It uses a specific verb and resource, and distinguishes from sibling tools like browser_artifacts_clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage after browser verification to view artifacts but does not explicitly state when to use it vs alternatives (e.g., browser_artifacts_clear for clearing). No exclusion criteria are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_captchaB

验证码处理工具(v1.9.5 起合并 browser_captcha_detect/read/screenshot)。通过 mode 参数区分子模式:detect(默认,检测验证码类型和复杂度)/ read(OCR 识别验证码文本)/ screenshot(精准截取验证码区域保存 PNG)。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo目标页面 URL,可选(所有模式通用)
modeNo验证码模式:detect(默认,检测验证码类型和复杂度)/ read(OCR 识别验证码文本)/ screenshot(精准截取验证码区域保存 PNG)detect
minSizeNo最小截图尺寸(像素),低于此值认为截图失败(mode=screenshot 时使用)
paddingNo截图边界 padding,默认 4px(mode=screenshot 时使用)
savePathNo自定义保存路径,可选(mode=screenshot 时使用)
detectModeNo检测模式:auto(自动检测)、image(仅图片验证码)、slider(仅滑块验证码)、click(仅点选验证码)(mode=detect 时使用)auto
autoRefreshNo如果截图尺寸过小,是否自动刷新验证码并重试(mode=screenshot 时使用)
captchaIndexNo验证码图片索引(当页面有多个验证码时使用,从 0 开始)(mode=read 时使用)
captchaSelectorNo验证码图片的 CSS 选择器,可选(所有模式通用,不提供则自动检测)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It explains the sub-modes but lacks details on prerequisites, side effects, error conditions, or what happens when CAPTCHA is not found. The behavioral disclosure is limited.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise, with three short sentences that front-load the key information (merged tool, mode parameter). Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters and no output schema, the description should cover return values per mode and usage flow. It only mentions saving PNG for screenshot and does not describe what detect or read return. The lack of output schema makes this a significant gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds context about mode merging but does not add significant meaning beyond what the schema already provides. The parameter descriptions in the schema are self-sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a CAPTCHA processing tool that combines three sub-modes (detect, read, screenshot), with specific verbs and resources. It also mentions merging from sibling tools, clearly differentiating from them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by stating the tool merges three previous tools, but it does not explicitly state when to use this tool versus alternatives or provide exclusions. The guidance is implied, not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_captcha_readA

读取页面中的验证码图片,支持从图片URL直接提取文字(适用于简单验证码服务),以及使用OCR识别复杂验证码。当识别失败或置信度较低时,会返回验证码图片供人工识别。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo目标页面URL,可选
captchaIndexNo验证码图片索引(当页面有多个验证码时使用,从0开始),可选
captchaSelectorNo验证码图片的CSS选择器,可选

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses key behaviors: supports two recognition methods and falls back to returning image for manual review on failure/low confidence. It does not mention whether it modifies page state or requires specific page conditions, but the read-only nature is implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Highly concise with three sentences, front-loading the core action. Every sentence adds meaningful detail without redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should explain return values. It mentions returning image for manual recognition but does not specify format or structure for successful extractions. For a tool with 3 optional parameters, it covers the main flows but lacks precise return details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all parameters have descriptions. The tool description provides no additional context beyond what the schema already states. Baseline 3 is appropriate as the description adds no extra semantic value for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specifically states it reads captcha images from a page and supports two recognition methods (direct URL extraction and OCR), clearly distinguishing it from sibling tools like browser_captcha_detect (detection) and browser_captcha_screenshot (screenshot).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage for reading captchas and differentiates between simple (direct extraction) and complex (OCR) cases. However, does not explicitly state when to use this tool versus alternatives, nor mentions exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_captcha_screenshotA

精准截取验证码图片区域,保存为PNG文件。支持自动检测验证码位置或手动指定选择器。截图文件可用于后续OCR分析或人工识别。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo目标页面URL,可选
minSizeNo最小截图尺寸(像素),低于此值认为截图失败
paddingNo截图边界padding,默认4px
savePathNo自定义保存路径,可选
autoRefreshNo如果截图尺寸过小,是否自动刷新验证码并重试
captchaSelectorNo验证码图片的CSS选择器,可选(如果不提供则自动检测)

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description adds behavioral context like auto-refresh on small size, but lacks details on side effects, prerequisites, or error behavior. Missing what happens if no captcha found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-loading the main purpose. No redundancy, but could be slightly more structured with parameter grouping.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers basic usage and output format (PNG), but no explanation of return value (e.g., file path or base64). Missing error conditions and integration with sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 6 parameters are documented in the schema (100% coverage). The description adds context about auto-detection vs manual selector but does not significantly enhance understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool captures a screenshot of a captcha area and saves it as PNG. It mentions auto-detection vs manual selector, distinguishing it from related tools like browser_captcha_detect and browser_captcha_read.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for captcha capture with auto or manual selection, but does not explicitly compare to alternatives like browser_screenshot_element or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_chainA

链式执行多个浏览器操作,每步操作后自动检查控制台错误和网络错误。发现错误可立即终止并返回失败步骤。支持强制执行模式,开启时强制进行错误检查且不可关闭。step.type 与 step.action 互为别名,二者至少传一个。

ParametersJSON Schema
NameRequiredDescriptionDefault
actionsYes操作步骤数组,每个步骤包含 type(或 action 别名)和相关参数
stopOnErrorNo是否在发现错误时立即停止,默认 true
includeConsoleNo是否检查控制台错误,默认 true(enforceValidation=true 时强制为 true)
includeNetworkNo是否检查网络错误,默认 true(enforceValidation=true 时强制为 true)
enforceValidationNo是否强制执行错误检查,开启时 includeNetwork 和 includeConsole 强制为 true 且不可被覆盖,默认 true

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden. It discloses error-checking behavior, stop-on-error, and enforce mode details. However, it does not mention side effects on browser state or session persistence, which are important for a chaining tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences) and front-loads the main purpose. Every sentence adds value, though it could be more structured with bullet points for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided. The description explains error checking but lacks details about return format or what 'return failed step' means. Given the complexity of chaining and many siblings, more context on output and when to chain vs. step would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and parameters are well-documented. The description adds minimal value by noting that 'step.type' and 'step.action' are aliases and at least one required, which is already implied by anyOf. No additional semantics beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool chains multiple browser operations with automatic error checking after each step. It distinguishes itself from single-step tools like browser_step and similar chaining tools by specifying error-checking and enforce-validation features.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the general behavior (error checking, termination on error, enforce mode) but does not explicitly specify when to use this tool over alternatives like browser_flow or browser_step. No guidance on prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_clickA

Click a DOM element matched by CSS selector in a real browser. Returns multi-element hint (not timeout) when selector matches multiple elements; use index to pick which one.

中文详情:

  • 用途:在真实浏览器中模拟鼠标点击指定 CSS 选择器元素(按钮、链接、tab、复选框等)

  • 何时使用:触发导航或表单提交时;激活 UI 控件(展开菜单、切换 tab)时;验证按钮可点击性时;在 browser_snapshot 获取元素 ref 后进行交互时

  • 输出:{ ok: boolean, clickedSelector: string, beforeHash: string, afterHash: string, index: number } — afterHash 与 beforeHash 不同表示触发了页面变更

  • 参数:

    • selector (string, 必填):CSS 选择器,支持 Playwright 语法如 'button:has-text("Log In")' 或 '#submit-btn'

    • index (number, 可选):当选择器匹配多个元素时,指定点击第几个(从 0 开始),默认点击第一个

  • 错误:选择器无匹配抛出 'element not found';元素被遮挡抛出 'element not clickable'

  • 示例:{"selector":"#submit-btn","index":0}

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNo当选择器匹配多个元素时,指定点击第几个元素(从 0 开始)。不提供时默认点击第一个元素。
selectorYesCSS 选择器(支持 Playwright 语法,如 'button:has-text("Log In")' 或 '#submit-btn')

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key behaviors: returns multi-element hint instead of timeout when multiple matches, uses index to disambiguate. Describes output fields and error conditions. No annotations provided, so description carries full burden. Minor omission: doesn't mention waiting behavior or scrolling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with English summary followed by Chinese details in bullet points. Some redundancy between English and Chinese, but clear and front-loaded with key behavior. Could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, description covers output fields, error conditions, multi-element behavior, and use cases. Completely adequate for a click tool with good contextual detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both parameters with descriptions (100% coverage). Description adds value by providing example usage and clarifying supported syntax (Playwright) and index selection behavior, which goes beyond bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool clicks a DOM element matched by CSS selector in a real browser. Specific verb (click) and resource (DOM element). Distinguishes from siblings like browser_hover and browser_type by focusing on clicking. Also mentions multi-element handling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use scenarios in the Chinese section (e.g., triggering navigation, activating UI controls, verifying clickability, after snapshot). Does not explicitly name alternatives or state when not to use, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_click_auditA

Audit a single click: screenshot before→click→wait→screenshot after→image diff→error collection→return. One call replaces 6+ individual tool calls for click-through validation loops. Returns navigation status, visual diff ratio, console/network errors, silentFail errors (HTTP 2xx with error body), and screenshot paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoText content of the element to find and click (alternative to 'selector', uses accessibility tree)
labelNoHuman-readable label for this audit step (used in screenshot filenames)
waitMsNoWait time after click in milliseconds before capturing results
selectorNoCSS selector of the element to click (required unless 'text' is provided)
autoReturnNoAutomatically navigate back after audit (goBack for URL nav, re-click for SPA toggle)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full responsibility. It details the sequence: screenshot before, click, wait, screenshot after, image diff, error collection, and return. It also explains the 'autoReturn' parameter's behavior (goBack for URL nav, re-click for SPA toggle) and mentions silentFail errors. However, it does not cover potential side effects like navigation away from the original page or error handling when element is not found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences: first sentence defines the workflow, second lists return values. It is concise without being overly terse. The structure is front-loaded with the main action. Every part adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters and no output schema, the description covers the main flow and return values (navigation status, visual diff ratio, errors, screenshot paths). It also explains key parameter 'autoReturn'. Missing details: what happens if both 'text' and 'selector' are provided or neither, and error handling for element not found. Still, it provides enough context for typical usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds minimal extra meaning beyond the schema; it reiterates that 'text' and 'selector' are alternatives and explains 'autoReturn' slightly more. No significant additional context for other parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Audit a single click' and describes the full workflow (screenshot→click→wait→screenshot→diff→error collection). The name also reinforces this purpose. It distinguishes itself from siblings by emphasizing it replaces multiple individual tool calls for click-through validation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'One call replaces 6+ individual tool calls for click-through validation loops,' indicating when to use this tool as an alternative to chaining multiple browser tools. It does not provide explicit when-not-to-use scenarios, but the context is clear enough for agent decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_consoleA

查看浏览器控制台日志,支持按类型过滤(level: log/warning/error/debug/info)。

覆盖范围:所有 console.error/warn/log/debug、window.onerror 同步异常、unhandledrejection 未处理 Promise 拒绝。

边界说明:

  • 跨域脚本(Script error.):当 标签指向第三方域名且缺少 crossorigin="anonymous" 属性时,只能显示 'Script error.' 而无法获取详情。已自动检测并标记 crossOrigin:true。

  • 极端早期错误:在 addInitScript 执行前发生的 inline 内联同步错误可能遗漏。CDP 层 page.on('console') 可捕获大部分,但 document.write() 中的错误可能被页面渲染流程吞没。

ParametersJSON Schema
NameRequiredDescriptionDefault
levelNo控制台日志级别过滤,默认为all
limitNo返回日志数量限制,默认50
sinceNo时间过滤起始点,ISO时间戳或时间描述(如'5m'表示最近5分钟)
urlContainsNo按URL关键字过滤

TDQS

A3.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given the absence of annotations, the description thoroughly discloses behavioral traits: what it covers (all console types, window.onerror, unhandledrejection), and critical limitations (cross-origin scripts marked, early inline errors possibly missed, document.write() issues). This provides excellent transparency for an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with primary purpose, coverage, and boundaries in separate sections. It is informative but somewhat lengthy; a minor simplification could improve conciseness without losing key details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers parameters and behavioral limitations well, but it does not describe the output format or structure of the returned logs. Since there is no output schema, the description should hint at the return type or content to be fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 4 parameters (level, limit, since, urlContains) are fully described in the input schema (100% coverage). The description only mentions level filtering and URL filtering briefly, adding no new semantic information beyond what the schema provides, hence baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reads browser console logs with level filtering, and specifies coverage (console.error/warn/log/debug, window.onerror, unhandledrejection). However, it does not explicitly differentiate from sibling tools like browser_errors, leaving some ambiguity about when to use which.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as browser_errors or browser_network. It only describes its own functionality and limitations, without any comparative or conditional usage advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_cookiesA

查看和管理浏览器Cookie。支持获取所有Cookie、按域名筛选、设置Cookie、清除Cookie。返回Cookie总数、每个Cookie的详细信息(名称、值、域名、路径、过期时间、安全标志等)。调试时可快速查看登录态、Token等认证信息。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo按名称筛选Cookie(仅action=get时生效)
actionNo操作类型:get(获取Cookie,默认)、clear(清除所有Cookie)、set(设置Cookie)get
cookieNo要设置的Cookie对象,包含 name、value 属性,可选 domain、path、expires 等(仅action=set时生效)
domainNo按域名筛选Cookie,如 .example.com(仅action=get时生效)

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses all key behaviors: read (get), write (set), and delete (clear). It notes that clear removes all cookies and set requires name/value. No side effects or permissions are mentioned, but the actions are clearly defined. The description covers the essential traits beyond what the schema provides.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (3 sentences) and front-loaded with the core purpose. Every sentence adds value: purpose, supported actions, output details, and practical use case (debugging auth). No redundant phrases.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (4 params, nested object) and no output schema, the description explains return values for 'get' action. For 'clear' and 'set', returns are implicit. The description is sufficient for a cookie management tool among many browser siblings. A complete description would mention return format for all actions, but the current one is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context: e.g., 'name filters when action=get', 'action default is get', 'cookie object required for set'. This provides meaningful usage hints beyond the schema, justifying a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: viewing and managing browser cookies with actions get, set, clear. It specifies what it does (get all cookies, filter by domain, set, clear) and the output (total count and details). This distinguishes it from sibling browser tools like browser_storage.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance is provided. The description implies usage for cookie management but does not differentiate from siblings like browser_storage or other cookie-related tools. The agent must infer context from the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_counterfactual_analyzeA

反事实根因分析 - 当测试失败时,分析"如果消除因素X(遮挡物/JS错误/HTTP错误/加载问题),测试是否还会失败",自动生成根因假设并按置信度排序,给出验证工具建议

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo输出格式:json(默认结构化数据)或 html(HTML 报告)json
failureContextNo可选,失败上下文描述(如"按钮不可见"、"表单提交失败"、"网络超时"等),用于匹配相关根因假设并提高置信度

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full responsibility. It discloses that the tool generates root cause hypotheses, ranks them by confidence, and suggests verification tools. It lists the factors analyzed and implies a non-destructive analytical operation. Missing details like required session state but overall transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the purpose, but it is somewhat lengthy and could benefit from clearer structure or bullet points for readability. Front-loads the main idea.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 2 parameters, no output schema, and many sibling diagnostic tools, the description adequately explains the core function and output nature (hypotheses with confidence, verification suggestions). It could mention the dependency on an active test failure context or session, but overall it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters described. The tool description does not add significant meaning beyond what the schema provides for 'format' and 'failureContext'. Baseline of 3 is appropriate as no extra value is added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs 'counterfactual root cause analysis' when a test fails, analyzing specific factors (blockers, JS errors, HTTP errors, loading issues) to generate hypotheses sorted by confidence and verification suggestions. This is a specific verb and resource, distinguishing it from sibling tools like browser_diagnose or error_analyze.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies the context as 'when a test fails', providing clear usage context. However, it does not explicitly mention when not to use the tool or suggest alternative sibling tools for different scenarios. Nonetheless, the counterfactual nature sets it apart.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_data_compareB

数据一致性比对:提取页面表格、卡片、列表数据,与期望数据或基准数据进行比对,识别数据缺失、格式错误、内容差异。支持多种数据源:DOM表格、JSON响应、localStorage、API返回数据。

ParametersJSON Schema
NameRequiredDescriptionDefault
apiBodyNoPOST请求的body数据
sessionNo浏览器会话ID
selectorNo目标数据区域的CSS选择器,如表格、卡片列表容器
apiMethodNoAPI请求方法GET
keyFieldsNo主键字段列表,用于数据匹配比对
storageKeyNolocalStorage/sessionStorage中的数据键名
strictModeNo严格模式:字段类型和顺序必须完全一致
apiEndpointNoAPI端点URL,用于获取比对数据
compareModeNo比对模式:dom_vs_api=页面数据与API响应比对,dom_vs_storage=页面数据与本地存储比对,dom_vs_expected=页面数据与期望数据比对,baseline_compare=与已保存的基线比对dom_vs_api
extractModeNo数据提取模式:table=表格,cards=卡片列表,list=普通列表,custom=自定义选择器table
baselineNameNo基线名称,用于baseline_compare模式
expectedDataNo期望数据,用于与页面数据比对
ignoreFieldsNo忽略比对的字段列表

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden for behavioral disclosure. It does not mention whether the tool is read-only, destructive, or requires authentication. The absence of such details leaves important behavioral traits unclear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph in Chinese. While it covers the essential points, it could be more concise and structured (e.g., bullet points) to improve readability for an AI agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 13 parameters with enums and nested objects, but no output schema. The description explains the comparison modes and data sources but lacks details on the output format, errors, or behavior for edge cases, making it partially incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so even without additional param details in the description, a baseline of 3 is appropriate. The description adds overall context but does not enhance individual parameter semantics beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool performs data consistency comparison between page data (tables, cards, lists) and expected or baseline data, identifying gaps. It lists multiple data sources and comparison modes, distinguishing it from sibling browser tools like visual or network analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description enumerates compare modes (dom_vs_api, etc.) and extraction modes, implying usage contexts. However, it does not explicitly state when to prefer this tool over alternatives (e.g., visual comparison or API probes) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_debugA

浏览器调试诊断工具(v1.9.5 起合并 browser_debug_report/browser_diagnose/debug_investigate)。通过 mode 参数区分子模式:report(默认,生成调试报告汇总页面状态、错误日志、网络错误)/ diagnose(自动诊断浏览器错误根因,返回 rootCause/confidence/suggestedFixes)/ investigate(输入问题症状,自动汇总 errors/events/network/DOM/storage/artifacts 并输出假设和证据链)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo调试模式:report(默认,生成调试报告)/ diagnose(诊断错误根因)/ investigate(问题调查与假设)report
focusNo关注的 URL/API 关键字,例如 /api/ai/summarize(mode=investigate 时使用)
limitNo网络和事件最多返回条数,默认 20/50(mode=investigate 时使用)
symptomNo问题现象,例如:点击 AI 要点后 403(mode=investigate 时使用)
expectedNo期望结果,例如:生成 AI 要点(mode=investigate 时使用)
selectorNo目标元素选择器,诊断该元素相关的错误(mode=diagnose 时可选,不传则诊断整个页面)
errorTypeNo聚焦诊断的错误类型:all(全部)、js(JS错误)、network(网络错误)、element(元素问题)、interaction(交互失败),默认 all(mode=diagnose 时使用)all
statusMinNo只关注状态码大于等于该值的网络记录(mode=investigate 时使用)
includeDomNo是否包含页面文本和元素摘要,默认 true(mode=report 时使用)
urlContainsNofocus 的别名,按 URL 过滤网络和事件(mode=investigate 时使用)
includeStorageNo是否包含存储信息,默认 false(mode=report 时使用);mode=investigate 时默认 true
includeArtifactsNo是否包含 artifacts 列表,默认 true(mode=investigate 时使用)
includeStackTraceNo是否包含 JS 错误堆栈分析,默认 true(mode=diagnose 时使用)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden and details what each mode does and what it returns (e.g., rootCause, suggestedFixes, hypothesis chain). It does not mention prerequisites like requiring an active session.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph that efficiently conveys the tool's purpose and modes without wasted words. It could be improved with bullet points for readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (13 parameters, 3 modes), the description provides a good overview of modes and outputs. However, it does not explicitly map parameters to modes or detail return values comprehensively since no output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context for the mode parameter but does not elaborate on each parameter beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is a browser debug diagnostic tool with three specific sub-modes (report, diagnose, investigate) and mentions it merges three predecessor tools, distinguishing it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each sub-mode (e.g., generate report, diagnose errors, investigate symptoms) but does not explicitly exclude alternative sibling tools for more focused operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_debug_reportA

生成当前浏览器调试报告,汇总页面状态、错误日志、网络错误、可选 DOM 与存储信息

ParametersJSON Schema
NameRequiredDescriptionDefault
includeDomNo是否包含页面文本和元素摘要,默认 true
includeStorageNo是否包含存储信息,默认 false

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full responsibility. It accurately describes the output as a report without side effects. It could mention that it's read-only and does not modify browser state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the tool's purpose and scope without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two optional boolean parameters and no output schema, the description covers the key aspects. It adequately informs the agent of what the report includes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions, just mentioning optional DOM/storage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it generates a comprehensive debug report summarizing page state, errors, network errors, and optionally DOM/storage. It distinguishes itself from sibling tools like browser_errors_aggregate and browser_network_detail.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when a broad debug report is needed, but does not explicitly state when to use or not use this tool versus others. No alternative tools are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_diagnoseA

自动诊断浏览器错误根因。分析控制台错误、页面错误、网络错误、元素状态、JS执行状态,定位问题根源(如元素未加载、JS未执行、网络超时、权限不足等)。返回诊断报告含 rootCause、confidence、suggestedFixes、affectedElements。

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorNo目标元素选择器,诊断该元素相关的错误(可选,不传则诊断整个页面)
errorTypeNo聚焦诊断的错误类型:all(全部)、js(JS错误)、network(网络错误)、element(元素问题)、interaction(交互失败)all
includeStackTraceNo是否包含JS错误堆栈分析,默认true

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It describes analysis of errors and return of a report, but does not disclose whether the tool is read-only, triggers side effects, or requires specific permissions. The behavioral disclosure is adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences) and front-loaded with the main purpose. It efficiently conveys the tool's action and output, though the first sentence is somewhat dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (diagnostic with 3 parameters, no output schema), the description adequately covers the return structure and analysis scope. It lacks details on edge cases or interpretation of confidence, but is sufficient for agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have schema descriptions (100% coverage). The description adds value by listing the return fields (rootCause, confidence, etc.), which goes beyond schema details and helps the agent understand diagnostic output.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool diagnoses browser error root causes by analyzing various error types and returns a report with specific fields. It distinguishes from sibling tools like browser_errors_aggregate by focusing on root cause analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for error diagnosis but does not explicitly state when to use this tool versus alternatives like browser_errors_aggregate or browser_network_detail. No when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_domA

Query detailed DOM state of a single element matched by CSS selector: visibility, text, attributes, computed style, and bounding box position.

中文详情:

  • 用途:查询指定 CSS 选择器元素的完整 DOM 状态,包括可见性、文本、属性、计算样式和位置坐标

  • 何时使用:点击/输入前确认元素存在且可见时;调试元素被遮挡问题时;验证元素属性(disabled/readonly/checked)时;获取元素位置坐标用于截图时

  • 输出:{ ok: boolean, selector: string, exists: boolean, visible: boolean, text: string, attributes: object, computedStyle: object, boundingBox: { x, y, width, height } }

  • 参数:

    • selector (string, 必填):要查询的 CSS 选择器

  • 错误:选择器无匹配返回 exists=false 但不抛出;选择器语法错误抛出 'Invalid selector'

  • 示例:{"selector":"#submit-btn"}

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorYesCSS 选择器

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains behavior: returns specific fields (exists, visible, text, etc.), error cases (no match returns exists=false, invalid selector throws error), and output structure. This is comprehensive for a read-only query.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is somewhat lengthy but well-organized with clear sections (English, then Chinese with subheadings). Every sentence adds value, and the structure aids readability. Not overly verbose for the information provided.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description covers output structure, parameter details, error behavior, and provides an example. All necessary context for an agent to use the tool correctly is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (CSS 选择器). The description adds context about the selector's purpose (query a single element) but no new technical or format details beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool queries detailed DOM state of a single element by CSS selector, specifying visibility, text, attributes, computed style, and bounding box. It uses specific verbs and resources, and the details help distinguish it from siblings like browser_click or browser_element_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use scenarios: before click/input to confirm element existence/visibility, debugging occlusion, verifying attributes, getting coordinates. It does not explicitly mention when not to use or alternative tools, but the guidance is clear and relevant.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_element_statusA

诊断元素状态(可见性、可交互性、加载状态、遮挡情况、事件绑定)。快速判断元素为何无法点击/输入,返回具体原因(如被遮挡、不可见、disabled、未加载、动画中、z-index问题等)和修复建议。

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorYes要诊断的元素选择器(必填)
checkEventsNo是否检查元素事件绑定(click/keydown/change等),默认true
checkVisibilityNo是否详细检查可见性(opacity、display、visibility、clip-path),默认true
checkInteractabilityNo是否检查可交互性(disabled、readonly、pointer-events),默认true

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses the tool's behavior: it checks specific states (visibility, interactability, loading, occlusion, event binding) and returns reasons and fix suggestions. It does not mention side effects, but the name and purpose imply a read-only diagnostic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words: the first states what the tool does, the second states its purpose and output. Front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple diagnostic checks) and lack of output schema, the description adequately explains what the tool checks and what it returns (reasons and fix suggestions). However, it does not detail the output structure, which could help agents parse results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters have schema descriptions (100% coverage). The tool description does not add additional meaning beyond the schema; it briefly summarizes the checks but does not elaborate on parameter semantics or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: diagnosing element status (visibility, interactability, loading, occlusion, event binding) to determine why an element cannot be clicked or input, and provides specific reasons and fix suggestions. It distinguishes itself from sibling tools like browser_click (clicking) and browser_find_element (finding) by focusing on status diagnosis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when an element is not clickable or inputable ('快速判断元素为何无法点击/输入'), but does not explicitly state when to use this tool versus alternatives like browser_diagnose or browser_a11y_check. No exclusions or alternative recommendations are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_emulate_deviceB

模拟指定设备(iPhone/Android/平板)的完整特性,包括 User-Agent、视口尺寸、触摸事件、像素密度等。支持预设设备列表和自定义设备配置。

ParametersJSON Schema
NameRequiredDescriptionDefault
touchNo是否启用触摸模拟
deviceNo设备名称或别名。可用预设:iPhone 14/15/16 系列、Android Pixel/Samsung Galaxy、Tablet iPad/Android、Desktop。
localeNo本地化设置zh-CN
timezoneNo时区设置Asia/Shanghai
viewportNo自定义视口(覆盖设备预设)
userAgentNo自定义 User-Agent(覆盖设备预设)
colorSchemeNo颜色方案偏好light
geolocationNo地理位置模拟
orientationNo屏幕方向portrait
permissionsNo要授权的权限,如 ['geolocation', 'notifications']

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose whether emulation is persistent, if it modifies browser session, or if it has destructive effects. Minimal behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that front-load the main purpose. No extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (10 params, nested objects) and no output schema, the description is brief. It omits details like return value, state persistence, and error conditions, leaving gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% description coverage, so baseline is 3. The description adds some value by summarizing capabilities (presets, custom config) but does not significantly enhance parameter understanding beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool simulates complete device characteristics (User-Agent, viewport, touch events, etc.) and supports presets and custom configurations. It is distinct from sibling tools like browser_navigate or browser_responsive_test.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives (e.g., browser_responsive_test). The description does not mention prerequisites, side effects, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_errorsA

统一错误管理工具(v1.9.5 起合并 browser_errors_aggregate 和 browser_errors_clear)。通过 mode 参数区分子模式:view(默认,查看本轮 Console/PageError/HTTP 4xx 5xx/静默失败错误)/ aggregate(去重聚合并返回 Top errors)/ clear(清空错误日志并创建新 checkpoint)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo错误管理模式:view(默认,查看本轮错误)/ aggregate(去重聚合并返回 Top errors,等价于已废弃的 browser_errors_aggregate)/ clear(清空错误日志并创建新 checkpoint,等价于已废弃的 browser_errors_clear)view
limitNoMCP服务错误日志最多返回条数,默认50
sinceNoISO时间戳,只返回该时间之后的错误
methodNo只返回指定HTTP方法的网络错误
statusMaxNo只返回状态码小于等于该值的网络记录
statusMinNo只返回状态码大于等于该值的网络记录
currentOnlyNo是否只返回当前checkpoint之后的错误,默认true
urlContainsNo只返回URL包含该关键字的网络错误
includeWarningsNo是否包含warning/warn日志,默认false

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the three modes and mentions that clear mode creates a new checkpoint. However, it does not discuss side effects, prerequisites, or limitations such as what happens to existing errors after clear, or the scope of 'this round' in view mode.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of a short paragraph. It front-loads the purpose and version information. However, it could be better structured with bullet points or clearer separation of modes for quicker scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 9 parameters and no output schema, the description provides the high-level behavior but lacks specifics such as the types of errors included, what 'Top errors' means in aggregate mode, or the checkpoint mechanism. It is adequate but not fully comprehensive for a tool with this many parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds value by explaining the mode parameter's equivalence to deprecated tools, which clarifies its semantics beyond the schema. For other parameters, the description does not add extra detail, but the schema itself is sufficiently descriptive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a unified error management tool and explicitly mentions it replaces two deprecated tools (browser_errors_aggregate and browser_errors_clear). It specifies three modes: view (default), aggregate, and clear, each with a brief explanation. This distinguishes it from its siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use the tool versus the deprecated siblings by stating it is the unified version since v1.9.5. It explains the three modes and their purposes. However, it lacks explicit when-not-to-use scenarios or alternative tool suggestions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_errors_aggregateA

收集或接收浏览器 Console/Network/PageError/DOM 摘要,去重聚合并返回 Top errors;默认不返回完整日志。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoTop errors 数量,默认 5
evidenceNo可选外部证据摘要
includeCurrentPageNo是否优先读取当前页面低 Token 证据,默认 true

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains deduplication, aggregation, and the default of not returning full logs, which is sufficient for a read-only aggregate operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that efficiently conveys the core functionality without filler. Every word contributes to understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given three parameters and no output schema, the description provides sufficient context for the aggregate operation. It could elaborate on what 'evidence' entails, but overall it is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers all parameters (100%), and the description does not add significant meaning beyond what the schema provides. The term 'Top errors' aligns with the limit parameter, but no new insights.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it collects browser error summaries, deduplicates, aggregates, and returns top errors. However, it does not explicitly differentiate from the sibling tool 'browser_errors', which likely provides similar functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for aggregated top errors and notes it does not return full logs, but lacks explicit guidance on when to use this tool versus alternatives like browser_errors for complete logs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_errors_clearA

清空当前浏览器运行时 Console/PageError/Network 错误日志并创建新的验证 checkpoint,用于隔离本轮验证错误。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the destructive action (clearing logs) and the creation of a checkpoint, though it does not detail side effects like impact on previous checkpoints or browser state beyond errors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that concisely conveys the action and purpose, with no extraneous words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-argument tool, the description is complete enough to understand the action and its purpose. Minor omission: the checkpoint's role in subsequent validation steps could be elaborated, but not essential.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters (baseline 4). The schema is empty, and the description does not add parameter information, which is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it clears browser error logs (Console/PageError/Network) and creates a verification checkpoint, distinguishing it from sibling tools like browser_errors (reads errors) and browser_errors_aggregate (aggregates errors).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'to isolate this round of verification errors' implies usage after a validation run to reset error state, providing context. No explicit when-not-to-use or alternatives are mentioned, but the sibling list offers differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_evalA

在当前浏览器页面执行调试 JavaScript 表达式并返回可序列化结果。返回值会自动脱敏 token、password、apiKey、Authorization 等敏感字段。

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes要执行的 JavaScript 表达式或函数体

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only mentions auto-masking of sensitive fields. Lacks disclosure of potential destructive side effects from arbitrary JS execution.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundancy, efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers basic purpose and return behavior but omits error handling, execution context, and serialization limitations for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of the single parameter; description adds that result is serializable and sensitive fields are masked, but no extra syntax guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it executes JavaScript expressions on the current browser page and returns serializable results, distinguishing it from sibling browser tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies debugging use case but does not explicitly state when to use versus alternatives like browser_click or browser_find.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_eventsA

运行时事件管理工具(v1.9.5 起合并 browser_events_clear)。通过 mode 参数区分子模式:view(默认,查看 browser_instrument 捕获的事件流,支持按类型/URL/方法/状态码过滤)/ clear(清空运行时事件并创建新的事件 checkpoint)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo事件管理模式:view(默认,查看事件流)/ clear(清空事件并创建新 checkpoint,等价于已废弃的 browser_events_clear)view
typeNo事件类型,如 fetch_start/fetch_end/xhr_end/click/input/console/window_error/unhandledrejection/route/storage_set
limitNo最多返回事件条数,默认 100
sinceNoISO 时间戳,只返回该时间之后的事件
methodNo只返回指定 HTTP 方法的 fetch/xhr 事件
statusMinNo只返回状态码大于等于该值的网络事件
urlContainsNo只返回页面 URL 或请求 URL 包含该关键字的事件

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses the destructive nature of clear mode ('清空运行时事件') and creation of a checkpoint, but does not mention authorization, rate limits, or other side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with purpose and version note. No redundant information, every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the main use cases (viewing and clearing events) and filtering options. Lacks details on output format or what a checkpoint is, but is mostly complete for a viewing/clearing tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. The description adds context by explaining the mode parameter's sub-modes and linking other parameters (type, urlContains, method, statusMin) to filtering capabilities, enhancing understanding beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a runtime event management tool with two modes (view and clear), and mentions it merged browser_events_clear since v1.9.5. However, it does not explicitly differentiate from other event-related siblings like browser_errors or browser_network.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use view vs clear via the mode parameter, but lacks explicit when-not-to-use or alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_events_clearA

清空 browser_instrument 捕获的运行时事件并创建新的事件 checkpoint。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It states the action (clear and create checkpoint) but does not disclose side effects, such as whether events are permanently deleted, whether ongoing instrumentation is affected, or if the checkpoint overwrites previous ones. This is insufficient for a destructive tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words. It efficiently communicates the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description covers the basic intent. However, as a destructive tool, it lacks important context such as irreversibility, effect on future captures, and definition of 'checkpoint'. More detail would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the description need not add parameter meaning. Baseline is 4 for 0 parameters; the description is clear and requires no further parameter explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: clearing runtime events captured by browser_instrument and creating a new checkpoint. The verb '清空' (clear) and resource 'runtime events' are specific, and the action distinguishes it from siblings like browser_events (read) and browser_instrument (start capture).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage after browser_instrument capture to reset state, but provides no explicit when/when-not guidance or mention of alternatives. An agent would infer usage context but lacks clear decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_findA

智能查找工具(v1.9.5 起合并 browser_find_element/find_page)。通过 mode 参数区分子模式:element(默认,按文本描述或 ARIA 角色智能定位页面元素)/ page(按目标页面关键词定位页面,支持 SPA 按钮导航发现)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo查找模式:element(默认,按文本/角色定位元素)/ page(按关键词定位页面)element
roleNo元素角色:button/link/input/textbox/checkbox/radio/combobox 等(mode=element 时使用)
textNo要查找的元素文本(mode=element 时必填)
limitNo返回数量,默认 5(mode=element 时使用)
targetNo目标页面类型:login/signup/home/dashboard/admin/settings/profile/search/cart/checkout/forgot-password/reset-password/logout/all(mode=page 时必填)
baseUrlNo基础 URL,用于尝试常见路径。不指定时从当前页面 URL 推导(mode=page 时使用)
tagNameNo标签名过滤,如 button/a/input/div 等(mode=element 时使用)
navigateNo是否导航到发现的页面(如果还没在目标页面),默认 false(mode=page 时使用)
onlyVisibleNo只返回可见元素,默认 true(mode=element 时使用)

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full disclosure burden. It mentions supporting SPA button navigation discovery for page mode, but lacks details on error handling, return format, or the 'intelligent' aspect. Adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that front-load the tool's purpose and version, then concisely explain modes. No redundant information. Efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters and no output schema or annotations, the description covers the two modes but omits details on return values, error conditions, or limitations (e.g., visibility, limit behavior). Adequate for basic use but incomplete for complex scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the two modes and noting SPA navigation support beyond the schema descriptions. It clarifies the purpose of each mode and some parameter usage context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a combined find tool for elements and pages, with explicit mode differentiation. It distinguishes itself from sibling tools like browser_find_element and browser_find_page by noting it is a merge since v1.9.5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies when to use each mode (element vs page) and mentions SPA button navigation discovery for page mode. However, it does not explicitly state when not to use this tool versus alternatives, though the mode explanation provides clear context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_find_elementA

Smart element locator: find visible DOM elements by text description or ARIA role using multi-strategy matching (exact text > contains text > placeholder > aria-label > title/alt > fuzzy), returning CSS selectors and confidence scores sorted by score desc.

中文详情:

  • 用途:按自然语言文本描述或角色智能定位页面元素,返回 CSS 选择器、置信度和元素信息

  • 何时使用:不知道选择器但知道按钮文案时;UI 文案变化后定位元素时;批量自动化脚本根据文案定位时;测试无 id/name 属性的元素时

  • 输出:{ ok: boolean, results: array, total: number } — 每项含 { selector, text, role, tagName, confidence, visible }

  • 参数:

    • text (string, 必填):要查找的元素文本

    • role (string, 可选):元素角色,如 button/link/input/textbox/checkbox/radio/combobox

    • tagName (string, 可选):标签名过滤,如 button/a/input/div

    • onlyVisible (boolean, 可选):只返回可见元素,默认 true

    • limit (number, 可选):返回数量,默认 5

  • 错误:无匹配元素返回空数组但 ok=true;text 为空抛出 'Text is required'

  • 示例:{"text":"提交","role":"button","limit":3}

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNo元素角色:button/link/input/textbox/checkbox/radio/combobox 等(可选)
textYes要查找的元素文本
limitNo返回数量,默认 5
tagNameNo标签名过滤,如 button/a/input/div 等(可选)
onlyVisibleNo只返回可见元素,默认 true

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description carries full burden. It discloses the matching strategy hierarchy (exact text > contains text > placeholder > aria-label > title/alt > fuzzy), error handling (empty array with ok=true for no match, error for empty text), and the return structure with confidence scores and visibility flag. This is comprehensive, though it could mention potential side effects or performance impacts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with sections for matching strategy, usage, output, parameters, errors, and examples. It is concise but includes both English and Chinese text, which may be redundant for an English-only agent. Nevertheless, every part adds useful information, and it is not overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description fully explains the return format ({ ok, results, total }) and the content of each result item. It covers all necessary aspects: purpose, matching strategy, parameter details, error handling, and an example. For a tool with 5 parameters and no annotations, this is complete and well-suited for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers all parameters with descriptions (100% coverage), so baseline is 3. The description adds value by specifying default values for onlyVisible (true) and limit (5), clarifying the role parameter values with examples, and adding error handling info for the text parameter. This extra context justifies a score of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as a 'Smart element locator' that finds visible DOM elements by text or ARIA role, using a multi-strategy matching approach. It distinguishes itself from sibling tools like browser_click or browser_find by specifying that it returns CSS selectors with confidence scores, and it is intended for cases where the selector is unknown but the text is known.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use scenarios in Chinese: when selector is unknown but button text is known, when UI text changes, for batch automation, and for testing elements without id/name. Although it doesn't explicitly state when not to use it, the given contexts are clear and helpful for the agent to decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_find_pageA

Smart page discovery: locate target page (login/signup/home/dashboard/admin/settings/profile/etc.) by priority chain (URL path > title > CSS selector > SPA button text > nav region > visible text), returns matched links and suggested navigation URL; optionally auto-navigate.

中文详情:

  • 用途:根据目标页面关键词(login/signup/home/dashboard/admin/settings/profile 等)快速定位页面,支持 SPA 应用的按钮导航发现

  • 何时使用:测试入口页(登录/注册/后台)未直接知晓 URL 时;SPA 应用通过按钮导航时;导航回归测试时;权限切换后定位目标页时

  • 输出:{ ok: boolean, target: string, matched: boolean, matchMethod: string, score: number, links: array, buttons: array, suggestedUrl: string, navigated: boolean }

  • 参数:

    • target (string, 必填):目标页面类型,可选 login/signup/home/dashboard/admin/settings/profile/search/cart/checkout/forgot-password/reset-password/logout/all

    • navigate (boolean, 可选):是否自动导航到发现的页面,默认 false

    • baseUrl (string, 可选):基础 URL,用于尝试常见路径,不指定时从当前 URL 推导

  • 错误:target 值非法抛出 'Invalid target';未匹配且 navigate=true 时返回 matched=false

  • 示例:{"target":"login","navigate":true,"baseUrl":"https://example.com"}

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYes目标页面类型:login / signup / home / dashboard / admin / settings / profile / search / cart / checkout / forgot-password / reset-password / logout / all
baseUrlNo基础URL,用于尝试常见路径。不指定时从当前页面URL推导
navigateNo是否导航到发现的页面(如果还没在目标页面),默认false

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Details priority chain order, output fields (matched, matchMethod, score, etc.), error conditions ('Invalid target' for invalid target value), and behavior when navigate=true fails. Fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded English summary followed by structured Chinese details. Slightly verbose due to repetition, but justified given the complexity. Every section serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema, description provides output structure, error handling, use cases, and an example. Complete for agent to decide and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds value beyond schema: explains target enum values, default for navigate (false), derivation of baseUrl from current URL when omitted, and example usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Smart page discovery: locate target page...' with specific verb (locate) and resource (target page). It distinguishes from siblings by specifying the priority chain and supported target types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use scenarios in Chinese (e.g., when URL unknown, SPA navigation, regression tests). Lacks explicit alternatives among siblings but covers context well.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_flowA

多步浏览器流程编排工具(v1.9.5 起合并 browser_chain 和 browser_batch),按步骤依次执行 open/click/type/wait/assert/eval/screenshot/snapshot/scroll/hover/select/navigate/har/step/clearErrors 等操作,每步自动捕获证据(截图+快照)。step.type 与 step.action 互为别名,二者至少传一个。通过 mode 参数区分子模式:flow(默认,标准编排)/ chain(链式,每步检查 console+network 错误,等价于 browser_chain)/ batch(批量,受 maxSteps 限制,等价于 browser_batch)。与 validation_flow 的区别:browser_flow 侧重浏览器操作编排,支持更多浏览器原生操作(open/har/snapshot/scroll/hover/select 等);validation_flow 侧重验证语义,仅支持 navigate/click/type/wait/eval/screenshot 6 种操作。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo编排模式:flow(默认,标准多步编排)/ chain(链式,每步检查 console+network 错误,等价于已废弃的 browser_chain)/ batch(批量,受 maxSteps 限制,等价于已废弃的 browser_batch)flow
stepsYes流程步骤列表,按顺序执行。每个步骤的 type/action 字段互为别名,至少传一个。chain 模式下也可使用 actions 字段名(向后兼容 browser_chain)
actionsNochain 模式下 steps 的别名(向后兼容 browser_chain)。优先使用 steps 字段
maxStepsNobatch 模式专用:最大步骤数限制(默认 20)。超出则报错
clearErrorsNo流程开始前是否清空运行时错误日志,默认 true
stopOnErrorNochain 模式专用:某步骤失败后是否停止(默认 true)。等价于 continueOnError 的反义,stopOnError=true 等价于 continueOnError=false
includeConsoleNochain 模式专用:每步是否检查控制台错误(默认 true)
includeNetworkNochain 模式专用:每步是否检查网络错误(默认 true)
continueOnErrorNo某步骤失败后是否继续执行后续步骤,默认 false(失败即停止)。chain 模式下默认 false(等价于 stopOnError=true)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description fully bears the burden. It discloses automatic evidence capture (screenshot+snapshot) per step, the alias between type and action, mode-specific behaviors (chain checks console/network errors, batch limits steps), and the stop-on-error/continue-on-error options. While it does not cover auth requirements or session management, these are likely handled by other tools and the description provides adequate transparency for the core behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (4-5 lines in Chinese), front-loaded with the core purpose, and well-structured: it states the tool function, lists operations, explains aliases, describes modes, and contrasts with a sibling. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters, nested steps, and no output schema, the description is fairly complete: it covers purpose, mode semantics, step aliases, and sibling differentiation. However, it does not describe the return value or specify the requirement for an active browser session (though implied by the sibling list). A minor gap reduces it from perfect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, baseline is 3. The description adds value by explaining the overall workflow, the mode parameter's semantics (flow/chain/batch with deprecated tool equivalences), the type/action alias, and the auto-evidence capture. This contextual information goes beyond the schema's field-level descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a multi-step browser workflow orchestrator, lists supported operations, and explicitly distinguishes it from validation_flow by detailing the different focus and supported actions. The verb '编排' (orchestrate) and resource '浏览器流程' (browser flow) are specific, and the comparison with a sibling provides differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use browser_flow vs validation_flow, explains the mode parameter and its sub-modes (flow/chain/batch) with their equivalences to deprecated tools, and describes the type/action alias. It lacks an explicit 'when not to use' statement but the comparison effectively guides selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_form_fillA

表单填充工具(v1.9.5 起合并 browser_smart_fill)。通过 mode 参数区分子模式:basic(默认,批量填充表单字段并可选提交检测,支持 CSS 选择器模式和字段名模式)/ smart(智能填充单个字段,按 fieldType 自动生成符合格式的测试数据,等价于已废弃的 browser_smart_fill)。

中文详情:

  • 用途:批量或智能填充表单字段并可选提交检测

  • 何时使用:登录/注册表单批量填写时;多字段表单快速测试时;表单提交流程端到端验证时;需要 mock 数据填充表单时

  • 输出:basic 模式返回 { ok, url, filledFields, submitResult, timestamp };smart 模式返回 { success, selector, fieldType, value }

  • 参数:

    • mode (string, 可选):basic(默认)/ smart

    • url (string, basic 模式必填):目标页面 URL

    • selector (string, 可选):表单选择器(basic 模式)或字段选择器(smart 模式必填)

    • fields (object, basic 模式可选):手动指定的字段值

    • fieldType (string, smart 模式必填):字段类型(email/phone/name/address/idCard/number/text/url/date/password)

    • options (object, smart 模式可选):数据生成选项

    • submit (boolean, 可选):basic 模式填充后是否自动提交,默认 true

    • submitSelector (string, 可选):提交按钮选择器

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标页面URL(必填)
modeNo填充模式:basic(默认,批量填充表单)/ smart(智能填充单个字段,自动生成符合 fieldType 的测试数据,等价于已废弃的 browser_smart_fill)basic
fieldsNo手动指定的字段值。支持两种key格式:1) CSS选择器模式(key以#/./[/[/>/:/*开头,如 {"#login-email": "user@test.com", "#login-password": "pass123"});2) 字段名模式(key为input的name属性,如 {"email": "user@test.com", "password": "pass123"})。CSS选择器模式的字段会直接用Playwright定位填充,字段名模式的字段会通过表单自动发现机制匹配。
submitNo填充后是否自动提交
optionsNosmart 模式可选:数据生成选项(如 locale、format 等)
selectorNo表单选择器,默认 'form'form
fieldTypeNosmart 模式必填:字段类型(email/phone/name/address/idCard/number/text/url/date/password)
submitSelectorNo提交按钮选择器,默认自动查找 submit 按钮

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description covers behavior well: filling forms, optional submission, mode differences, and output shapes. It does not mention prerequisites or handling of missing fields, but overall is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is well-structured with English summary followed by detailed Chinese sections. Every sentence adds useful information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Comprehensive coverage of all parameters, modes, output shapes, and usage scenarios. Despite no output schema, it describes return values. Sibling context and deprecation note are included.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%. The description adds value beyond schema by explaining CSS selector vs field name patterns for 'fields' parameter and providing output format examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a form filling tool with two modes (basic and smart), and explicitly distinguishes itself from the deprecated browser_smart_fill sibling. Verb 'fill' with resource 'form' is specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '中文详情' section provides explicit use cases: login/registration forms, multi-field forms, end-to-end submission, mock data filling. It also differentiates when to use basic vs smart mode.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_form_validateA

Auto-detect form field validation rules (required, pattern, length, etc.) and run a complete validation flow. Detects HTML5 validation attributes and outputs a detailed report per field.

中文详情:

  • 用途:自动检测表单字段验证规则(必填、格式、长度等),执行完整表单验证流程并输出详细验证报告

  • 何时使用:测试表单校验规则实现是否正确时;提交空表单验证必填提示时;测试 email/url 格式校验时;验证最小/最大长度限制时

  • 输出:{ ok: boolean, url: string, formSelector: string, totalFields: number, fields: array, validationPassed: boolean } — 每项含 { selector, name, type, required, pattern, minLength, maxLength, valid, message }

  • 参数:

    • url (string, 可选):要检测表单的目标 URL,不提供则使用当前页面

    • formSelector (string, 可选):表单选择器,不提供则自动检测页面第一个表单

    • validateSubmit (boolean, 可选):是否尝试提交表单检测验证,默认 true

    • checkRequired (boolean, 可选):是否检测必填字段,默认 true

    • checkPattern (boolean, 可选):是否检测格式模式(email、url 等),默认 true

    • checkLength (boolean, 可选):是否检测长度限制,默认 true

  • 错误:页面无表单抛出 'No form found';URL 不可达抛出 'Navigation failed'

  • 示例:{"url":"https://example.com/register","formSelector":"#signup-form","checkRequired":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo要检测表单的目标 URL。如果不提供则使用当前页面。
checkLengthNo是否检测长度限制
checkPatternNo是否检测格式模式(email、url等)
formSelectorNo表单选择器。如果不提供则自动检测页面第一个表单。
checkRequiredNo是否检测必填字段
validateSubmitNo是否尝试提交表单检测验证

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It reveals behaviors: detects HTML5 validation attributes, outputs a detailed report with per-field results, and throws specific errors ('No form found', 'Navigation failed'). It also describes the output shape and default behaviors of parameters. More could be said about side effects or permissions, but it is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is thorough but somewhat lengthy, with repeated information in English and Chinese. The structure is good: English summary followed by detailed Chinese sections. However, it could be more concise by merging the English and Chinese parts or reducing redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description fully details the return value shape, errors, and all 6 parameters. It accounts for edge cases (no form, navigation failure). With no output schema, the description compensates well, making the tool's behavior predictable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by providing Chinese explanations for each parameter, an example usage, and contextual details like '自动检测页面第一个表单' for formSelector. This goes beyond the schema descriptions, improving clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool auto-detects form field validation rules and runs a complete validation flow. It uses specific verbs ('auto-detect', 'run') and resource ('form field validation rules'). It distinguishes from siblings like browser_form_fill (form filling) and browser_smoke_test (general testing) by focusing on validation detection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section '何时使用' explicitly lists use cases: testing validation rule implementation, verifying required fields, checking email/url format, and length limits. This provides clear context for when to use. However, it does not explicitly state when NOT to use or mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_full_auditA

对当前页面执行全量错误审计,聚合所有错误来源(CDP console + 注入脚本 + 网络 4xx/5xx + 响应体静默失败 + 资源加载错误 + 未处理的 Promise 拒绝 + 跨域脚本错误)。

返回分层报告:

  • summary: 各类别错误计数

  • consoleErrors: CDP 控制台错误列表

  • injectedErrors: 注入脚本捕获的错误列表(含堆栈)

  • networkErrors: HTTP 4xx/5xx 请求列表

  • silentFailures: HTTP 200 但响应体含 SQL 错误/异常信息的请求

  • resourceErrors: 资源加载失败(img/script/link 加载错误)

  • unhandledRejections: 未处理的 Promise 拒绝

  • crossOriginErrors: 跨域脚本错误(Script error.)

  • runtimeErrors: 运行时 JS 异常(含堆栈)

  • diagnostics: 诊断建议

使用场景:在页面加载完成后或交互操作后,调用此工具进行全面健康检查。

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNoISO 时间戳,只返回该时间之后的错误。默认返回所有未清除的错误
includeWarningsNo是否包含 console.warn 级别的消息

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It thoroughly details what the tool returns (nine error categories with diagnostics) and implies it is a read-only audit (no mention of side effects). However, it does not explicitly confirm that it modifies no state, nor does it discuss permissions, rate limits, or destructive potential. The absence of annotations puts more burden on the description, and while it discloses the output structure well, it leaves some behavioral traits unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured into two paragraphs: the first provides the purpose and error sources, the second lists the return structure as a bullet-like list. It is front-loaded with the key action and scope. While slightly verbose (listing all nine return fields), each sentence adds value by clarifying what the tool captures. No redundancy, but could be trimmed slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (aggregating nine error types) and the absence of an output schema, the description provides a comprehensive breakdown of the return structure with clear categories. It also specifies the usage context (after page load or interaction) and the default behavior for `since`. This fully compensates for the missing output schema, making the tool's behavior and results predictable for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema coverage is 100% (both parameters have descriptions in the schema). The tool description does not add extra meaning beyond what the schema already provides; it does not elaborate on when to use `since` or `includeWarnings`. Since schema_description_coverage is high, a baseline of 3 is appropriate. The description adds no value beyond the schema for parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with a specific verb '执行全量错误审计' (perform full error audit) and clearly identifies the resource as '当前页面' (current page). It then enumerates all aggregated error sources (CDP console, injected scripts, network 4xx/5xx, etc.), which unambiguously defines the tool's scope. This level of specificity distinguishes it from sibling tools like browser_errors_aggregate (likely a lighter aggregation) and browser_click_audit (focus on click interactions).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool: '在页面加载完成后或交互操作后' (after page load or interaction). It provides clear context for appropriate invocation. However, it does not mention cases where the tool should not be used (e.g., if only specific error types are needed) or explicitly compare against alternatives like browser_errors_aggregate. Nonetheless, the guidance is practical and sufficient for most use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_full_regressionA

强制执行的浏览器全功能闭环回归验证。自动发现页面上所有可交互功能(链接和按钮),逐个点击验证功能正常工作,检查 Console/Network 错误,验证每个功能的闭环完整性(可进入、可返回)。默认目标 URL: http://localhost:5173

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo目标页面 URL(默认: http://localhost:5173)http://localhost:5173
timeoutNo全局超时秒数
visibleNo是否显示浏览器窗口(true 时弹出浏览器,你可实时查看点击过程、发现工具操作失误,false 时后台运行基于截图证据)
maxDepthNo菜单遍历最大深度
maxItemsNo最大点击次数
includeSubMenusNo是否包含子菜单

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given no annotations, the description carries the burden. It describes automatic discovery, clicking, error checks, and cycle verification. It mentions visible mode for real-time monitoring, but lacks disclosure of potential side effects like navigation, state changes, or errors triggered by exhaustive clicking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph with useful detail, but it could be more structured (e.g., bullet points). It front-loads the main purpose and then lists behavior. No wasted sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 6 parameters and no output schema, the description provides a good overview of what it does but lacks details on return values, error handling, or when it might fail. It is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3 is appropriate. The description adds context for visible (shows browser for monitoring) and default URL, but other parameters like timeout, maxDepth, maxItems, includeSubMenus have meanings that are clear from names and schema descriptions. The description does not significantly enhance understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it performs 'full-feature closed-loop regression testing', automatically discovering and clicking interactive elements, checking for errors, and verifying cycle completeness. It distinguishes itself from sibling tools like browser_smoke_test or browser_chain by specifying a comprehensive regression scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for exhaustive regression testing but does not provide explicit guidance on when to use vs alternatives, prerequisites, or when to avoid. The phrase 'forced execution' suggests it may run regardless of state, but no further context is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_har_exportA

将当前采集的网络记录导出为简化 HAR JSON 文件,包含请求/响应头、请求/响应体摘要、状态码和耗时。输出自动脱敏。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo导出的 HAR 文件名,不含扩展名
sinceNoISO 时间戳,只导出该时间之后的记录
methodNoHTTP 方法,如 GET/POST/PUT
containsNoURL 过滤关键字,兼容旧参数
statusMaxNo只导出状态码小于等于该值的记录
statusMinNo只导出状态码大于等于该值的记录
currentOnlyNo是否只导出当前 checkpoint 之后的记录,默认 true
urlContainsNoURL 过滤关键字

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses key behaviors: export format (simplified HAR), content included, and automatic desensitization. However, it does not mention side effects, permissions, file location, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence that front-loads the main action and key inclusions. It is concise with no wasted words, though a structured list might improve readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 optional parameters and no output schema, the description provides sufficient context about what the tool produces but lacks detail on parameter interplay, output file naming/location, and how desensitization works. It adequately covers the essential aspects for a simple export tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema documentation covers all 8 parameters with descriptions (100% coverage). The tool description does not add extra parameter meaning beyond the schema, so baseline of 3 is appropriate. It adds value on output format but not on parameter usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool exports currently collected network records as a simplified HAR JSON file, listing included elements (headers, body summaries, status codes, time) and mentioning automatic desensitization. It distinguishes from siblings like browser_network (likely real-time view) and browser_network_detail (likely detailed raw data).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies use when a simplified HAR export is needed, but it does not explicitly state when to use this tool versus alternatives like browser_network or browser_network_detail. No exclusions or alternative recommendations are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_highlightA

Highlight a specific element on the page with a colored border and shadow for human observation and debugging. Effect persists until page refresh.

中文详情:

  • 用途:在页面上高亮显示指定元素(默认红色边框和阴影),便于人工观察和调试

  • 何时使用:调试元素定位问题时;演示/评审时强调某个元素;视觉走查时标记可疑元素;自动化失败后人工复核时

  • 输出:{ ok: boolean, selector: string, color: string, timestamp: string }

  • 参数:

    • selector (string, 必填):要高亮的元素选择器

    • color (string, 可选):高亮颜色,支持 CSS 颜色值,默认 red

  • 错误:selector 无匹配抛出 'element not found';color 值非法会使用默认红色

  • 示例:{"selector":".error-message","color":"#ff6600"}

ParametersJSON Schema
NameRequiredDescriptionDefault
colorNo高亮颜色,支持CSS颜色值,默认为红色(red)
selectorYes要高亮的元素选择器

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavior: effect persists until page refresh, error handling for unmatched selector ('element not found') and invalid color (defaults to red), and the output format. This is comprehensive for a simple tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with an English summary followed by a detailed Chinese section using bullet points for usage, output, parameters, errors, and example. Every sentence serves a purpose, and no information is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, usage guidelines, parameter details, error scenarios, and behavioral traits. Given the simple nature of the tool and no output schema, it provides everything needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is 100%, the description adds value by explaining that color supports CSS color values and defaults to red, and provides an example JSON. This goes beyond the schema's minimal descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool highlights a specific element with a colored border and shadow for human observation and debugging, with the effect persisting until page refresh. This specific verb+resource combination distinguishes it from siblings like browser_find_element or browser_screenshot_element.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese description explicitly lists when to use: debugging element positioning, demo/review emphasis, visual walkthrough marking suspicious elements, and manual review after automation failure. While it doesn't list when not to use, the guidance is clear and provides practical contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_hoverA

Hover the mouse over a DOM element matched by CSS selector to trigger hover effects, tooltips, and dropdown menus.

中文详情:

  • 用途:将鼠标悬浮到指定 CSS 选择器元素上,触发 hover 效果、tooltip、下拉菜单等交互

  • 何时使用:测试二级菜单展开时;验证 tooltip 显示内容时;触发 hover 状态样式变化时;测试 hover 触发的异步加载时

  • 输出:{ ok: boolean, hoveredSelector: string, timestamp: string }

  • 参数:

    • selector (string, 必填):目标元素的 CSS 选择器

  • 错误:选择器无匹配抛出 'element not found';元素不可见抛出 'element not visible'

  • 示例:{"selector":".user-menu-trigger"}

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorYes目标元素的 CSS 选择器

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Although annotations are absent, the description explains the tool's behavior (hover triggers effects) and discloses output format, error types, and example. It does not specify certain details like whether the hover is persistent, but for a simple hover action, this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise with a single English sentence followed by structured bullet points in Chinese. It front-loads the purpose and efficiently uses bullet points for details. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description covers output format, errors, and an example. It is complete enough for an agent to use correctly. It could optionally mention the type of hover event, but not required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one parameter (selector) with 100% schema description coverage. The description adds the same description as the schema for the parameter but provides additional context like errors and output. No extra semantics beyond the schema, so baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is for hovering over a DOM element by CSS selector to trigger hover effects, tooltips, and dropdown menus. It is distinct from sibling tools like browser_click, browser_type, etc., as it performs a hover action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists four scenarios when to use this tool, such as testing submenu expansion and verifying tooltip content. It provides clear context and appropriate use cases, though it does not list alternatives or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_instrumentB

向当前页面注入运行时调试探针,捕获 fetch/XHR、console error/warn、全局错误、点击、输入、路由和 storage 变化。

ParametersJSON Schema
NameRequiredDescriptionDefault
headlessNo无浏览器时是否以 headless 模式打开,默认 false

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description fails to disclose side effects like performance impact, persistence of probes, or whether it modifies page state. Only lists captured events.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single short sentence, front-loaded with action, lists capabilities efficiently. No redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks return value description, post-conditions, or linkage to retrieval tools. Incomplete for an agent to understand full workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter; description adds no extra meaning beyond the schema's parameter description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'inject' and resource 'runtime debugging probes', and lists specific captured events (fetch, errors, clicks, etc.), distinguishing it from sibling tools like browser_events.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., browser_events, browser_console). The description does not specify prerequisites or post-invocation steps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_lighthouse_auditA

Run a Google Lighthouse audit on the current page, returning Performance, Accessibility, Best Practices, and SEO scores plus key diagnostic advice. Each audit spins up an isolated headless Chrome instance (no interference with the active session) and shuts down afterwards.

中文详情:

  • 用途:对当前页面执行 Google Lighthouse 审计,返回性能、可访问性、最佳实践、SEO 评分及关键诊断建议,每次审计启动独立 Headless Chrome 实例并自动关闭

  • 何时使用:上线前综合质量评估时;性能/可访问性/SEO 多维度评分时;Lighthouse 评分回归监控时;Core Web Vitals 与 SEO 优化建议获取时

  • 输出:{ ok: boolean, url: string, scores: { performance, accessibility, bestPractices, seo }, metrics: object, diagnostics: array, reportPath: string } — metrics 含 lcp/fid/cls/tbt/si

  • 参数:

    • url (string, 可选):要审计的 URL,默认为当前浏览器页面的 URL

    • categories (array, 可选):要审计的类别,可选 performance/accessibility/best_practices/seo,默认全部

    • formFactor (string, 可选):模拟设备类型,可选 mobile/desktop,默认 desktop

    • throttling (boolean, 可选):是否模拟网络节流(3G 模拟),仅 mobile 模式下推荐启用,默认 false

  • 错误:URL 不可达抛出 'Audit failed';Lighthouse 启动失败抛出 'Lighthouse launch failed'

  • 示例:{"url":"https://example.com","categories":["performance","accessibility"],"formFactor":"mobile","throttling":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo要审计的 URL。默认为当前浏览器页面的 URL
categoriesNo要审计的类别,默认全部
formFactorNo模拟设备类型desktop
throttlingNo是否模拟网络节流(3G 模拟),仅 mobile 模式下推荐启用

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description fully compensates: it discloses isolated headless Chrome instance, no session interference, shutdown after audit, error messages (Audit failed, Lighthouse launch failed), and parameter behavior like throttling only recommended for mobile. This is comprehensive for behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: English summary first, then Chinese details breaking into purpose, when-to-use, output format, parameters, errors, and example. Every sentence adds value, no redundancy, front-loaded with key info.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters, no output schema, and no annotations, the description covers all necessary aspects: function, usage, output structure (scores, metrics, diagnostics, reportPath), parameter details, error handling, and example. Nothing missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds meaning beyond schema: it clarifies throttling only useful for mobile, provides example JSON, explains categories as array of specific enum values, and defaults. This enhances understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool runs a Google Lighthouse audit, returning specific scores and diagnostic advice. It uses a specific verb 'Run' and identifies the resource 'Lighthouse audit', distinguishing it from other browser tools that may focus on other aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes explicit when-to-use scenarios (pre-release quality evaluation, multi-dimension scoring, regression monitoring) in both English and Chinese. It does not explicitly state when not to use or compare with sibling tools like browser_a11y_check, but the context implies it is for comprehensive audit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_locatorA

选择器定位工具(v1.9.5 起合并 browser_locator_suggest/validate)。通过 mode 参数区分子模式:suggest(默认,基于已有 selector 命中元素或 target 文本生成稳定推荐选择器)/ validate(验证选择器稳定性,统计匹配数量并输出评分和风险)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo定位模式:suggest(默认,生成推荐选择器)/ validate(验证选择器稳定性)suggest
targetNo无 selector 时按可见文本查找目标元素(mode=suggest 时使用)
selectorNo已有选择器。mode=suggest 时基于命中元素属性生成推荐;mode=validate 时为必填,要验证的选择器
sessionNameNo浏览器会话名称(所有模式通用)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the two behavioral modes and mentions output for validate (score and risk), but does not describe side effects, destructiveness, permissions, or error handling. It adds some value beyond the schema but lacks comprehensive behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences), front-loads the purpose and merge history, and efficiently presents the mode distinction. It wastes no words, though it could be slightly more structured (e.g., bullet points for modes).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (two modes, no output schema), the description covers the main behaviors and explains the merge of two sibling tools. It lacks return value details for suggest mode and error handling, but for a selector tool with well-documented schema, it is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context by explaining the two modes and that suggest can use target text, but it largely restates the schema's parameter descriptions. It provides overall integration but no additional semantics per parameter beyond what the schema already offers.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is a 'selector positioning tool' combining suggest and validate modes. It specifies the verb (定位/position) and resource (selector), and distinguishes from sibling tools like browser_locator_suggest and browser_locator_validate by noting the merge.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains when to use suggest mode (default, for generating stable selectors from existing selector or target text) versus validate mode (for verifying selector stability with match counts and risk scores). It does not explicitly mention when not to use or alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_locator_suggestA

基于已有 selector 命中的元素或 target 文本查找可见元素,按可访问属性生成更稳定的推荐选择器、评分、风险和 fallback 列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
targetNo无 selector 时按可见文本查找目标元素
selectorNo已有选择器,命中元素后基于其属性生成推荐
sessionNameNo浏览器会话名称

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must cover behavioral traits. It discloses that it finds visible elements and generates recommendations, implying read-only behavior. However, it does not explicitly state safety (e.g., no side effects), permissions needed, or rate limits, leaving some ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that efficiently conveys input conditions, action, and output components. No wasted words; front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lists output components (recommendations, scores, risks, fallback list) which is good since there is no output schema. However, it fails to clarify the conditional requirement (either selector or target required) implied by the anyOf schema, which is important context for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter has a clear description. The tool description does not add extra meaning beyond the schema, meeting the baseline expected for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it finds visible elements based on existing selector or target text and generates more stable recommended selectors, scores, risks, and fallback lists. This is specific and distinguishes it from sibling tools like browser_locator (single locator) and browser_locator_validate (validation).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs. alternatives like browser_locator, browser_find, or browser_locator_validate. The description implies usage when an existing selector or target is available, but does not state when not to use or mention alternative conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_locator_validateA

验证选择器稳定性,统计匹配数量、可见数量,并按 role/label/placeholder/data-testid/text/id/css/xpath 等规则输出分数、风险、警告和建议。

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorYes要验证的 Playwright/CSS/text/role 选择器
sessionNameNo浏览器会话名称

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that the tool counts matches and visibility, and outputs scores, risks, warnings, and suggestions by rule type. However, it does not state whether the tool is read-only, if it requires a specific page state, whether it modifies browser state, or any error conditions. Basic behavioral traits are provided but not comprehensively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that covers the essential purpose and output, but it is somewhat dense and could be more structured (e.g., separate sentences for purpose, input, output). It is efficient but not optimally front-loaded for quick scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should explain return values in detail. It mentions scores, risks, warnings, and suggestions but does not specify their format, possible values, or how to interpret them. It also lacks information on error handling, prerequisites (e.g., page must be loaded with the element), or side effects. For a validation tool, this is insufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds no additional meaning beyond what the schema already provides for the two parameters ('selector' and 'sessionName'). The schema descriptions are already informative ('要验证的 Playwright/CSS/text/role 选择器'). Baseline 3 is appropriate as the description does not need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: validating selector stability. It specifies the verb '验证' (validate) and the resource '选择器' (selector), and details what statistics and outputs are computed (counts, scores, risks, warnings, suggestions) with explicit reference to rule types (role, label, etc.). This distinguishes it from sibling tools like browser_locator (find locators) and browser_locator_suggest (suggest locators).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (to validate selector stability) but does not explicitly state when to use it over alternatives like browser_locator or browser_locator_suggest. No when-not-to-use or prerequisite information is provided. The usage context is inferred rather than explicitly guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_matrix_testA

跨浏览器矩阵测试。在指定的多个浏览器引擎上依次执行相同的操作序列,返回各浏览器的执行结果对比。支持 chromium / firefox / webkit 任意组合。自动管理浏览器的创建和关闭,每个浏览器独立隔离。符合产品定位 v2.0 能力补齐方案 §P0-6。step.action 与 step.type 互为别名,二者至少传一个。

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsYes在每个浏览器上依次执行的操作步骤,每个步骤的 action/type 字段互为别名,至少传一个
timeoutNo每个步骤的超时毫秒,默认 15000
browsersNo要测试的浏览器列表,默认 ['chromium', 'firefox']
headlessNo是否无头模式,默认 true(矩阵测试默认无头以加速)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It mentions automatic browser creation/closing, isolation, and the alias relationship between step.action and step.type, but lacks details on destructiveness, rate limits, or other side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately sized at 4 sentences, front-loaded with purpose, and contains no redundant or superfluous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool (multi-browser, multi-step) and the absence of an output schema and annotations, the description is adequate but leaves gaps regarding output format, error handling, and prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, so the description adds limited value beyond clarifying that action and type are aliases and that at least one is required. This is sufficient but not exceptional.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly defines the tool as a cross-browser matrix test that executes the same action sequence on multiple browser engines and returns comparison results. It specifies supported browsers and automatic management, making the verb+resource combination distinct from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states when to use the tool (for cross-browser testing) and lists supported browsers, but does not explicitly mention when not to use it or provide alternatives among the many sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_memory_checkA

Memory leak detection: via Performance API, measures detached DOM node count, event-listener leak risk, JS heap size, and total DOM node count, returning a leak-risk assessment and optimization suggestions.

中文详情:

  • 用途:内存泄漏检测,通过 Performance API 检测 detached DOM 节点数量、事件监听器泄漏风险、JS 堆大小和 DOM 节点总数,返回泄漏风险评估和优化建议

  • 何时使用:SPA 长时间运行内存增长排查时;路由切换后 DOM 节点未释放验证时;事件监听器泄漏排查时;上线前内存基线评估时

  • 输出:{ ok: boolean, heapSize: number, heapUsed: number, domNodeCount: number, detachedDomCount: number, listenerLeakRisk: boolean, riskLevel: string, recommendations: array }

  • 参数:

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:浏览器未启动抛出 'Browser not launched';Performance API 不可用抛出 'Performance API not available'

  • 示例:{"sessionName":"long-running-session"}

ParametersJSON Schema
NameRequiredDescriptionDefault
sessionNameNo浏览器会话名称,默认当前活跃会话

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It lists error conditions and output structure, but does not explicitly state whether the tool is read-only (e.g., 'Does not modify browser state'). Given the nature of Performance API calls, it is likely safe, but the description misses the opportunity to confirm non-destructiveness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (purpose, when-to-use, output, parameters, errors, example). It is front-loaded with an English summary followed by Chinese details. The redundancy between languages slightly reduces conciseness, but overall it is efficient and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one optional parameter and no output schema, the description is remarkably complete. It covers the return value structure, possible errors, and explicit use cases. No additional information is needed for an agent to use this tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the 'sessionName' parameter. The description adds marginal value by repeating the parameter's purpose and noting it is optional with a default, and provides an example. This is sufficient but not above the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Memory leak detection: via Performance API, measures detached DOM node count, event-listener leak risk, JS heap size, and total DOM node count'. It provides a specific verb ('detect') and resource ('memory leak'), and distinguishes itself from sibling tools like browser_performance or browser_performance_check by focusing solely on memory leak diagnostics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes explicit usage scenarios in Chinese: 'SPA长时间运行内存增长排查时;路由切换后DOM节点未释放验证时;事件监听器泄漏排查时;上线前内存基线评估时'. This provides clear context for when to use the tool. However, it does not mention when not to use it or suggest alternative tools, which would improve differentiation from siblings like browser_performance_check.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_navigateA

Navigate the browser: go forward, back, refresh, or reload the current page with configurable wait conditions.

中文详情:

  • 用途:控制浏览器导航操作(前进/后退/刷新/重新加载当前页面)

  • 何时使用:在 browser_open 打开页面后需要控制加载状态时;表单提交后需要 reload 重置状态时;测试浏览器后退/前进按钮行为时;页面资源加载不完整需要 refresh 时

  • 输出:{ ok: boolean, url: string, action: string, timestamp: string }

  • 参数:

    • action (string, 必填):导航操作,可选 forward / back / refresh / reload,默认 refresh

    • waitUntil (string, 可选):等待条件,可选 domcontentloaded / load / networkidle,默认 domcontentloaded

    • timeout (number, 可选):超时毫秒数,默认 30000

  • 错误:超时抛出 'Timeout XXXXms exceeded';无效 action 值抛出 'Invalid action'

  • 示例:{"action":"refresh","waitUntil":"networkidle","timeout":10000}

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes导航操作:forward(前进)、back(后退)、refresh(刷新)、reload(重新加载)refresh
timeoutNo超时时间,单位毫秒,默认30000
waitUntilNo等待条件:domcontentloaded(DOM加载完成)、load(页面完全加载)、networkidle(网络空闲)domcontentloaded

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It mentions navigation behavior, wait conditions, timeout, and error types, but does not clearly state if the tool is read-only or whether it modifies state. The behavioral coverage is adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The English sentence is front-loaded and clear, but the lengthy Chinese section duplicates schema info and adds redundancy. A more streamlined description would be better.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description defines the output structure and lists error cases. It covers parameters, usage contexts, and default values, making it fairly complete for a navigation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds an example and repeats parameter explanations from the schema, providing marginal extra value. No significant new semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Navigate the browser' and lists specific actions (forward, back, refresh, reload), making the tool's purpose unambiguous. It does not explicitly contrast with sibling tools, but the distinct set of actions differentiates it adequately.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a '何时使用' section that specifies when to use the tool: after browser_open, after form submit, for testing navigation, etc. This provides explicit usage context, though it does not discuss when not to use it or name direct alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_networkA

网络请求管理工具(v1.9.5 起合并 browser_network_detail)。通过 mode 参数区分子模式:list(默认,获取网络请求记录列表,支持按 URL/方法/状态码/checkpoint 过滤)/ detail(查看网络请求详情,包括请求头、响应头、请求体、响应体摘要、耗时和失败原因,等价于已废弃的 browser_network_detail)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo网络请求模式:list(默认,获取请求列表)/ detail(查看请求详情,等价于已废弃的 browser_network_detail)list
sinceNoISO 时间戳,只返回该时间之后的记录
methodNoHTTP 方法,如 GET/POST/PUT
containsNoURL 过滤关键字,兼容旧参数
statusMaxNo只返回状态码小于等于该值的记录
statusMinNo只返回状态码大于等于该值的记录
currentOnlyNo是否只返回当前 checkpoint 之后的记录,默认 true
urlContainsNoURL 过滤关键字

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It describes the tool as a management tool with two modes and lists what each mode returns (headers, body, timing). However, it does not explicitly state whether the tool is read-only, if it modifies state, or any prerequisites (e.g., need for a live session). The behavioral traits are partially disclosed but not fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences) and front-loaded with the tool's purpose. It efficiently covers the key aspects: merging, mode distinction, and filtering. However, it could be more structured (e.g., bullet points for modes) to improve readability, but overall it is well-sized and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (8 parameters, two modes, no output schema), the description covers the main functionality but lacks details on return format (e.g., pagination, number of entries), behavior of the 'currentOnly' parameter, and any side effects. It is adequate for basic understanding but incomplete for advanced use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds significant value by explaining the mode parameter's sub-modes and providing context on filtering capabilities (URL, method, status code, checkpoint) that maps to multiple parameters. It also clarifies that 'since' is an ISO timestamp and that 'currentOnly' defaults to true. This goes beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool is for network request management, merging the deprecated browser_network_detail. It explicitly describes two modes (list and detail) with distinct purposes, and the context of merging distinguishes it from the deprecated sibling tool. The verb '管理' (manage) and resource '网络请求' (network request) are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use each mode (list for listing requests, detail for viewing details). It mentions that detail mode is equivalent to the deprecated browser_network_detail, implying migration guidance. However, it does not explicitly exclude other tools like browser_errors or browser_har_export, nor does it advise against using this tool for other purposes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_network_detailA

查看本轮网络请求详情,包括请求头、响应头、请求体、响应体摘要、耗时和失败原因。输出自动脱敏。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最多返回记录条数,默认 50
sinceNoISO 时间戳,只返回该时间之后的记录
methodNoHTTP 方法,如 GET/POST/PUT
containsNoURL 过滤关键字,兼容旧参数
statusMaxNo只返回状态码小于等于该值的记录
statusMinNo只返回状态码大于等于该值的记录
currentOnlyNo是否只返回当前 checkpoint 之后的记录,默认 true
urlContainsNoURL 过滤关键字

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that output is automatically sanitized and lists the included fields. However, it does not explicitly state read-only behavior, rate limits, or whether the tool requires prior network requests. The transparency is adequate but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the verb and resource. Every word adds value, listing key outputs and the sanitization feature. No redundant or extraneous information is present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description explains the return fields (headers, body summary, duration, failure reasons). However, it does not clarify the 'round' or 'checkpoint' concept referenced in the parameter schema, nor does it specify the data structure (list vs. single item). Slightly incomplete but largely sufficient for a detail viewer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning beyond the schema; it does not explain parameter interactions, deprecations, or search behavior. It merely rephrases the tool's output without relating to parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: viewing details of network requests for the current session. It lists specific elements (headers, body summary, duration, failure reasons) and mentions automatic sanitization, distinguishing it from siblings like 'browser_network' and 'browser_har_export'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lacks any guidance on when to use this tool versus alternatives. It does not specify prerequisites, exclusions, or scenarios where other tools would be more appropriate. No contextual cues are provided to help the agent decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_openA

Launch a real (visible by default) browser instance and navigate to the target URL. Supports chromium, firefox, and webkit engines.

中文详情:

  • 用途:启动真实可视化浏览器并导航到指定 URL,是所有浏览器交互测试的入口

  • 何时使用:开始一个新的浏览器测试会话时;需要可视化观察页面行为时;切换浏览器引擎做兼容性验证时;调试需要看到真实渲染时

  • 输出:{ ok: boolean, url: string, browserType: string, headless: boolean, sessionId: string, title: string, timestamp: string }

  • 参数:

    • url (string, 必填):要打开的页面 URL

    • browserType (string, 可选):浏览器引擎,可选 chromium / firefox / webkit,默认 chromium

    • headless (boolean, 可选):是否无头模式,默认 false(可视化验证建议 false)

  • 错误:URL 缺失或格式非法抛出 'Invalid url';浏览器启动失败抛出 'Browser launch failed'

  • 示例:{"url":"https://example.com/login","browserType":"chromium","headless":false}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes要打开的页面 URL
headlessNo是否无头模式,默认 false,建议可视化验证使用 false
browserTypeNo浏览器引擎类型,默认 chromiumchromium

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses visibility (visible by default), supported engines, output shape, and error conditions. However, it does not address session management (e.g., whether it closes previous sessions). Overall, it covers key behavioral traits well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is bilingual with a structured Chinese section containing bullet points. While efficient, the bilingual nature adds some extra length. Every sentence contributes meaningful information, earning a 4.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a clear output shape, error examples, and a full usage example. The tool is simple (3 params) and the description covers entry, behavior, and outcomes comprehensively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. The description adds value by listing default values, providing a usage example, and clarifying error conditions. It also explains the headless parameter's visual verification use case, exceeding schema info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it launches a real browser and navigates to a URL, supporting multiple engines. This distinguishes it from sibling tools like browser_navigate (requiring existing session) or browser_session_create (no navigation).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '何时使用' section lists specific use cases (new session, visual observation, engine switching, debugging). It does not explicitly state when not to use, but the context is clear. Lacks an explicit alternative mention but provides good guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_overlayA

遮挡物处理工具(v1.9.5 起合并 browser_overlay_detect/dismiss)。通过 mode 参数区分子模式:detect(默认,检测页面遮挡元素如弹窗/Cookie 横幅/浮层)/ dismiss(自动识别并点击关闭常见遮挡物)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo遮挡物模式:detect(默认,检测页面遮挡元素)/ dismiss(自动关闭遮挡物)detect
formatNo输出格式:json(默认结构化数据)或 html(HTML 报告)(所有模式通用)json

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that dismiss mode automatically clicks to close overlays (implying mutation), and detect mode identifies elements. However, it does not detail side effects (e.g., page changes), permission needs, or whether the operation is reversible. Given the tool's simplicity, this is adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, directly stating the purpose and sub-modes. It is front-loaded with the main functionality and avoids unnecessary details, making it efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should explain what the tool returns (e.g., detected overlays, success status). The description only mentions actions ('detect' and 'dismiss') but does not describe the output format or expected results, leaving a gap for the agent to infer the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptive enum values. The description adds context about the merger version but does not significantly enhance understanding beyond the schema. The parameter descriptions in the schema already cover the meaning of 'mode' and 'format'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: detecting and dismissing overlays like popups and banners. It explicitly mentions that it is a merged tool (v1.9.5) combining two previous tools, which distinguishes it from siblings like browser_overlay_detect and browser_overlay_dismiss.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the two modes (detect and dismiss) with defaults, implying when each mode should be used. However, it does not provide explicit guidance on when to use this tool versus alternative approaches (e.g., browser_click for manual closing), nor does it state prerequisites or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_overlay_detectA

遮挡物检测 - 在 DOM 层面自动检测页面上的遮挡元素(弹窗、Cookie横幅、浮层、色块遮挡等),分析 z-index、position、覆盖面积等属性,返回遮挡物列表和建议

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo输出格式:json(默认结构化数据)或 html(HTML 报告)json

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description covers basic behavior (detection and analysis) but does not disclose side effects, permissions, or limitations. It adequately describes the main function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is front-loaded with the tool's purpose. It is appropriately sized with no redundant text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description sufficiently explains what the tool does and what output options exist. It could mention working on the current page but that is implied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter (format) having a default and enum. The description does not add meaning beyond the schema, so baseline score applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool detects occluding elements (popups, cookie banners, overlays) at the DOM level, analyzing properties like z-index and coverage. It distinguishes itself from siblings like browser_overlay_dismiss and browser_visual_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance is provided; the description implies usage for overlay detection but does not exclude alternatives or mention context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_overlay_dismissB

遮挡物自动关闭 - 自动识别并点击关闭常见遮挡物(Cookie横幅、弹窗、浮层、遮罩等),支持多种关闭按钮选择器模式

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo输出格式:json(默认结构化数据)或 html(HTML 报告)json

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions automatic identification and clicking but lacks details on potential side effects (e.g., accidental clicks on interactive elements), what happens if no overlay is found, or safety guarantees. This is a significant gap for a tool that performs automated clicking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the purpose and includes relevant examples. It is efficient with no wasted words, though it could benefit from clearer structuring (e.g., separating behavior from parameter details).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's core function and parameter but does not mention return values, success/failure behavior, or error handling. Since no output schema exists, the description should provide more context on what the tool returns, which is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 100%, with the parameter 'format' fully described by its enum values in the schema. The description does not add any extra meaning beyond the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '自动关闭' (automatically dismiss) and the resource '遮挡物' (overlays), with specific examples (Cookie banners, popups, floating layers, masks). It distinguishes this tool from siblings like 'browser_overlay_detect' by including the action of closing, not just detecting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for dismissing common overlays automatically, but provides no explicit guidance on when to use this tool versus alternatives (e.g., 'browser_overlay_detect', 'browser_click'). No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_performanceA

性能分析工具(v1.9.5 起合并 browser_performance_check/trace)。通过 mode 参数区分子模式:check(默认,采集当前页面性能指标并按预算评估)/ trace(记录完整性能轨迹并输出 HAR 和结构化数据)。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo要追踪性能的目标 URL。如果不提供则使用当前页面(mode=trace 时使用)
modeNo性能模式:check(默认,采集性能指标并按预算评估)/ trace(记录完整性能轨迹)check
budgetsNo预算阈值,支持 domContentLoaded、load、fcp、lcp、cls、longTaskCount、resourceCount、slowRequestMs(mode=check 时使用)
durationNo追踪持续时间(毫秒),默认 5000(mode=trace 时使用)
exportHarNo是否导出 HAR 格式数据,默认 true(mode=trace 时使用)
categoriesNo要记录的性能类别,默认 ["navigation","resource","paint","longtask"](mode=trace 时使用)
sessionNameNo浏览器会话名称,默认当前活跃会话(mode=check 时使用)
slowRequestMsNo慢请求阈值毫秒,默认 1000;可覆盖 budgets.slowRequestMs(mode=check 时使用)
enableScreenshotsNo是否在追踪期间定期截图,默认 false(mode=trace 时使用)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses that check collects and evaluates metrics, trace records full trace and outputs HAR and structured data. However, it does not mention side effects (e.g., page reload, permissions) or details about how the tool interacts with the browser state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with only two sentences. The first sentence gives the overall purpose and version note, the second explains the mode parameter. No extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters, nested objects, and no output schema, the description covers the core functionality and mode differentiation. It is complete enough for an agent to understand the main use cases, though it could briefly mention what the output of each mode looks like (e.g., budget evaluation result, HAR file).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context by explaining that the 'mode' parameter differentiates the two sub-modes, but otherwise the parameter descriptions in the schema are already detailed. The description does not add significant new meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a performance analysis tool with two distinct sub-modes (check/trace). It distinguishes itself by mentioning the merge of two previous tools (browser_performance_check/trace), helping differentiate from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the two modes and their purposes: check for collecting metrics against budget, trace for full traces. It provides explicit context for usage but does not mention when not to use this tool or alternative tools (e.g., browser_network).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_performance_checkA

Collect current page performance metrics (navigation, paint, resource, long task, CLS/LCP) and evaluate against budgets. Enhanced with Core Web Vitals deep analysis (LCP/FCP/TTFB/CLS scoring).

中文详情:

  • 用途:采集当前页面 navigation/paint/resource/long task/CLS/LCP 等性能指标,按 budgets 输出性能预算结果,并集成 Core Web Vitals 深度分析

  • 何时使用:上线前性能基线评估时;Core Web Vitals 达标验证时;慢请求/长任务定位时;性能预算(budgets)门禁检查时

  • 输出:{ ok: boolean, metrics: object, budgets: object, passed: boolean, violations: array, coreWebVitals: { lcp, fcp, cls, ttfb, score } } — metrics 含 domContentLoaded/load/fcp/lcp/cls/longTaskCount/resourceCount

  • 参数:

    • budgets (object, 可选):预算阈值,支持 domContentLoaded/load/fcp/lcp/cls/longTaskCount/resourceCount/slowRequestMs

    • slowRequestMs (number, 可选):慢请求阈值毫秒,默认 1000;可覆盖 budgets.slowRequestMs

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:浏览器未启动抛出 'Browser not launched';budgets 字段类型错误抛出 'Invalid budget'

  • 示例:{"budgets":{"lcp":2500,"cls":0.1,"longTaskCount":5},"slowRequestMs":800}

ParametersJSON Schema
NameRequiredDescriptionDefault
budgetsNo预算阈值,支持 domContentLoaded、load、fcp、lcp、cls、longTaskCount、resourceCount、slowRequestMs
sessionNameNo浏览器会话名称,默认当前活跃会话
slowRequestMsNo慢请求阈值毫秒,默认 1000;可覆盖 budgets.slowRequestMs

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It details the output structure, error conditions (browser not launched, invalid budget), and the scope (current page). It does not mention side effects, but performance collection is generally safe.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is verbose due to bilingual content, with some redundancy (Chinese repeats English info). However, it is well-structured with an opening summary, then detailed Chinese bullets. Could be more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (3 params, nested objects, no output schema), the description covers purpose, usage, output format, parameter details, errors, and an example. This is complete enough for agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds value by providing defaults for slowRequestMs and sessionName, a detailed breakdown of budgets fields, and an example. This enriches understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it collects page performance metrics and evaluates against budgets, listing specific metric types (navigation, paint, resource, long task, CLS/LCP) and Core Web Vitals. This distinguishes it from sibling tools like browser_performance_trace or browser_lighthouse_audit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists use cases: pre-launch baseline, CWV compliance, slow request/long task localization, budget gate checks. While it doesn't state when not to use, the context is clear and no alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_performance_traceA

Record a complete performance trace (paint/timing/resource) and output HAR plus structured performance data. Supports W3C Performance Timeline API to capture FP/FCP/LCP/CLS core metrics.

中文详情:

  • 用途:记录完整的性能轨迹(Paint/Timing/Resource),输出 HAR 格式和结构化性能数据,支持 W3C Performance Timeline API 获取 FP/FCP/LCP/CLS 等核心指标

  • 何时使用:性能瓶颈深度分析时;HAR 文件取证时;前端渲染瀑布图分析时;FCP/LCP 异常排查时

  • 输出:{ ok: boolean, tracePath: string, harPath: string, metrics: object, entries: array, duration: number } — metrics 含 fp/fcp/lcp/cls/tbt;entries 为 PerformanceEntry 列表

  • 参数:

    • url (string, 可选):要追踪性能的目标 URL,不提供则使用当前页面

    • categories (array, 可选):要记录的性能类别,默认 ["navigation","resource","paint","longtask"]

    • duration (number, 可选):追踪持续时间(毫秒),默认 5000

    • enableScreenshots (boolean, 可选):是否在追踪期间定期截图,默认 false

    • exportHar (boolean, 可选):是否导出 HAR 格式数据,默认 true

  • 错误:浏览器未启动抛出 'Browser not launched';duration 过大可能影响响应时间

  • 示例:{"url":"https://example.com","categories":["navigation","paint","longtask"],"duration":10000,"exportHar":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo要追踪性能的目标 URL。如果不提供则使用当前页面。
durationNo追踪持续时间(毫秒)
exportHarNo是否导出 HAR 格式数据
categoriesNo要记录的性能类别
enableScreenshotsNo是否在追踪期间定期截图

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must fully disclose behavior. It mentions output format, supported metrics, and error scenarios (browser not launched, duration impact). However, it does not state whether the tool is read-only, whether traces persist, or cleanup behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description includes both English and Chinese sections, causing redundancy. The English part is concise (2 sentences), but the Chinese section repeats and adds details. Could be streamlined without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has 5 optional parameters, no output schema, no nested objects. Description covers purpose, usage, parameters, output structure, and example. Provides enough context for an agent to understand the tool's function and expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions. The description adds minor context (e.g., using current page if URL omitted) but largely repeats schema info. No new meaning beyond what schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool records a complete performance trace and outputs HAR plus structured data. The verb 'Record' and resource 'performance trace' are specific. However, it doesn't differentiate from sibling tools like browser_performance or browser_har_export, which may overlap in purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists use cases in the Chinese section (e.g., deep performance analysis, HAR file forensics). Provides error conditions and an example. However, it doesn't mention when not to use this tool versus alternatives like browser_lighthouse_audit or browser_network_detail.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_press_keyA

Press a keyboard key or combo on the current page or focused element. Supports single keys (Enter, Escape, Tab, ArrowDown) and combos (Control+c, Shift+Tab).

中文详情:

  • 用途:在当前页面或指定元素上按下键盘按键,支持单个按键或组合键(如 Control+c)

  • 何时使用:表单输入后按 Enter 提交时;模态框按 Escape 关闭时;下拉菜单用 ArrowDown 导航时;快捷键组合测试时

  • 输出:{ ok: boolean, key: string, selector: string|null, timestamp: string }

  • 参数:

    • key (string, 必填):按键名称,如 Enter/Escape/Tab/ArrowDown/Backspace/a/Control+c

    • selector (string, 可选):在指定元素上按键(先聚焦再按键)

  • 错误:key 为空抛出 'Key is required';selector 无匹配抛出 'element not found'

  • 示例:{"key":"Enter","selector":"#search-input"}

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes按键名称,如 Enter、Escape、Tab、ArrowDown、Backspace、a、Control+c 等
selectorNo可选,在指定元素上按键(先聚焦再按键)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses supported keys/combos, that it presses on current page or focused element, and details the output structure (ok, key, selector, timestamp) and errors ('Key is required', 'element not found'). It does not mention whether it waits for action completion or handles modifiers.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured: English summary followed by Chinese details. It is not overly long, but the Chinese section is a duplicate. The core English part is concise and front-loaded with purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema in the input definition, the description provides the output structure, error conditions, and usage examples. For a keyboard press tool with 2 parameters, this covers all necessary information for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. The description adds value by explaining key parameter with common values (Enter, Escape, etc.) and specifying that selector is optional and focuses first. The Chinese section provides additional examples and error handling details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it presses a keyboard key or combo on the current page or focused element, distinguishing it from sibling tools like browser_click (clicking) and browser_type (typing text). It lists supported keys and combos, making the purpose specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes explicit 'when to use' scenarios in Chinese (form submission, modal close, dropdown navigation, shortcut testing). It implies not for typing text since browser_type exists, but lacks explicit 'when not to use' or direct comparison with browser_type.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_quick_fixA

快速修复验证闭环。自动尝试常见修复策略(等待加载、滚动到元素、强制可见、移除遮挡、注入JS等),每步验证是否修复成功。返回修复尝试记录、最终状态、建议的下一步操作。支持批量传入多个 problem。

ParametersJSON Schema
NameRequiredDescriptionDefault
problemNo问题描述(单问题模式,与 problems 互斥):not_found(元素未找到)、not_visible(不可见)、not_interactable(不可交互)、click_failed(点击失败)、type_failed(输入失败)、js_error(JS错误)、api_failed(API请求失败)、page_crashed(页面崩溃)、resource_blocked(资源被拦截)
problemsNo批量问题列表(数组模式,与 problem 互斥):按顺序依次尝试每个 problem 的修复策略
selectorYes目标元素选择器(必填)
maxAttemptsNo最大修复尝试次数,默认5
waitStrategyNo等待策略:smart(智能等待)、fixed(固定等待)、none(不等待)smart

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It explains the iterative fix-and-verify process and return values. However, it omits potential side effects (e.g., page state changes), failure handling, or whether operations are read-only/destructive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main action. Every sentence adds value. Minor improvement: could be slightly more structured for readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no output schema, many sibling browser tools), the description lacks comparison to similar tools (e.g., browser_verify_fix) and doesn't detail return structure. It is adequate but leaves gaps for an AI agent to fully understand when to use this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% - all parameters are already well documented in the input schema. The description adds only high-level context about fix strategies, not specific parameter details beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: automatically attempt common fix strategies to resolve browser interaction problems. It specifies actions (wait, scroll, force visible, remove occlusion, inject JS) and return values (logs, status, next action). This distinguishes it from sibling tools like browser_click or browser_find.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when encountering problems (supported by 'problem' parameter enum). It mentions batch support. However, it does not explicitly say when NOT to use it or provide alternatives, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_responsive_testA

模拟多视口(mobile/tablet/desktop)截图对比,检测响应式布局问题。打开指定URL,分别以三个标准视口截图,返回各视口截图和布局差异分析。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标页面URL(必填)
waitMsNo截图前等待毫秒数
fullPageNo是否截取整页
viewportsNo要测试的视口列表,默认全部

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

描述说明了核心行为(打开URL、截图、返回截图和差异分析),但未披露副作用(如是否修改浏览器状态、是否需要会话、是否关闭标签页)、输出格式细节,且没有注释提供额外信息。对于无注释的工具,描述承担全责,但仍不够全面。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

描述仅两句话,第一句点明目的,第二句说明操作和结果,简洁无冗余,信息呈递高效。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

工具参数完整且有schema描述,但无输出schema,描述未说明差异分析的具体形式(文本还是图像)、是否依赖浏览器会话、以及前置条件。对于多视口对比这类复杂操作,信息不够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

输入schema覆盖100%,参数描述已包含各参数含义,描述没有补充超出schema的信息。符合基线3。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明工具用于模拟多视口截图对比以检测响应式布局问题,动词明确(模拟、截图对比、检测),资源明确(响应式布局),与兄弟工具无重复,因为其他工具不提供多视口比较。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述隐含用于响应式测试场景,但未明确说明何时使用此工具而非其他截图工具(如browser_screenshot)或设备模拟工具(browser_emulate_device),也没有提供何时不使用或替代方案。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_screenshotA

Take a screenshot of the current page and save it to the MCP artifacts directory. Sensitive inputs (password, token, apiKey) are auto-redacted by default.

中文详情:

  • 用途:对真实浏览器当前页面截图并保存为 PNG 文件到 screenshots 目录

  • 何时使用:验证页面渲染结果时;记录 bug 证据时;视觉对比前截取基线/实际图时;流程关键节点留证时

  • 输出:{ ok: boolean, path: string, name: string, timestamp: string } — path 为截图绝对路径

  • 参数:

    • name (string, 可选):截图文件名(不含扩展名),默认使用时间戳

    • redactSelectors (array, 可选):需要额外遮挡的 CSS 选择器列表,默认已遮挡 [type=password]、[name*=token]、[name*=apiKey]

  • 错误:浏览器未启动抛出 'Browser not launched';截图失败抛出 'Screenshot failed'

  • 示例:{"name":"login-page","redactSelectors":[".credit-card"]}

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo截图模式:page(默认,整页截图)/ element(元素截图,等价于已废弃的 browser_screenshot_element,需指定 selector)page
nameNo截图文件名,不含扩展名
paddingNo截图区域周围的 padding,单位像素,默认 0(mode=element 时使用)
selectorNo目标元素的 CSS 选择器(mode=element 时必填)
redactSelectorsNo需要额外遮挡的 CSS 选择器列表(mode=page 时使用)

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses auto-redaction of sensitive inputs, default redactSelectors, error conditions ('Browser not launched', 'Screenshot failed'), and the output format. It also explains the mode parameter maps to deprecated tools. Missing details on permissions or rate limits, but overall high transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description includes both English and Chinese sections, which introduces redundancy. The English part is concise (2 sentences), but the Chinese section, while structured, repeats and expands on the same information. This adds length beyond what is necessary for a single-language agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no required, schema coverage 100%, and no output schema, the description compensates by defining the output structure, error cases, and usage scenarios. It also explains the relationship to deprecated browser_screenshot_element. Minor omissions: the conditional requirement of selector when mode='element' is only in the Chinese section, but overall it is fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining defaults (name defaults to timestamp, redactSelectors defaults) and the redaction feature, but these are partially implied by the schema. The Chinese section provides additional context but does not significantly surpass the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Take a screenshot of the current page and save it to the MCP artifacts directory', providing a clear verb and resource. The Chinese section further specifies '对真实浏览器当前页面截图并保存为 PNG 文件', which distinguishes it from visual comparison tools like browser_visual_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section lists explicit when-to-use scenarios: verifying page rendering, recording bug evidence, capturing baselines for visual comparison, and documenting key steps. It also mentions that mode='element' is for element screenshots, guiding the user away from deprecated tools. However, it does not explicitly state when not to use or provide alternatives for other scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_screenshot_elementA

Screenshot a specific page element located by CSS selector, returning the artifact path and dimensions. Supports padding to expand the captured area.

中文详情:

  • 用途:对指定 CSS 选择器元素截图,截取该元素的可见区域,返回截图路径和尺寸信息

  • 何时使用:组件级截图取证时;视觉对比前截取元素图时;bug 报告附带局部截图时;多元素单独留档时

  • 输出:{ ok: boolean, path: string, name: string, selector: string, width: number, height: number, timestamp: string }

  • 参数:

    • selector (string, 必填):目标元素的 CSS 选择器

    • padding (number, 可选):截图区域周围的 padding,单位像素,默认 0

    • name (string, 可选):截图文件名(不含扩展名),默认自动生成

  • 错误:selector 无匹配抛出 'element not found';元素不可见抛出 'element not visible'

  • 示例:{"selector":".user-avatar","padding":10,"name":"avatar-component"}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo截图文件名(不含扩展名),默认自动生成
paddingNo截图区域周围的padding,单位像素,默认0
selectorYes目标元素的CSS选择器

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and covers key behaviors: returns path and dimensions, supports padding, and lists specific errors (element not found, not visible). It could mention scrolling into view, but overall transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with an English summary and detailed Chinese sections, clearly separating purpose, usage, output, parameters, errors, and example. Bilingual content increases length but each section adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers all essential aspects: purpose, when to use, output format (including fields), error conditions, parameters with defaults, and an example. Without an output schema, the explicit output format makes it complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage, so baseline is 3. The description adds an example JSON and clarifies defaults for 'name' and 'padding', providing modest additional value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool takes a screenshot of a specific page element via CSS selector, returning the artifact path and dimensions. This distinguishes it from sibling tools like `browser_screenshot` (full page) and `browser_visual` (comparison).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a dedicated 'when to use' section listing four scenarios (component-level screenshots, before visual comparison, bug reports, multi-element documentation), providing clear context. However, it does not explicitly exclude alternatives or mention when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_scrollA

Scroll the page or to a specific element. Supports scrollIntoView for targeting an element and pixel-based x/y scrolling with auto/smooth behavior.

中文详情:

  • 用途:滚动页面到指定位置,支持滚动到指定元素(scrollIntoView)或按像素值(x/y)滚动

  • 何时使用:需要触发懒加载内容时;将目标元素滚动到可视区域时;测试无限滚动分页时;截图前确保元素可见时

  • 输出:{ ok: boolean, scrollX: number, scrollY: number, scrolledTo: string, timestamp: string }

  • 参数:

    • selector (string, 可选):要滚动到的目标元素选择器,与 scrollIntoView 配合使用

    • scrollIntoView (boolean, 可选):是否滚动到 selector 指定的元素,默认 true(指定 selector 时)

    • x (number, 可选):横向滚动像素值(不指定 selector 时使用)

    • y (number, 可选):纵向滚动像素值(不指定 selector 时使用)

    • behavior (string, 可选):滚动行为,可选 auto/smooth,默认 auto

  • 错误:selector 无匹配抛出 'element not found';selector 与 x/y 同时提供时以 selector 为优先

  • 示例:{"selector":"#footer","behavior":"smooth"}

ParametersJSON Schema
NameRequiredDescriptionDefault
xNo横向滚动像素值(不指定 selector 时使用)
yNo纵向滚动像素值(不指定 selector 时使用)
behaviorNo滚动行为,默认 auto
selectorNo要滚动到的目标元素选择器,与 scrollIntoView 配合使用
scrollIntoViewNo是否滚动到 selector 指定的元素,默认 true(指定 selector 时)

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description discloses error handling ('element not found'), priority rules (selector over x/y), and output format with fields like ok, scrollX, scrollY, scrolledTo, timestamp. This adds significant behavioral context beyond basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with an English summary followed by a detailed Chinese section using clear headers (用途, 何时使用, 输出, 参数, 错误, 示例). It is front-loaded and every section adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 optional parameters, no output schema, and complex scrolling behavior, the description covers output format, error conditions, parameter interactions, and usage examples, making it fully complete for an AI agent to correctly invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, baseline 3. The description adds value by explaining defaults (scrollIntoView default true when selector given), behavior options, and provides an example. This helps an agent understand parameter interactions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scrolls the page or to a specific element, supporting both scrollIntoView and pixel-based scrolling. This distinguishes it from sibling tools, as no other tool in the list has scrolling as primary function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit use cases: triggering lazy content, scrolling elements into view, testing infinite scroll, ensuring visibility before screenshots. It does not mention when not to use or alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_selectA

Select an option in a dropdown by value, label text, or index.

中文详情:

  • 用途:在下拉框(select 元素)中选择指定选项,支持按 value 值、按 label 文本、按索引三种方式

  • 何时使用:表单下拉选项选择时;测试 select 联动效果时;筛选条件选择时;下拉框默认值验证时

  • 输出:{ ok: boolean, selector: string, selectedValue: string, selectedLabel: string, selectedIndex: number, timestamp: string }

  • 参数:

    • selector (string, 必填):select 元素的 CSS 选择器

    • value (string, 可选):要选择的 option 的 value 值

    • label (string, 可选):要选择的 option 的显示文本

    • index (number, 可选):要选择的 option 的索引(从 0 开始)

  • 错误:selector 无匹配或非 select 元素抛出 'Not a select element';value/label/index 都未提供抛出 'No selection criteria provided';选项不存在抛出 'Option not found'

  • 示例:{"selector":"#country","value":"cn"}

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNo要选择的option的索引(从0开始)
labelNo要选择的option的显示文本
valueNo要选择的option的value值
selectorYesselect元素的选择器

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It details output fields, error conditions (e.g., 'Not a select element', 'Option not found'), and provides an example. It does not mention side effects like triggering events, but for a selection tool, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English summary followed by Chinese details, including sections for purpose, usage, output, parameters, errors, and example. It is front-loaded with the core action and every section adds necessary information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description fully documents the output format and error behavior. Parameters are thoroughly explained, and an example is provided. For a selection tool, this is complete and leaves no ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining that three optional parameters (value, label, index) represent different selection methods and implies exactly one should be used. It also clarifies errors for missing criteria, adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool selects an option in a <select> dropdown by value, label text, or index. The verb 'select' and resource 'dropdown' are specific. It distinguishes from sibling browser tools like browser_click or browser_form_fill by focusing solely on dropdown selection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: form dropdown selection, testing select linkage, filter criteria selection, and default value verification. This provides clear context, though it does not mention when not to use or alternative tools such as browser_form_fill.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_sessionA

浏览器会话管理工具(v1.9.5 起合并 browser_session_create/switch/close + browser_sessions)。通过 mode 参数区分子模式:list(默认,列出所有会话)/ create(创建命名会话,独立上下文/cookie/storage)/ switch(切换活跃会话)/ close(关闭并删除会话)。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo创建后打开的 URL(mode=create 时使用)
modeNo会话模式:list(默认,列出所有会话)/ create(创建命名会话)/ switch(切换活跃会话)/ close(关闭并删除会话)list
nameNo会话名称,如 free-user、pro-user(mode=create/switch/close 时使用)
timeoutNo导航超时时间,默认 30000ms(mode=create 时使用)
headlessNo是否无头模式,默认 false(mode=create 时使用)
sessionNameNo会话名称别名(mode=create/switch/close 时使用)
extensionPathNo要加载的 Chrome 扩展目录路径。提供后使用持久化上下文并强制 headless=false(mode=create 时使用)
loadExtensionPathNoextensionPath 的别名,要加载的 Chrome 扩展目录路径(mode=create 时使用)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions that each 'create' session has independent context/cookie/storage and that extensionPath forces headless=false. However, it does not disclose destructive effects (close deletes session), error handling, or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single succinct paragraph that covers purpose, modes, and key parameter interactions. However, it could be better structured (e.g., bullet points for modes) for easier scanning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the modes adequately but does not describe the return value for the 'list' mode or any error scenarios. With 8 parameters and no output schema, more detail on expected outputs and errors would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds limited value. It does clarify the relationship between sessionName/name and extensionPath/loadExtensionPath, and notes that extensionPath forces headless=false. This justifies a score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it's a browser session management tool, enumerates four sub-modes (list, create, switch, close), and mentions it merges previously separate tools. It distinguishes itself from siblings by being the consolidated session manager.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each mode via the mode parameter and mentions that this tool supersedes browser_session_create, browser_session_switch, browser_session_close, and browser_sessions. However, it doesn't explicitly state when not to use this tool in favor of other browser tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_session_closeC

关闭并删除指定浏览器会话。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes要关闭的会话名称
sessionNameNo会话名称别名

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description is the sole source of behavioral info. It mentions 'close and delete' but does not disclose side effects like resource cleanup, impact on open pages, or irreversibility.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, efficiently conveying the core action. It is front-loaded and free of redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and the tool's destructive nature, the description lacks context about what happens after execution (e.g., return value, confirmation, or persistence). The agent cannot infer the outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so both parameters have descriptions. The tool description adds no extra meaning beyond 'specified' for the session name, which is already implied by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: close and delete a specified browser session. Among sibling tools like browser_session_create and browser_session_switch, the purpose is distinguishable due to the specific verb 'close and delete'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of preconditions, when not to use, or comparison with related session tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_session_createA

Create or reuse a named browser session with isolated context, cookies, localStorage, console, network, errors, and events. Supports Chrome extension loading via persistent context.

中文详情:

  • 用途:创建或复用一个命名浏览器会话,每个会话拥有独立的浏览器上下文、cookie、localStorage、console、network、errors 和 events

  • 何时使用:需要多账号/多角色并行测试时;测试需要不同浏览器上下文隔离时;加载 Chrome 扩展验证扩展行为时;验证不同会话状态(登录/未登录)时

  • 输出:{ ok: boolean, name: string, sessionId: string, url: string, created: boolean, headless: boolean, extensionLoaded: boolean }

  • 参数:

    • name (string, 必填):会话名称,如 free-user、pro-user

    • sessionName (string, 可选):会话名称别名

    • url (string, 可选):创建后打开的 URL

    • headless (boolean, 可选):是否无头模式,默认 false

    • extensionPath (string, 可选):要加载的 Chrome 扩展目录路径,提供后使用持久化上下文并强制 headless=false

    • loadExtensionPath (string, 可选):extensionPath 的别名

    • timeout (number, 可选):导航超时时间,默认 30000ms

  • 错误:name 为空抛出 'Session name is required';扩展路径不存在抛出 'Extension path not found';导航超时抛出 'Timeout XXXXms exceeded'

  • 示例:{"name":"pro-user","url":"https://example.com/dashboard","headless":false}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo创建后打开的 URL
nameYes会话名称,如 free-user、pro-user
timeoutNo导航超时时间,默认 30000ms
headlessNo是否无头模式,默认 false
sessionNameNo会话名称别名
extensionPathNo要加载的 Chrome 扩展目录路径。提供后使用持久化上下文并强制 headless=false
loadExtensionPathNoextensionPath 的别名,要加载的 Chrome 扩展目录路径

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses session creation/reuse, isolated context, extension loading, and lists output fields, parameters, and error conditions. It does not mention required permissions or potential side effects, but the behavior is well-explained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English summary, organized Chinese details, and clear sections for output, parameters, errors, and example. Each sentence is informative and not redundant. It is concise yet comprehensive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 7 parameters and no output schema, the description covers behavior, inputs, outputs (listing return fields), errors (with example messages), and an example. For a creation tool, this provides sufficient context for an AI agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds value by grouping parameters, noting aliases, indicating required status, and providing an example. It also explains the effects of extensionPath and the forced headless=false. This goes beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create or reuse a named browser session with isolated context', specifying the verb (create/reuse) and resource (browser session). It distinguishes from sibling tools by emphasizing isolated context and Chrome extension loading, which is unique among the many browser_* tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese '何时使用' section explicitly lists four use cases: multi-account/role testing, context isolation, extension loading, and session state verification. This provides clear when-to-use guidance and implicitly excludes other scenarios, though it does not name alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_sessionsA

List all current browser sessions with their active state, current URL, creation time, last-used time, and trace status.

中文详情:

  • 用途:列出当前所有浏览器会话,显示活跃状态、URL、创建时间、最后使用时间和 trace 录制状态

  • 何时使用:多会话测试前查看会话清单时;确认会话是否仍活跃时;排查 trace 录制状态时;调试并发会话问题时

  • 输出:{ ok: boolean, sessions: array, total: number } — 每项含 { name, active, url, createdAt, lastUsedAt, traceEnabled }

  • 参数:无

  • 错误:无活跃会话时返回空数组但 ok=true

  • 示例:{}

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description details output structure and error behavior (empty array on no active sessions). It implicitly indicates a read operation, but does not discuss potential side effects, permissions, or rate limits. Annotations are absent, so the description carries the burden, which it mostly satisfies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Structured with English summary followed by Chinese details in bullet points. Generally concise, though some repetition between languages. Front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description compensates by specifying the return structure and error condition. Complete for a parameter-less listing tool, covering purpose, usage, output, and error handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist (schema coverage 100%). The description explicitly states '参数:无' (no parameters), confirming the absence of input. This meets the baseline for zero-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all current browser sessions with specific details. It is distinct from siblings like browser_session_create or browser_session_close by being a list operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly provides when-to-use scenarios in Chinese, such as before multi-session testing, checking activity, troubleshooting trace status, and debugging concurrent sessions. Also includes output and error case information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_session_switchA

切换当前活跃浏览器会话。后续未指定 sessionName 的浏览器工具会作用于该会话。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes要切换到的会话名称
sessionNameNo会话名称别名

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It mentions the effect on subsequent tools but does not disclose behavioral traits like what happens to the previous session, whether the switch is reversible, or if there are any side effects. This is insufficient for full transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two sentences, front-loading the core purpose and the consequence of the switch. Every sentence adds value, with no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with two parameters, no output schema, and no annotations, the description covers the primary action and its impact on future tool calls. It does not explain parameter meanings, but the schema covers that. It is fairly complete but could mention what happens if the session doesn't exist.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with parameters 'name' (required) and 'sessionName' (optional alias). The description adds no additional meaning beyond the schema, as it does not explain the distinction between the two or provide use-case-specific guidance. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it switches the active browser session, and the purpose is distinct from sibling tools like browser_session_create (create) and browser_sessions (list). The verb '切换' (switch) combined with '活跃浏览器会话' (active browser session) precisely defines the action and resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use: to set the active session for subsequent tools that omit sessionName. However, it does not explicitly state when not to use it or mention alternatives (e.g., creating a new session instead). The guidance is present but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_smart_fillA

Smart form filler: auto-generate format-valid realistic test data by field type and fill the target input. Supports 10+ types (email, phone, name, address, idCard, number, text, url, date, password); each call produces random data to cover edge cases.

中文详情:

  • 用途:智能表单填充工具,根据字段类型自动生成符合格式的真实测试数据并填入指定输入框

  • 何时使用:注册表单需要合法邮箱/手机号时;地址表单需要格式正确数据时;密码字段需要符合复杂度要求时;批量生成测试数据覆盖边界场景时

  • 输出:{ ok: boolean, selector: string, fieldType: string, generatedValue: string, timestamp: string }

  • 参数:

    • selector (string, 必填):目标输入框的 CSS 选择器

    • fieldType (string, 必填):字段类型,可选 email/phone/name/address/idCard/number/text/url/date/password

    • options (object, 可选):生成选项,各字段类型有不同选项

      • domain (string, 可选):email 类型的域名

      • min (number, 可选):number 类型的最小值

      • max (number, 可选):number 类型的最大值

      • minLen (number, 可选):text 类型的最小长度

      • maxLen (number, 可选):text 类型的最大长度

      • start (string, 可选):date 类型的起始日期

      • end (string, 可选):date 类型的结束日期

  • 错误:selector 无匹配抛出 'element not found';fieldType 非法抛出 'Invalid fieldType';元素不可编辑抛出 'element not editable'

  • 示例:{"selector":"#email","fieldType":"email","options":{"domain":"test.com"}}

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo生成选项(可选),各字段类型有不同选项
selectorYes目标输入框的 CSS 选择器
fieldTypeYes字段类型,支持: email | phone | name | address | idCard | number | text | url | date | password

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavior: random data generation, supported types, error messages for invalid selectors/field types/non-editable elements, and output structure. This exceeds typical transparency requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with separate sections for purpose, usage, output, parameters, errors, and an example. The Chinese section adds redundancy but does not detract significantly; overall it is appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers all relevant aspects: purpose, parameters with details, errors, output format, and an example. Given no output schema, it compensates fully, making the tool's behavior and usage clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by explaining the options sub-object fields and providing context (e.g., domain for email). It clarifies parameter usage beyond the schema's baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: auto-generating format-valid test data and filling inputs. It lists supported field types but does not explicitly differentiate from siblings like browser_form_fill, though the generation aspect implies distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides specific use cases (e.g., registration forms needing valid email/phone) in both English and Chinese, giving clear context for when to use. It lacks explicit exclusions or alternatives, but the guidance is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_smoke_testA

一键冒烟测试 - 自动执行页面加载、JS错误、HTTP错误、无障碍、控制台警告等5项快速检查,返回综合评分和详细结果

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo可选,要测试的目标URL。如果不提供,则测试当前页面
formatNo输出格式:json(默认结构化数据)或 html(HTML 报告)json

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only lists the checks performed but does not mention potential side effects, authentication needs, or whether the tool modifies page state. For a testing tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, efficiently conveying the tool's purpose and key capabilities without wasted words. It is front-loaded with the key term '一键冒烟测试'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description mentions returning a comprehensive score and detailed results, but does not specify the scoring scale or the structure of detailed results. Given the tool's complexity, more details would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema coverage is 100%, so the schema already documents parameters. The description adds no additional meaning beyond the schema, resulting in a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a one-click smoke test that performs five specific checks (page load, JS errors, HTTP errors, accessibility, console warnings) and returns a comprehensive score and detailed results. This specificity distinguishes it from sibling tools like browser_errors_aggregate or browser_a11y_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies quick, initial validation but does not explicitly state when to use this tool versus alternatives like browser_errors_aggregate or browser_a11y_check. No when-not-to-use or prerequisite information is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_snapshotA

Capture a structured snapshot of the current page: URL, title, visible text, form fields, and actionable buttons for AI-driven element targeting.

中文详情:

  • 用途:获取当前页面的结构化快照,包含 URL、标题、可见文本、表单元素和按钮清单

  • 何时使用:交互前需要了解页面当前结构时;定位元素前获取可点击清单时;表单填写前查看字段时;流程断点处记录页面状态时

  • 输出:{ ok: boolean, url: string, title: string, visibleText: string, forms: array, buttons: array, inputs: array, timestamp: string } — forms/buttons/inputs 各项含 selector、text、attributes 等定位信息

  • 参数:无

  • 错误:浏览器未启动抛出 'Browser not launched';页面未加载完成可能返回不完整快照

  • 示例:{}

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It details the output structure (ok, url, title, etc.), error cases ('Browser not launched', incomplete snapshot), and implies read-only behavior. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is in two parts (English then Chinese). The Chinese is redundant in purpose but adds usage guidelines and structure. Front-loaded well. Slightly verbose due to duplication, but still clear and organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and no output schema, the description covers output format, error scenarios, and usage context completely. It provides an example and lists return fields. No missing critical information for a snapshot tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters, so baseline is 4. The description explicitly states '参数:无' (parameters: none). No additional semantic value needed beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool captures a structured snapshot of the current page including URL, title, visible text, form fields, and buttons. It distinguishes from sibling tools like browser_screenshot (visual) and browser_dom (raw DOM) by focusing on structured data for AI targeting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: before interaction to understand page structure, to get clickable list before locating elements, to view fields before form filling, and to record page state at breakpoints. This provides clear context and implies when not to use (e.g., not for visual checks).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_stateA

查看和管理浏览器状态(Cookie 与 Web Storage)。v1.9.5 起合并 browser_cookies 与 browser_storage。mode=cookies 时支持获取/设置/清除 Cookie;mode=storage 时查看 localStorage、sessionStorage、cookies 快照。调试登录态、Token、状态持久化问题的首选工具。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo工作模式:cookies(Cookie 管理,默认)、storage(Web Storage 快照)cookies
nameNo按名称筛选Cookie(仅 mode=cookies + action=get 时生效)
scopeNoStorage 范围(仅 mode=storage 生效):localStorage、sessionStorage、cookies 或 all,默认 all
actionNoCookie 操作类型(仅 mode=cookies 生效):get(获取Cookie,默认)、clear(清除所有Cookie)、set(设置Cookie)get
cookieNo要设置的Cookie对象(仅 mode=cookies + action=set 时生效),包含 name、value 属性,可选 domain、path、expires 等
domainNo按域名筛选Cookie,如 .example.com(仅 mode=cookies + action=get 时生效)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full disclosure burden. It explains both read-only (storage snapshots) and destructive operations (cookie clear/set), and mentions merging behavior. However, it could detail side effects of clearing cookies or snapshot limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, front-loaded with purpose, and every sentence provides essential information without redundancy. It efficiently conveys the merged nature, dual modes, and primary use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, nested objects, dual modes) and absence of an output schema, the description is minimally adequate. It covers modes and actions but lacks details on return values, error handling, or browser context limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description summarizes the mode-based behavior but does not add significant new meaning beyond the schema descriptions. It provides general-purpose context but not parameter-specific enhancements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it manages browser state (Cookies & Web Storage), explicitly mentions merging legacy tools, and explains two modes with specific actions. It effectively distinguishes itself from sibling legacy tools like browser_cookies and browser_storage.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: it's the preferred tool for debugging login state, tokens, and persistence issues, and explains when to use each mode. However, it lacks explicit exclusions or comparison with other tools like browser_snapshot or browser_har_export.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_stepA

记录当前验证步骤证据:截图、DOM 简要快照、本轮统一错误摘要。用于形成可追溯证据链。

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNo步骤名称,如 login-after-submit
snapshotNo是否采集 DOM 简要快照,默认 true
screenshotNo是否截图,默认 true
includeWarningsNo错误摘要是否包含 warning
redactSelectorsNo截图中额外遮挡的 CSS 选择器

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses the recorded artifacts (screenshot, DOM snapshot, error summary) but omits behavioral traits like idempotency, side effects, or prerequisites (e.g., active browser session). Adequate but with gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is front-loaded with the action verb and key artifacts. No wasted words; every part adds value. Appropriate length for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (5 optional params, no output schema), the description covers core purpose. However, with no annotations and a list of 80+ siblings, more context on evidence storage or chain integration would be beneficial. Still not critically incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and descriptions are present. The tool description repeats the general idea ('screenshot, DOM, error summary') but adds no additional meaning beyond the schema's per-parameter descriptions. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool records evidence for verification steps, combining screenshot, DOM snapshot, and error summary. This contrasts with siblings like browser_screenshot (only screenshot) or browser_snapshot (only DOM), providing a unique composite purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use during verification steps ('record current verification step evidence') but does not explicitly state when to use or avoid alternatives. Given the sibling list, it is clear this is for documenting steps, but no exclusions or context are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_storageA

查看当前页面 localStorage、sessionStorage 或 cookie,辅助定位登录态和状态问题

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNolocalStorage、sessionStorage、cookies 或 all,默认 all

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It states the tool 'views' storage, indicating a read-only operation. This is clear, but it could be more explicit about having no side effects or requiring no special permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that effectively communicates the tool's purpose. It is front-loaded and contains no unnecessary words, though it could be slightly more structured by separating purpose from usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one optional parameter, no output schema), the description covers the core purpose. However, it omits details about what the tool returns (e.g., key-value pairs), which would be useful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameter is well-documented in the schema. The description adds context about the tool's purpose but does not add meaningful semantic detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool views localStorage, sessionStorage, or cookies, and helps locate login/status issues. While it distinguishes from 'browser_cookies' by covering multiple storage types, it does not explicitly differentiate itself, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking storage related to login/status, but does not provide explicit guidance on when to use this tool versus alternatives like 'browser_cookies' or 'browser_state'. No exclusions or when-not-to-use information is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_trace_chainA

全链路调用链追溯:从 trace_id 或时间点追溯前端→API→后端的完整请求链路,聚合每个 trace 的请求/响应体和关联的 console 错误

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoURL 包含过滤
sinceNo时间点 (ISO格式),只返回该时间之后的链路
traceIdNo精确的 trace_id/request_id 查询
statusMinNo最小 HTTP 状态码过滤(如 400 只显示错误请求)
includeBackendLogsNo是否同时从后端服务器 grep 日志(需要 SSH 免密)

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions aggregation of request/response bodies and console errors, and implies a read operation. However, it does not explicitly state whether the tool is read-only, requires specific permissions, or has any side effects. The parameter includeBackendLogs hints at SSH requirements, but this is not disclosed in the main description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the verb and resource. Every part is essential, and there is no wasted text. It is concise yet informative, capturing the core functionality and key capabilities.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and the absence of an output schema, the description covers the main functionality well: tracing chains and aggregating data. It specifies input methods (trace_id or time point) and data collected (request/response bodies, console errors). However, it does not mention the output format (e.g., list of chains) or any limitations (e.g., time range constraints). A bit more detail on what the output looks like would make it more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% description coverage for all 5 parameters, so the tool description adds minimal value beyond context. It does not detail parameter usage or provide additional semantics beyond what the schema offers. The baseline is 3, and the description meets that without exceeding it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: tracing the full request chain from frontend to API to backend using trace_id or time point. It specifies the resource ('全链路调用链') and the action ('追溯'). The description differentiates from sibling tools like browser_network_detail (focus on network requests) and browser_flow (step flows) by emphasizing full chain aggregation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for tracing chains via trace_id or time point, but it does not explicitly state when to use this tool over alternatives like browser_network_detail or browser_trace_start/stop. No guidance on prerequisites or when not to use is provided. Given the many sibling tools, more explicit usage context would be helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_trace_startB

开始浏览器追踪会话,记录页面加载和交互过程中的性能数据

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description mentions recording performance data but does not disclose behavioral traits such as whether the trace is destructive, what kind of data is collected, or if it requires a page to be loaded. Lacks details on side effects or state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, concise and to the point. No verbose or redundant information. However, it could be slightly more informative without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no parameters and no output schema, the description omits important context such as what the return value is (e.g., trace ID), how to stop the trace, or how the recorded data can be accessed. For a session-starting tool, this is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, schema description coverage is 100%. The description implicitly indicates no parameters are needed. Baseline for 0 parameters is 4; description adds no unnecessary information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool starts a browser trace session and records performance data. It uses specific verb+resource. However, it does not explicitly differentiate from similar tools like browser_performance_trace or browser_trace_stop, but the name and context imply the distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like browser_performance_trace or browser_trace_stop. Does not specify prerequisites or conditions for starting a trace. Agent must infer usage from name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_trace_stopA

停止浏览器追踪会话,返回收集到的追踪数据

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It states the tool stops the session and returns data, which is sufficient for basic understanding. However, it does not disclose potential side effects (e.g., whether ongoing events are discarded) or behavior when no trace is active.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded, and contains no extraneous information. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and no output schema, the description is largely complete. It covers the action and result. A minor missing detail is the prerequisite of an active trace, but this is implied. Overall, the agent can select and invoke the tool correctly with this information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters (0 params, 100% coverage). According to guidelines, baseline is 4. The description correctly does not add parameter information since none exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stops a browser tracing session and returns collected data. It uses a specific verb ('stop') and identifies the resource ('browser tracing session'), making it unambiguous despite being in Chinese. The sibling tools include 'browser_trace_start' and 'browser_trace_chain', so this complements them clearly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. It implies it should be used after starting a trace, but does not state prerequisites or when not to use it. The context is implied from the name and description, but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_traverse_menuA

Auto-traverse page navigation menus level by level (1/2/3 tier), clicking each item while checking console errors, page errors, and network errors per step. Auto-detects standard nav containers, sidebars, and UI framework menus (Ant Design/Element UI); falls back to full-page link scan if not found.

中文详情:

  • 用途:自动遍历页面导航菜单,逐级点击一级/二级/三级菜单项,每步检查控制台/页面/网络错误,验证功能链路是否正常

  • 何时使用:站点功能回归测试时;页面健康检查时;新版本上线前菜单遍历验证时;UI 框架迁移后菜单稳定性测试时

  • 输出:{ ok: boolean, totalItems: number, clickedItems: number, results: array, errors: array } — 每项含 { text, url, urlChanged, pageTitle, consoleErrors, networkErrors, success }

  • 参数:

    • maxDepth (number, 可选):最大遍历深度(1=仅一级,2=含二级,3=含三级),默认 3

    • maxItems (number, 可选):最大点击次数,防止无限遍历,默认 30

    • waitMs (number, 可选):每次点击后的等待时间(毫秒),默认 500

    • includeSubMenus (boolean, 可选):是否自动展开并点击子菜单,默认 true

  • 错误:未找到菜单容器时降级扫描全页面链接;遍历超时会在 results 中标记 timeout

  • 示例:{"maxDepth":2,"maxItems":20,"waitMs":800,"includeSubMenus":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
waitMsNo每次点击后的等待时间(毫秒),默认500
maxDepthNo最大遍历深度(1=仅一级,2=含二级,3=含三级),默认3
maxItemsNo最大点击次数,防止无限遍历,默认30
includeSubMenusNo是否自动展开并点击子菜单,默认true

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It details auto-detection of nav containers, fallback to full-page link scan, error checking per step, output structure, and timeout handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English summary, Chinese details, and bullet points. While bilingual, it is efficient and covers all key aspects without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with no output schema, the description includes output structure, error handling, parameter details, and fallback behavior. It is complete and actionable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions. The description adds context beyond schema by explaining default values, behavior (e.g., includeSubMenus default true), and example usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: auto-traverse page navigation menus, clicking each item while checking errors. It distinguishes from siblings like browser_click (single click) and browser_navigate (navigation).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage scenarios in Chinese (e.g., regression testing, health check, menu traversal verification, stability testing). It also describes fallback behavior and alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_typeA

Type text into a DOM element matched by CSS selector in a real browser, simulating real keyboard input.

中文详情:

  • 用途:在真实浏览器中向指定 CSS 选择器元素输入文本(输入框、文本域、搜索框等)

  • 何时使用:填写登录表单用户名/密码时;搜索框输入查询词时;textarea 输入长文本时;测试输入框字符限制时

  • 输出:{ ok: boolean, typedSelector: string, textLength: number, timestamp: string }

  • 参数:

    • selector (string, 必填):CSS 选择器,支持 Playwright 语法

    • text (string, 必填):要输入的文本内容

  • 错误:选择器无匹配抛出 'element not found';元素不可编辑抛出 'element not editable'

  • 示例:{"selector":"#username","text":"testuser@example.com"}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes要输入的文本
selectorYesCSS 选择器

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It mentions simulating real keyboard input but does not disclose details like whether it clears existing text, supports special keys, or handles events. It does list errors and output, but overall transparency is moderate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English summary and Chinese details. It is concise but includes necessary usage guidance, error info, and example. The bilingual approach adds some redundancy but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description covers purpose, usage, parameters, errors, and output format. It is fairly complete for a two-parameter tool, though behavioral details could be richer.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, yet the description adds value by explaining each parameter's purpose (e.g., 'CSS selector, supports Playwright syntax') and providing an example. This goes beyond the schema's minimal descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Type text into a DOM element matched by CSS selector in a real browser, simulating real keyboard input.' This provides a specific verb, resource, and nuance, distinguishing it from siblings like browser_click or browser_aria_type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes explicit 'when to use' scenarios in Chinese (e.g., filling login forms, search boxes, textarea, testing input limits), providing clear context. It does not explicitly mention when not to use or alternatives, but the guidance is strong.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_verify_fixA

修复验证闭环工具。记录修复前状态(错误数、元素状态),执行修复操作(browser_click/type/wait等),验证修复后状态,对比前后差异,确认修复是否生效。返回 before/after 对比、fixStatus、verificationResult、nextAction。

ParametersJSON Schema
NameRequiredDescriptionDefault
timeoutNo验证超时时间(毫秒),默认10000
fixValueNo修复动作值(type时为输入文本,wait时为毫秒数,scroll时为距离)
selectorYes目标元素选择器(必填)
fixActionNo修复动作类型:click(点击)、type(输入)、wait(等待)、scroll(滚动)、quick_fix(自动修复)、none(仅验证不修复)quick_fix
verificationCriteriaNo验证标准

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It outlines the flow (record, execute, verify, compare, return) and mentions return fields. However, it lacks details on side effects, error handling, or failure scenarios, which is a gap for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with purpose, listing return fields. It is efficient but could be slightly more structured with bullet points for readability. No waste sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters (1 required, enum, nested object) and no output schema, the description covers the tool's flow and return values well. It compensates for the lack of output schema by listing before/after, fixStatus, etc. Reasonably complete for a repair-verification tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add significant meaning beyond the schema, which already describes all parameters well. It mentions the default fixAction but no additional semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a 'repair verification closed-loop tool' that records pre-state, executes repair actions, verifies post-state, and compares differences. It distinguishes itself from sibling tools like browser_click or browser_quick_fix by integrating repair with verification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for usage, listing supported repair actions (click, type, wait, etc.) and the default action (quick_fix). However, it does not explicitly state when not to use this tool or suggest alternatives, such as directly using browser_click or browser_quick_fix.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visualA

视觉回归与 UI 检查工具(v1.9.5 起合并 browser_visual_baseline/compare/report/check/snapshot + screenshot_diff)。通过 mode 参数区分子模式:baseline(默认,建立视觉基线 PNG)/ compare(截取实际图与基线对比,生成 diff)/ report(列出所有视觉产物)/ check(无基线 UI 问题扫描)/ snapshot(三级快照:截图+DOM+CSS)/ diff(手动指定两张截图对比,等价于已废弃的 screenshot_diff)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo视觉模式:baseline(默认,建立基线)/ compare(与基线对比)/ report(列出视觉产物)/ check(UI 问题扫描)/ snapshot(三级快照)/ component(组件级元素视觉比对,需指定 name 和 selector)/ diff(手动对比两张截图,等价于 screenshot_diff)baseline
nameNo基线/对比/产物名称,不含扩展名(mode=baseline/compare/component/diff 时使用;mode=component 时必填)
fullPageNo是否全页截图,默认 true;selector 存在时忽略(mode=baseline/compare/snapshot 时使用)
selectorNo可选 CSS 选择器;指定后只截取该元素(mode=baseline/compare/snapshot/diff 时使用;mode=component 时必填)
severityNo最低报告级别(mode=check 时使用),默认 majormajor
afterPathNoactualPath 的别名(mode=diff 时使用)
thresholdNo差异阈值,默认 0.01(mode=diff 时使用)
viewportsNo响应式检查的 viewport 列表(mode=check 时使用)
actualPathNo实际截图路径(mode=diff 时使用)
beforePathNobaselinePath 的别名(mode=diff 时使用)
sessionNameNo浏览器会话名称,默认当前活跃会话(mode=baseline/compare/snapshot/component 时使用)
baselinePathNo基线截图路径(mode=diff 时使用)
detectIssuesNo是否自动检测 UI 问题,默认 true(mode=snapshot/check 时使用)
maskSelectorsNo截图前额外遮挡/脱敏的 CSS 选择器列表,用于忽略动态区域(mode=baseline/compare 时使用)
viewportWidthNo自定义 viewport 宽度(mode=snapshot 时使用)
viewportHeightNo自定义 viewport 高度(mode=snapshot 时使用)
includeMetadataNo是否包含完整元数据,默认 true(mode=snapshot 时使用)
includeResponsiveNo是否包含响应式检查,默认 false(mode=check 时使用)
maxDiffPixelRatioNo组件级视觉比对允许的最大差异像素比例,默认 0.01(mode=component 时使用)
includeAccessibilityNo是否包含可访问性检查,默认 true(mode=check 时使用)

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must shoulder the behavioral burden. It explains the tool as a merged entity and describes each mode's action (e.g., generating baselines, diffs, reports). However, it does not disclose side effects like file creation, resource usage, or prerequisites for each mode.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense paragraph that efficiently conveys the tool's nature and mode breakdown. Every sentence provides necessary information without redundancy. Slightly longer due to parameter enumeration, but justified by complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 20 parameters and no output schema, the description adequately outlines mode-specific usage. However, it lacks information about return values or output structure, which is needed for an agent to interpret results correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% parameter description coverage. The description adds value by grouping parameters per mode (e.g., 'mode=diff 时使用'), clarifying context beyond schema. This helps an agent understand parameter applicability.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a visual regression and UI checking tool that consolidates multiple modes. It uses specific verbs and resources ('视觉回归', 'UI 检查'). However, it does not explicitly differentiate from sibling tools like browser_screenshot or browser_snapshot, which carry similar functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a detailed breakdown of each mode and when to use them (e.g., 'baseline(默认,建立视觉基线 PNG)'). It lacks external guidance on when to prefer this tool over siblings or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_baselineA

Create a visual regression baseline PNG for the current page or a specific element. Defaults to full-page screenshot and auto-masks sensitive inputs (password, token, apiKey).

中文详情:

  • 用途:为当前页面或指定元素创建视觉回归基线 PNG,作为后续 visual_compare 的对比基准

  • 何时使用:首次建立视觉回归基线时;UI 升级后重置基线时;多 viewport 视觉测试前建立基准时;组件级视觉对比前创建基线时

  • 输出:{ ok: boolean, name: string, path: string, selector: string|null, fullPage: boolean, timestamp: string }

  • 参数:

    • name (string, 必填):基线名称,不含扩展名

    • selector (string, 可选):CSS 选择器;指定后只截取该元素

    • fullPage (boolean, 可选):是否全页截图,默认 true;selector 存在时忽略

    • maskSelectors (array, 可选):截图前额外遮挡/脱敏的 CSS 选择器列表

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:name 为空抛出 'Name is required';selector 无匹配抛出 'element not found';浏览器未启动抛出 'Browser not launched'

  • 示例:{"name":"login-page-baseline","fullPage":true,"maskSelectors":[".ad-banner"]}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes基线名称,不含扩展名
fullPageNo是否全页截图,默认 true;selector 存在时忽略
selectorNo可选 CSS 选择器;指定后只截取该元素
sessionNameNo浏览器会话名称,默认当前活跃会话
maskSelectorsNo截图前额外遮挡/脱敏的 CSS 选择器列表

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description covers default full-page screenshot, auto-masking of sensitive inputs, output object structure, and error cases. No annotations exist, so this is good, but explicit side-effect statements (e.g., file creation) are implied rather than stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The English part is concise, and the Chinese section is well-structured with bullet points. The bilingual nature adds length, but it is still efficient and front-loaded with the purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description provides a full output object, error scenarios, and usage guidelines. With 5 parameters and no annotations, it covers all needed context comprehensively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds extra context for each parameter (e.g., 'selector: CSS selector; if specified, only that element is captured') and provides an example invocation. This significantly enhances understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Create a visual regression baseline PNG for the current page or a specific element' with defaults and auto-masking. This clearly distinguishes it from siblings like browser_visual_compare and browser_visual_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: first-time baseline, reset after UI upgrade, multi-viewport testing, component-level comparison. This provides clear guidance on appropriate scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_checkA

No-baseline automated UI issue scan: scans the current page for common UI problems (invisible text, overlapping elements, z-index occlusion, small click targets, blank regions, overflow, missing image alt, contrast issues, responsive breakpoints) and returns a natural-language issue list.

中文详情:

  • 用途:无需基线直接扫描当前页面常见 UI 问题(文字不可见、元素重叠、z-index 遮挡、点击区域过小、空白区域、溢出、图片 alt 缺失、对比度不足、响应式断点等),输出自然语言描述的问题清单

  • 何时使用:UI 走查时快速发现问题;上线前 UI 健康检查;多 viewport 响应式验证;可访问性基础扫描(对比度/alt 缺失)时

  • 输出:{ ok: boolean, totalIssues: number, issues: array, summary: string } — 每项含 { severity, category, description, selector, recommendation }

  • 参数:

    • includeAccessibility (boolean, 可选):是否包含可访问性检查(图片 alt 缺失、对比度检测),默认 true

    • includeResponsive (boolean, 可选):是否包含响应式检查,默认 false

    • viewports (array, 可选):响应式检查的 viewport 列表,可选 mobile/tablet/desktop,仅当 includeResponsive=true 时生效,默认 ["mobile","tablet"]

    • severity (string, 可选):最低报告级别,可选 blocking/major/minor,默认 major

  • 错误:浏览器未启动抛出 'Browser not launched';viewport 无效抛出 'Invalid viewport'

  • 示例:{"includeAccessibility":true,"includeResponsive":true,"viewports":["mobile","desktop"],"severity":"major"}

ParametersJSON Schema
NameRequiredDescriptionDefault
severityNo最低报告级别:blocking(只报阻断级)/ major(报阻断+严重级)/ minor(全部报告),默认majormajor
viewportsNo响应式检查的viewport列表,仅当 includeResponsive=true 时生效
includeResponsiveNo是否包含响应式检查,默认false
includeAccessibilityNo是否包含可访问性检查(图片alt缺失、对比度检测),默认true

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It describes the tool's behavioral traits: it scans the current page without a baseline, returns a natural-language issue list, and lists error conditions ('Browser not launched', 'Invalid viewport'). It does not explicitly state non-modification or side effects, but the read-only nature is implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with an English summary followed by Chinese details in bullet points. It is front-loaded with the core concept. While slightly long, every section adds value and the formatting aids readability. A more concise English-only version could be constructed, but the current structure is functional.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description fully specifies the output format ({ ok, totalIssues, issues, summary }), issue categories, parameters with defaults, error messages, and an example. This provides complete contextual information for an agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, providing a baseline of 3. The description adds significant extra meaning beyond the schema, including detailed parameter descriptions in Chinese, conditional logic (e.g., viewports only effective when includeResponsive=true), and an example invocation. This justifies a score above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as a no-baseline automated UI issue scan, listing specific types of problems it detects. The name and description directly convey the verb ('scan') and resource ('current page') and distinguish it from sibling tools like browser_visual_compare and browser_a11y_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a dedicated 'when to use' section covering UI walkthroughs, pre-deploy checks, responsive verification, and accessibility scanning. It provides clear usage context but does not explicitly mention when not to use or alternatives like browser_a11y_check for dedicated accessibility testing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_compareA

Capture an actual PNG of the current page, compare against the same-named visual baseline, generate a diff PNG, and return diffPixels, diffRatio, passed flag, and artifact paths.

中文详情:

  • 用途:截取当前页面 actual PNG 与同名视觉基线对比,生成 diff PNG 并返回差异指标和产物路径

  • 何时使用:UI 改动后回归对比时;多环境(dev/staging/prod)视觉一致性验证时;组件样式调整后差异检测时;CI 中视觉回归门禁时

  • 输出:{ ok: boolean, name: string, baselinePath: string, actualPath: string, diffPath: string, diffPixels: number, diffRatio: number, passed: boolean, threshold: number }

  • 参数:

    • name (string, 必填):要对比的基线名称,不含扩展名

    • selector (string, 可选):CSS 选择器;需与基线截图范围一致

    • fullPage (boolean, 可选):是否全页截图,默认 true;selector 存在时忽略

    • maskSelectors (array, 可选):截图前额外遮挡/脱敏的 CSS 选择器列表,用于忽略动态区域

    • maxDiffPixelRatio (number, 可选):允许的最大差异像素比例,默认 0.01

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:基线不存在抛出 'Baseline not found, run browser_visual_baseline first';selector 无匹配抛出 'element not found'

  • 示例:{"name":"login-page-baseline","maxDiffPixelRatio":0.005,"maskSelectors":[".timestamp"]}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes要对比的基线名称,不含扩展名
fullPageNo是否全页截图,默认 true;selector 存在时忽略
selectorNo可选 CSS 选择器;需与基线截图范围一致
sessionNameNo浏览器会话名称,默认当前活跃会话
maskSelectorsNo截图前额外遮挡/脱敏的 CSS 选择器列表,用于忽略动态区域
maxDiffPixelRatioNo允许的最大差异像素比例,默认 0.01

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It describes the entire process (capture, compare, generate diff, return artifacts) and documents two error cases (missing baseline, selector not found). It does not mention potential side effects or performance impacts, but the behavioral outline is thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with English first then Chinese. The bilingual approach adds length but both parts are necessary for the target audience. Every sentence adds value, though the English and Chinese sections overlap somewhat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description itemizes all return fields. It covers all 6 parameters, lists error conditions, and provides an example. This fully compensates for the missing output schema given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds extra semantics: name without extension, sessionName default, selector consistency requirement, and an example JSON. These additions justify a score above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it captures a PNG, compares against a baseline, generates a diff, and returns metrics. It uses specific verbs and resources, and the detailed explanation leaves no ambiguity about the tool's function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists usage scenarios (UI regression, multi-environment consistency, style adjustment detection, CI gates). It does not specify when not to use or mention alternatives, but the given contexts are clear and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_componentA

Component-level visual diff in one call: capture a screenshot of the CSS-selected component, compare against same-named baseline, return diffPixels/diffRatio/passed. Auto-creates the baseline if missing and returns baseline_created flag.

中文详情:

  • 用途:组件级视觉对比,一次调用完成组件截图 → 与同名基线对比 → 返回差异指标;基线不存在时自动创建并返回 baseline_created 标记

  • 何时使用:组件库视觉回归时;卡片/弹窗/表格等独立组件 UI 验证时;多主题(light/dark)组件对比时;增量 UI 改动只对比受影响组件时

  • 输出:{ ok: boolean, name: string, selector: string, baselinePath: string, actualPath: string, diffPath: string, diffPixels: number, diffRatio: number, passed: boolean, baseline_created: boolean }

  • 参数:

    • name (string, 必填):组件基线名称,不含扩展名

    • selector (string, 必填):CSS 选择器,精确选择要对比的组件

    • maxDiffPixelRatio (number, 可选):允许的最大差异像素比例,默认 0.01

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:selector 无匹配抛出 'element not found';选择器匹配多个元素抛出 'Selector matches multiple elements, refine it'

  • 示例:{"name":"product-card","selector":".product-card","maxDiffPixelRatio":0.005}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes组件基线名称,不含扩展名
selectorYesCSS 选择器,精确选择要对比的组件
sessionNameNo浏览器会话名称,默认当前活跃会话
maxDiffPixelRatioNo允许的最大差异像素比例,默认 0.01

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description covers behavioral traits: it captures a screenshot, compares to a baseline, auto-creates the baseline if missing, returns diff metrics and flags. It also lists error conditions (no match, multiple matches). It could mention if it modifies browser state, but overall it's transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: an English summary followed by Chinese details in bullet points. It is front-loaded with the key purpose and output, and every sentence adds necessary information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema and no annotations, the description fully covers purpose, usage, parameters, output structure (list of fields), errors, and an example. It leaves no significant gaps for an agent to understand the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description adds value: it states the default for maxDiffPixelRatio (0.01) and that sessionName defaults to the current active session. It also provides an example JSON, reinforcing parameter usage beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it performs a component-level visual diff, capturing a screenshot of a CSS-selected component and comparing it against a same-named baseline. The verb 'capture and compare' plus the resource 'component' is specific. It distinguishes from sibling tools like browser_visual (presumably full-page) and browser_visual_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: component library visual regression, independent component UI verification, multi-theme comparison, and incremental UI changes. It does not explicitly say when not to use, but the guidance is clear and context-specific.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_reportA

List all visual regression artifacts (baselines, actuals, diffs) and recent comparison results in the project.

中文详情:

  • 用途:列出视觉回归基线、actual、diff 产物文件和最近比较结果,便于人工审查

  • 何时使用:视觉回归测试后查看历史对比时;清理旧基线前盘点时;调试 visual_compare 结果时;报告汇总时

  • 输出:{ ok: boolean, baselines: array, actuals: array, diffs: array, recentResults: array, total: number } — 每项含 { name, path, size, createdAt }

  • 参数:无

  • 错误:无产物时返回空数组但 ok=true

  • 示例:{}

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the output structure (ok, baselines, actuals, diffs, recentResults, total) and error behavior (empty arrays with ok=true). However, it does not explicitly state that the tool is read-only or has no side effects, which is a minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The English part is a single sentence, and the Chinese part adds structured details. The information is front-loaded, but the bilingual nature may be slightly redundant for an English-speaking agent. Overall, every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity, no output schema, and no annotations, the description adequately covers purpose, output format, error handling, and usage contexts. It is complete for an agent to decide when and how to invoke this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema coverage is 100% (empty object). The description explicitly states '参数:无' (parameters: none). Since there are no parameters to document, the baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists visual regression artifacts (baselines, actuals, diffs) and recent comparison results. This distinguishes it from sibling tools like browser_visual_compare or browser_visual_check which perform comparisons or checks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: after visual regression tests to view history, before cleaning baselines, debugging visual_compare results, and report summaries. This provides clear context and implicitly states when not to use (e.g., when you need to perform a comparison).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_visual_snapshotA

Three-level snapshot: capture screenshot + DOM state snapshot + CSS computed properties in one call, with automatic L1+L2 UI issue detection (invisible text, overlapping elements, large blank regions, z-index occlusion, small click targets, overflow).

中文详情:

  • 用途:三级快照工具,一次性获取截图 + DOM 状态快照 + CSS 计算属性,并自动检测 L1+L2 级别 UI 问题

  • 何时使用:UI 缺陷排查时需要同时查看图/结构/样式时;调试元素不可见原因时;自动化发现问题后人工定位时;回归测试前留档页面状态时

  • 输出:{ ok: boolean, screenshotPath: string, dom: object, computedStyles: object, issues: array, viewport: { width, height }, timestamp: string }

  • 参数:

    • selector (string, 可选):CSS 选择器;不传则全页

    • fullPage (boolean, 可选):是否全页截图,默认 true

    • includeMetadata (boolean, 可选):是否包含完整元数据,默认 true

    • detectIssues (boolean, 可选):是否自动检测 UI 问题,默认 true

    • viewportWidth (integer, 可选):自定义 viewport 宽度

    • viewportHeight (integer, 可选):自定义 viewport 高度

    • sessionName (string, 可选):浏览器会话名称,默认当前活跃会话

  • 错误:selector 无匹配抛出 'element not found';浏览器未启动抛出 'Browser not launched'

  • 示例:{"selector":".header","fullPage":false,"detectIssues":true,"viewportWidth":375,"viewportHeight":812}

ParametersJSON Schema
NameRequiredDescriptionDefault
fullPageNo是否全页截图,默认 true
selectorNo可选 CSS 选择器;不传则全页
sessionNameNo浏览器会话名称,默认当前活跃会话
detectIssuesNo是否自动检测 UI 问题,默认 true
viewportWidthNo自定义 viewport 宽度
viewportHeightNo自定义 viewport 高度
includeMetadataNo是否包含完整元数据,默认 true

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description details the output structure, automatic issue detection, and errors for missing selectors or unlaunched browsers. Without annotations, it covers essential behavioral aspects, though it could mention that it is a read-only operation (no destructive side effects).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (purpose, details, output, parameters, errors, example). It is front-loaded with a concise English summary, but includes duplicate information in Chinese and English, making it slightly longer than necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 7 optional parameters and no output schema, the description covers output shape, parameter details, errors, and provides an example. It is sufficient for an agent to use correctly, though the return format's properties (e.g., issues array) could be elaborated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context like example usage and defaults, but much of the parameter info is already in the schema. The description does not significantly enhance understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a 'three-level snapshot' combining screenshot, DOM snapshot, and CSS properties with automatic UI issue detection. This distinguishes it from sibling tools like browser_visual (just screenshot) and browser_snapshot (likely just DOM).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly lists when to use the tool (e.g., debugging invisible elements, regression testing). It also mentions error conditions. However, it does not explicitly state when not to use or name alternative tools for comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

browser_waitA

Wait for the browser to reach a specified condition: element visible/hidden/detached, text appears, URL contains substring, load state, or a fixed duration. Used to stabilize asynchronous flows.

中文详情:

  • 用途:等待真实浏览器达到指定状态(元素出现/隐藏、文本出现、URL 包含、加载状态、固定时间),稳定异步流程

  • 何时使用:点击后等待 loading 消失时;异步请求后等待元素出现时;SPA 路由跳转后等待 URL 变化时;轮询前固定延迟时;动画完成后继续操作时

  • 输出:{ ok: boolean, condition: string, elapsed: number, timeout: number, timedOut: boolean }

  • 参数:

    • selector (string, 可选):要等待的 CSS 选择器,配合 state 使用

    • state (string, 可选):选择器状态,可选 attached/detached/visible/hidden,默认 visible

    • text (string, 可选):等待出现的页面文本

    • exact (boolean, 可选):文本是否精确匹配,默认 false

    • nth (number, 可选):当文本匹配多个元素时选择第几个,默认 0

    • urlContains (string, 可选):等待当前 URL 包含该字符串

    • loadState (string, 可选):等待加载状态,可选 load/domcontentloaded/networkidle

    • ms (number, 可选):固定等待毫秒数

    • timeout (number, 可选):超时时间,默认 10000ms

  • 错误:超时抛出 'Timeout XXXXms exceeded';未提供任何等待条件抛出 'No wait condition provided'

  • 示例:{"selector":".loading-spinner","state":"hidden","timeout":15000}

ParametersJSON Schema
NameRequiredDescriptionDefault
msNo固定等待毫秒数
nthNo当文本匹配多个元素时选择第几个,默认 0
textNo要等待出现的页面文本
exactNo文本是否精确匹配,默认 false
stateNo选择器状态:attached/detached/visible/hidden,默认 visible
timeoutNo超时时间,默认 10000ms
selectorNo要等待的 CSS 选择器
loadStateNo等待加载状态:load/domcontentloaded/networkidle
urlContainsNo等待当前 URL 包含该字符串

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses output format { ok, condition, elapsed, timeout, timedOut }, error messages (timeout, no condition), and lists all wait conditions. It does not mention authentication or rate limits, but these are not relevant for a wait tool. Overall, good transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with an English intro and a Chinese section breaking down into usage, output, parameters, errors, and example. It is somewhat verbose due to duplication, but the organization helps readability. Front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 optional parameters and no output schema, the description is remarkably complete. It covers all wait conditions, output shape, error messages, and an example. There is no ambiguity about how to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description's parameter list is largely redundant but adds context like '配合 state 使用' and '当文本匹配多个元素时'. It also provides an example. However, it doesn't add significant new meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Wait for the browser to reach a specified condition' and lists all possible conditions (element visible/hidden/detached, text appears, URL contains, load state, fixed duration). It clearly distinguishes the tool's purpose from sibling browser action tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section provides explicit when-to-use scenarios: after clicks waiting for loading, async requests, SPA routing, polling delays, animation completion. While it doesn't explicitly mention when not to use or alternatives, the guidance is clear and practical.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

business_loop_validateA

开源版业务闭环验证:自动��别页面上的业务关键节点(留资/下单/结算),并验证各节点的可达性、表单完整性和流程连贯性。识别 6 类业务节点:lead_capture(留资)、product_browse(商品浏览)、cart(购物车)、checkout(下单结算)、payment(支付)、account(账户)。每类节点检查:可达性、表单字段、按钮、网络请求、状态转换。

ParametersJSON Schema
NameRequiredDescriptionDefault
loopNo业务闭环类型:ecommerce=电商(浏览→购物车→下单→支付);lead_gen=留资(访问→填表→提交);saas_signup=SaaS注册(访问→注册→激活);content_publish=内容发布(访问→编辑→发布);auto=自动识别auto
depthNo探测深度:1=仅当前页;2=跟随主要 CTA;3=完整流程测试
targetYes目标页面 URL(必填)
maxStepsNo最大流程探测步数
checkFormNo是否检查表单字段完整性
checkNetworkNo是否检查网络请求可达性

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the tool identifies 6 node types and checks various aspects (reachability, forms, buttons, network, state transitions). It does not state whether the tool is read-only or modifies state, but the task is validation-oriented, so likely non-destructive. This is fairly transparent for its purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise with a clear overview followed by a list of node types. It is well-structured and front-loaded with the core purpose. Minor redundancy could be trimmed but overall effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters and no output schema, the description lacks details on return values or how to interpret results. It does explain what is checked but not what the agent receives back. Context is adequate for understanding the tool's function but incomplete for full usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add parameter-level details beyond the schema. It mentions node types but those are not parameters. The schema already describes each parameter adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool validates business loops by identifying 6 specific node types (lead_capture, product_browse, etc.) and checking reachability, form integrity, and flow coherence. This is distinct from sibling tools like browser_flow or validation_flow which are more general.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for business loop validation but does not explicitly state when to use this tool over alternatives like browser_flow, validation_flow, or browser_smoke_test. No when-not or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bypass_loginA

开源版认证绕过检测:通过多种方式测试是否可以绕过登录验证直接访问受保护页面/API。包括:无 Cookie 请求、修改用户 ID、移除 Authorization 头、测试常见后门路径等。

ParametersJSON Schema
NameRequiredDescriptionDefault
targetUrlYes目标受保护页面的 URL
testCasesNo要执行的测试用例列表
authApiPathNo认证 API 路径(如 /api/auth/me),用于验证当前登录状态
maxTestCountNo最大测试次数
userIdToTestNoIDOR 测试时使用的其他用户 ID
backdoorPathsNo自定义后门路径列表,默认使用内置常见路径

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses that the tool tests multiple bypass methods (no cookie, modify user ID, remove auth header, backdoor paths) but does not mention potential side effects, authorization requirements, or state changes. This is moderate transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (three sentences in Chinese) and front-loaded with the core purpose. Every sentence adds information without redundancy, making it efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains what the tool does and its methods, but it omits important context: there is no output schema, so the agent does not know what the tool returns (e.g., JSON with success/failure details). Given the tool's complexity and security implications, more context about output and safe usage is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and each parameter has a description. The tool description adds value by listing example test cases (e.g., no_cookie, fake_user_id) that correspond to the testCases enum, enhancing the schema meaning. It also clarifies the purpose of authApiPath and userIdToTest beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as 'authentication bypass detection' using multiple methods. It specifies the verb (检测) and resource (登录验证 bypass), and distinguishes itself from sibling security tools by focusing specifically on bypassing login verification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no explicit guidance on when to use this tool versus alternatives like security_scan or security_sql_injection_scan. It does not mention when not to use it or any prerequisites, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_list_templatesA

列出所有内置链路规格模板,包括 marketplace-purchase、login-basic、credits-balance 等。每个模板包含名称、描述、步骤数、是否有状态源、目标 URL。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description adequately discloses it is a read-only list operation. Lacks details on side effects or authentication, which are minimal for this tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states purpose and examples, second details template contents. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no output schema, description fully covers what the agent needs: that it lists templates and what each contains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters in schema, so description cannot add meaning. Baseline 4 is appropriate as schema coverage is 100%.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool lists built-in chain spec templates and provides examples. Distinguishes from sibling tools by focusing on template listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when/when-not guidelines, but implied usage for retrieving templates. No alternatives mentioned despite sibling chain tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_score_reportA

对 chain_spec_run 结果输出 5 维评分报告:功能链路(步骤通过率)、技术链路(API/网络成功率)、一致性(状态 diff 通过率)、契约(API schema 校验)、可观测性(错误采集质量)。输出加权总分和等级。先做进现有 MCP,后续再剥离。

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdNo可选,链路运行 ID
resultNochainResult 的别名
chainResultNochain_spec_run 的完整返回结果对象

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral disclosure burden. It only describes output content and does not mention side effects, read-only nature, required permissions, or any safety traits. For a reporting tool, it is likely read-only, but this is not stated, leaving behavioral assumptions to the agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main purpose and dimensions. It avoids redundancy but includes a note about future separation. One sentence could be considered extraneous, but overall it efficiently conveys the tool's function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the output structure (5 dimensions, weighted total score, grade) without an output schema. It is sufficient for an agent to understand what the tool returns. However, it lacks specifics on scoring methodology or scale, which could be needed for precise invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with brief descriptions for each parameter (runId, result as alias, chainResult). The tool description adds context that the result comes from chain_spec_run, but does not add significant meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a 5-dimensional scoring report for chain_spec_run results, listing each dimension: functionality, technology, consistency, contract, and observability. This specific verb+resource combination distinguishes it from sibling tools like chain_spec_run (which runs the chain) and other reporting tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage after obtaining chain_spec_run results, but does not explicitly state when to use this tool versus alternatives. It lacks when-not guidance or alternative suggestions. The phrase '先做进现有 MCP,后续再剥离' provides context but not actionable usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_specA

链路规格工具(v1.9.5 起合并 chain_list_templates/chain_spec_run/chain_score_report)。通过 mode 参数区分子模式:list(默认,列出所有内置链路模板)/ run(按链路规格执行业务链路验证)/ score(对 chain_spec_run 结果输出 5 维评分报告)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo链路模式:list(默认,列出所有内置链路模板)/ run(执行链路规格验证)/ score(生成 5 维评分报告)list
nameNo链路名称,可作为 runId 兜底(mode=run 时使用)
runIdNo链路运行 ID。mode=run 不传则自动生成;mode=score 可选,用于标识评分对应的运行
stepsNo链路步骤列表,按顺序执行(mode=run 时使用)
resultNochainResult 的别名(mode=score 时使用)
timeoutNo打开 targetUrl 的超时时间,默认 30000ms(mode=run 时使用)
evidenceNo是否每个成功步骤都采集证据,默认 false(mode=run 时使用)
failFastNo步骤失败后是否立即停止,默认 true(mode=run 时使用)
settleMsNo每步完成后的默认稳定等待时间,默认 300ms(mode=run 时使用)
snapshotNo采集证据时是否保存 DOM 摘要,默认 true(mode=run 时使用)
templateNo内置链路模板名,如 marketplace-purchase、login-basic、credits-balance。指定后自动加载模板的 steps/stateSources/expectations/targetUrl,再用传入参数覆盖(mode=run 时使用)
targetUrlNo执行链路前先打开的页面 URL。指定 template 时可覆盖模板的 targetUrl(mode=run 时使用)
screenshotNo采集证据时是否截图,默认 true(mode=run 时使用)
chainResultNochain_spec_run 的完整返回结果对象(mode=score 时使用)
expectationsNo整条链路最终状态断言(mode=run 时使用)
stateSourcesNo整条链路执行前后要采集并对比的状态源(mode=run 时使用)
finalEvidenceNo链路结束时是否采集最终证据,默认 false(mode=run 时使用)
networkFilterNo网络请求过滤条件(mode=run 时使用)
evidenceOnFailNo失败步骤是否采集证据,默认 true(mode=run 时使用)
failOnRuntimeErrorNo每步出现 Console/PageError/Network 错误时是否判失败,默认 true(mode=run 时使用)

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It describes the three modes but fails to mention any side effects, permissions, or potential destructive actions (e.g., browser navigation in run mode). The description is too brief to cover behavioral aspects adequately.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the merge context followed by mode breakdown. Every sentence adds value, and the structure is clear and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (20 parameters, nested objects, no output schema), the description lacks details on return values or expected outputs, especially for 'run' and 'score' modes. It mentions a scoring report but no specifics. The tool also interacts with browsers but no behavioral context is provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains all 20 parameters. The description adds value mainly by explaining the mode parameter and its enums, but does not elaborate on other parameters beyond what the schema provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a chain specification tool that integrates three previous tools, and explains the three modes (list, run, score) with specific purposes. It distinguishes from sibling tools like chain_list_templates, chain_spec_run, and chain_score_report by noting the merge.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use each mode: list for listing templates, run for executing chain validation, score for generating scoring reports. It also mentions the merge, implying these were separate alternatives, providing clear guidance on tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chain_spec_runC

按链路规格执行简化版业务链路验证:支持打开页面、点击、输入、等待、断言、状态采集/对比,并汇总每步 Console、PageError、Network、状态 diff 和证据。先做进现有 MCP,后续再剥离为独立链路验证引擎。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo链路名称,可作为 runId 兜底
runIdNo本次链路运行 ID,不传则自动生成
stepsYes链路步骤列表,按顺序执行
timeoutNo打开 targetUrl 的超时时间,默认 30000ms
evidenceNo是否每个成功步骤都采集证据,默认 false
failFastNo步骤失败后是否立即停止,默认 true
settleMsNo每步完成后的默认稳定等待时间,默认 300ms
snapshotNo采集证据时是否保存 DOM 摘要,默认 true
templateNo内置链路模板名,如 marketplace-purchase、login-basic、credits-balance。指定后自动加载模板的 steps/stateSources/expectations/targetUrl,再用传入参数覆盖
targetUrlNo可选,执行链路前先打开的页面 URL。指定 template 时可覆盖模板的 targetUrl
screenshotNo采集证据时是否截图,默认 true
expectationsNo整条链路最终状态断言,结构同 state_diff_assert.expectations
stateSourcesNo整条链路执行前后要采集并对比的状态源,结构同 state_diff_assert.sources
finalEvidenceNo链路结束时是否采集最终证据,默认 false
networkFilterNo网络请求过滤条件,如 urlContains/method/statusMin/statusMax
evidenceOnFailNo失败步骤是否采集证据,默认 true
failOnRuntimeErrorNo每步出现 Console/PageError/Network 错误时是否判失败,默认 true

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavioral traits. It lists capabilities and summarization features (console, page errors, network, state diff, evidence) but omits critical details: whether a new browser session is created, side effects on browser state, resource cleanup, or destructive actions. The mention of 'simplified' and 'future extraction' does not clarify runtime behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise, listing capabilities in a single sentence. However, it includes meta comments about implementation ('先做进现有MCP,后续再剥离') that are irrelevant to an agent's use. This adds noise without improving understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (17 parameters, nested objects, no output schema), the description is insufficient. It does not specify the output format (only mentions 'summary' vaguely), nor does it highlight the only required parameter ('steps'). Important behaviors like error handling, timeout defaults, and template usage are left to the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The tool description adds little beyond the schema; it lists high-level actions (e.g., 'open page, click, input') that map to step types already documented in the schema. It does not explain parameter interactions or provide examples for complex nested objects like 'expectations' or 'stateSources'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool executes a simplified business chain validation with specific actions (open, click, input, wait, assert, state capture/compare) and summarizes results. It differentiates from sibling tools like 'browser_chain' by emphasizing 'spec' and a structured approach, though it doesn't explicitly distinguish from closely related tools like 'chain_spec' or 'browser_flow'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'browser_chain' or 'browser_step'. It lacks prerequisites, use cases, or exclusions, leaving the agent to infer context from the name and schema alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

contractA

API 契约工具。v1.9.5 起合并 contract_guard / contract_baseline。mode=guard 从前端实际消费的 API 响应中自动提取字段结构,生成 consumer contract(消费者契约),防止后端 API 漂移;mode=baseline 进行契约基线管理(保存/加载/对比/列出/删除)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo工作模式:guard(生成/校验消费者契约,默认)、baseline(基线管理)guard
nameNo基线名称(仅 mode=baseline),默认 'default'
sinceNo从 network 日志提取的时间起点(仅 mode=guard),默认当前 checkpoint
actionNo基线操作类型(仅 mode=baseline):list=列出所有基线、save=保存当前 contracts 为基线、load=加载指定基线、compare=对比当前 contracts 与基线、delete=删除基线list
contractsNosave/compare 操作时传入的 contracts 列表(仅 mode=baseline),通常来自 contract_guard 的输出
endpointsNo要直接调用并生成契约的端点列表(仅 mode=guard),每项包含 path/url/method/headers/body
fromNetworkNo是否从已捕获的 network 日志中提取 API 响应生成契约(仅 mode=guard),默认 true
urlContainsNo只处理 URL 包含此字符串的请求(仅 mode=guard)
autoDiscoverNo是否自动从 network 日志发现 API 端点(仅 mode=guard),默认 false
baselineNameNo基线名称(仅 mode=guard),默认 'default'
saveBaselineNo是否将本次生成的 contracts 保存为基线(仅 mode=guard),默认 false
compareBaselineNo是否与已保存的基线对比(仅 mode=guard),默认 false

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains the two modes and their basic operations, but does not disclose what the tool returns, side effects, permissions, rate limits, or how the output looks. This is adequate but not comprehensive for a tool without annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences that front-load the core purpose and mode differentiation. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (12 parameters, no output schema), the description covers the main modes but lacks details on output format, return values, or step-by-step usage guidance. It is minimally complete but could be more helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 12 parameters. The tool description adds overall context about merging and modes, but does not significantly enhance understanding beyond the schema. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is an API contract tool merged from contract_guard and contract_baseline, and explains two distinct modes (guard and baseline) with specific actions. This distinguishes it from sibling tools like contract_baseline and contract_guard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use each mode (guard for generating consumer contracts from actual API responses, baseline for managing baselines) and lists baseline actions (list/save/load/compare/delete). However, it does not explicitly state when not to use the tool or suggest alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

contract_baselineA

消费者契约基线管理:保存当前 schema 为基线、加载基线、对比当前 schema 与基线检测漂移、列出所有基线、删除基线。配合 contract_guard 使用,可实现 API 变更版本化守护。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo基线名称,默认 'default'。支持多套基线,如 'production'、'staging'、'v1.0' 等
actionNo操作类型:list=列出所有基线,save=保存当前 contracts 为基线,load=加载指定基线,compare=对比当前 contracts 与基线,delete=删除基线list
contractsNosave/compare 操作时传入的 contracts 列表(通常来自 contract_guard 的输出)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It lists the possible actions (save, load, etc.) but does not elaborate on side effects (e.g., overwriting behavior of save, irreversibility of delete) or authorization requirements. The description conveys basic operations but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, using a single sentence to list all actions and context. It front-loads the purpose. However, it could be structured with bullet points for clarity, but remains efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has multiple actions but no output schema, and the description fails to mention what each action returns (e.g., compare returns drift, list returns baselines). It also does not clarify that contracts parameter is only needed for save/compare, which could lead to misuse. Given the complexity, the description is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are well-documented in the schema. The description adds no additional semantic meaning beyond what the schema provides (e.g., action enum values or contracts field usage). Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool manages consumer contract baselines with specific actions (save, load, compare, list, delete) and mentions integration with contract_guard, distinguishing it from sibling tools like contract and contract_guard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates it should be used with contract_guard for API change versioning, providing context. However, it does not explicitly state when not to use it or provide alternatives, which is acceptable as no direct sibling exists for baseline management.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

contract_guardC

从前端实际消费的 API 响应中自动提取字段结构,生成 consumer contract(消费者契约),防止后端 API 漂移。支持两种来源:直接调用指定端点,或从已捕获的 network 日志中提取。先做进现有 MCP,后续再剥离。

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNo从 network 日志提取的时间起点,默认当前 checkpoint
endpointsNo要直接调用并生成契约的端点列表,每项包含 path/url/method/headers/body
fromNetworkNo是否从已捕获的 network 日志中提取 API 响应生成契约,默认 true
urlContainsNo只处理 URL 包含此字符串的请求
autoDiscoverNo是否自动从 network 日志发现 API 端点(当 endpoints 为空时生效),默认 false
baselineNameNo基线名称,默认 'default'。支持多套基线
saveBaselineNo是否将本次生成的 contracts 保存为基线,默认 false。保存后可用于后续对比
compareBaselineNo是否与已保存的基线对比,检测 schema 漂移,默认 false

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It does not disclose whether the tool modifies state, saves data, or has destructive effects. The note about temporary integration is not relevant behavioral info.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively concise but includes an implementation detail ('先做进现有 MCP,后续再剥离') that is not helpful for tool selection. The purpose is front-loaded, but the note reduces efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 parameters, no output schema, and no annotations, the description lacks details on return values, side effects, and how contracts are stored or used. The concept of 'baseline' is mentioned but not explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the parameter names and descriptions. It fails to clarify parameter interactions (e.g., when both endpoints and fromNetwork are set).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: automatically extract field structure from frontend API responses to generate consumer contracts and prevent backend API drift. It specifies the resources (API responses, consumer contracts) and mentions two sources. However, it does not explicitly differentiate from sibling tools like 'contract' or 'contract_baseline'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions two sources (direct endpoint calls or network logs) but provides no guidance on when to use each, nor does it contrast with alternative contract tools. This leaves the agent without clear usage criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

correlate_triple_checkA

开源版 UI-API 三方比对:从页面 DOM 提取数据,调用对应 API 获取数据,对比两者是否一致。支持列表页和详情页两种模式。检测数据不一致、字段遗漏、格式差异等问题。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYes比对模式:list=列表页模式(DOM表格 vs API列表);detail=详情页模式(DOM表单 vs API详情)list
maxRowsNo最大比对行数
apiMethodNoAPI 请求方法GET
apiPayloadNoPOST 请求时的请求体
strictModeNo严格模式:API 返回的字段必须在 DOM 中存在,否则视为差异
apiEndpointNoAPI 端点 URL(如 /api/leads),默认从当前页面 URL 推导
rowSelectorNo列表页模式:行选择器tr, [role="row"]
fieldMappingsNo字段映射配置:指定 DOM 元素与 API 字段的对应关系
tableSelectorNo列表页模式:表格选择器table, .table, [role="grid"]
identifierFieldNo唯一标识字段名,用于匹配 DOM 行与 API 记录id

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explains it extracts DOM data, calls an API, and compares them, detecting several issue types. However, it does not disclose whether the tool is read-only, what permissions it requires, or any side effects on browser state. Since no annotations are provided, the description carries the full burden and is moderately transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise—two sentences clearly stating the purpose, modes, and detection capabilities. It is front-loaded with the key action and adds no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description should explain return values. It mentions detection capabilities but does not describe the output format (e.g., does it return a diff report?). For a tool with 10 parameters and no output schema, more detail on results would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter having a description. The tool description is a high-level summary that does not add new meaning beyond the schema, but it does not need to because the schema already provides adequate detail. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool compares DOM data with API data to detect inconsistencies, omissions, and format differences. It mentions two modes (list and detail). However, it does not explicitly differentiate from sibling tools like 'browser_data_compare' or 'trace_correlation_check', which may have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is used when you need to verify UI-API consistency, but it provides no explicit guidance on when to use it versus alternatives, no prerequisites, and no conditions that would make it inappropriate. The mention of 'list' and 'detail' modes gives some context but lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

css_var_checkA

分析 CSS 文件中缺失的变量定义,并提供修复建议。扫描 CSS 内容,检测在 :root 或其他选择器中引用但未定义的 CSS 自定义属性(变量),为每个缺失变量生成 suggestedFix(建议值和插入位置)。

ParametersJSON Schema
NameRequiredDescriptionDefault
cssYes要分析的 CSS 文本内容
filePathNo可选,CSS 文件路径(用于输出引用)

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It clearly states that the tool analyzes CSS for missing variable definitions and generates suggestedFix, implying it is read-only. However, it does not describe the output format or any potential side effects, but the behavior is fairly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main purpose, and each sentence adds value. It is appropriately sized with no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description lacks details on the return structure. It mentions suggestedFix but does not fully specify output fields. Adequate but could be more complete for an analysis tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds some context linking parameters to the tool's analysis purpose, but does not provide additional meaning beyond what the schema already describes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs (分析, 扫描, 检测, 生成) and clearly states the resource (CSS files/variables). It distinguishes itself from sibling tools, none of which are CSS-specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide when-to-use or when-not-to-use guidance. It merely describes the tool's function without contextualizing its use versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

debug_investigateA

输入问题症状,自动汇总本轮 errors、events、network_detail、DOM 可见错误、storage、artifacts,并输出假设、证据链和下一步修复/复测建议。

ParametersJSON Schema
NameRequiredDescriptionDefault
focusNo关注的 URL/API 关键字,例如 /api/ai/summarize
limitNo网络和事件最多返回条数,默认 20/50
symptomNo问题现象,例如:点击 AI 要点后 403
expectedNo期望结果,例如:生成 AI 要点
statusMinNo只关注状态码大于等于该值的网络记录
urlContainsNofocus 的别名,按 URL 过滤网络和事件
includeStorageNo是否包含 storage 脱敏快照,默认 true
includeArtifactsNo是否包含 artifacts 列表,默认 true

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the tool's aggregation and analysis behavior but does not mention potential side effects, read-only nature, permission requirements, or whether it modifies state. The context added is helpful but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, information-dense sentence that front-loads the key purpose. It is concise but could benefit from structured formatting (e.g., bullet points) for clarity. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description adequately hints at the output (hypotheses, evidence chain, next steps). Parameter count is 8 with full schema coverage. The description is reasonably complete for a debugging aggregation tool, though it could specify the output format in more detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with each parameter having a clear description. The tool description adds overall context but does not elaborate on parameter meanings beyond what the schema already provides. Baseline score of 3 is appropriate given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool aggregates debugging information (errors, events, network, DOM, storage, artifacts) based on input symptoms and outputs hypotheses, evidence, and next steps. It distinguishes from sibling tools like browser_errors_aggregate or browser_events which handle only individual data sources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a problem symptom is known and a comprehensive investigation is needed. However, it does not specify when to prefer this over individual debugging tools (e.g., browser_errors_aggregate, browser_network) or provide exclusions. No explicit alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

dual_chain_exploreA

双链路并行探索:链路① Browser Agent 在真实浏览器中做黑客式功能探索(发现→正向→对抗→闭环),链路② Trace Agent 追踪全栈数据流(前端→API→后端→数据库),交叉验证后输出多维判定(真通过/假通过/渲染问题/数据问题)并自动修复。两条链路独立并行,结果交叉对比,打破 AI 代码「自己验证自己」的闭环。

ParametersJSON Schema
NameRequiredDescriptionDefault
chainsNo要执行的链路:'functional' 功能链路, 'technical' 技术链路。默认双链路并行
phasesNo要执行的阶段。默认 'all' 执行全部
targetYes目标系统 URL
autoFixNo发现断裂后是否自动修复。默认 true
dbConfigNo数据库配置,用于链路② Phase4 快照对比
sessionIdNo浏览器会话 ID(可选,不传则自动创建)
writeToMemoryNo是否将发现写入记忆体系。默认 true
explorationModeNo探索模式:normal 保守(top3), aggressive 全端点, hacker 最大攻击面+创造性探测normal
expectedBehaviorNo预期行为描述,用于 Phantom Data 检测

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behavioral traits: two independent parallel chains, cross-validation, auto-fix, and the goal to break self-verification. No annotations were provided, so the description carries the full burden, and it does so reasonably well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core concept and provides comprehensive detail in a single paragraph. It is concise given the complexity, though a structured list could improve readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity and lack of output schema, the description adequately explains the tool's process and what it achieves. It could mention the output format, but the cross-validation and auto-fix behavior is well-explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description does not add significant meaning beyond the schema. It provides context for the overall process but does not elaborate on individual parameters beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: dual-chain parallel exploration with specific chains (functional and technical), cross-validation, and auto-fix. It distinguishes itself from sibling tools by describing a complex multi-agent system that breaks the self-verification loop.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (thorough validation that breaks self-verification) but does not explicitly state when not to use or list alternatives. Given the context of sibling tools, this is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

error_analyzeA

错误分析工具(v1.9.5 起合并 error_fix_suggestion/error_summary_md)。通过 mode 参数区分子模式:fix(默认,根据错误日志生成修复建议)/ summary(生成错误摘要 Markdown 报告)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo分析模式:fix(默认,生成修复建议)/ summary(生成错误摘要 Markdown)fix
limitNo返回数量限制(mode=fix/summary 时使用)
errorsNo错误列表(mode=fix/summary 时使用)
formatNo输出格式(mode=summary 时使用)markdown
errorTypeNo错误类型过滤(mode=fix 时使用)

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does not disclose whether the tool is read-only or has side effects, what authentication or permissions are needed, or any limitations (e.g., input size, error handling). Only the mode and default are mentioned, leaving significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences. It is front-loaded with the most important information (tool purpose and merger) and quickly details the mode sub-functions. No unnecessary words or repetitions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters and no output schema, the description provides basic context about modes but lacks details on output formats (beyond mentioning Markdown for summary), error handling, and prerequisites. It is adequate for a simple tool but leaves gaps for a complete understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the description adds limited value beyond the schema. It explains the mode parameter's options, which the schema also does. The description does not provide additional meaning for other parameters (limit, errors, format, errorType) beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as an error analysis tool that merges two previous tools (error_fix_suggestion and error_summary_md). It specifies two modes: fix (generating fix suggestions from error logs) and summary (generating error summary Markdown reports). The verb 'analyze' and the resource 'errors' are implicit but clearly communicated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions that the tool merged error_fix_suggestion and error_summary_md, implying it should be used instead of those. However, it does not provide explicit guidance on when to use this tool versus other sibling tools like browser_errors or other error-related tools. The distinction is implicit through the mode parameter.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

error_fix_suggestionA

基于 errorSummary 和 contextFiles 返回最多 3 个最小修复建议;不自动改码。

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNo
contextFilesNo
errorSummaryYes错误摘要,可为字符串或对象
maxSuggestionsNo返回建议的最大数量(默认 3)

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states that the tool does not automatically modify code, which is a key behavioral trait. However, it does not mention other aspects like idempotency, side effects, or permission requirements, leaving gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the core purpose and constraints. No superfluous words. The semicolon separates the action from a key behavioral note, making it efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains that the tool returns up to 3 minimal fix suggestions, but does not specify the format or structure of the output. It also lacks context on how it relates to sibling tools, leaving some ambiguity for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50% (2 of 4 params have descriptions). The description mentions using errorSummary and contextFiles, and implies a default of 3 suggestions, adding minimal value beyond the schema. It does not explain the 'file' parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: based on errorSummary and contextFiles, return up to 3 minimal fix suggestions without automatically modifying code. It uses a specific verb ('return') and resource ('fix suggestions'), and distinguishes itself from sibling tools like error_analyze by being suggestion-focused.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives, nor does it provide when-not or prerequisite conditions. It implies usage when errorSummary and contextFiles are available, but lacks guidance on tool selection among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

error_summary_mdA

将错误聚合结果输出为 500 字以内 Markdown 摘要,不包含完整日志、重复堆栈或完整响应体。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
evidenceNo

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden for behavioral disclosure. It explicitly states the output constraints (within 500 characters, excludes complete logs, duplicate stacks, and response bodies), which gives the agent clear expectations. However, it does not mention whether the tool is read-only or has side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that immediately conveys the core functionality and constraints. Every word earns its place; there is no redundancy or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the output format and constraints, compensating partially for the lack of output schema. However, it does not describe how errors are aggregated or how to use the input parameters, leaving the agent with incomplete guidance for correct invocation. Given the tool's moderate complexity (2 parameters, one nested), more detail would be warranted.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no explanation for the two parameters ('limit' and 'evidence'). The tool expects a nested object, but the description lacks any guidance on their meaning, format, or relationship to the error aggregation, severely degrading its usability.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Output the error aggregation results as a Markdown summary within 500 characters, excluding complete logs, duplicate stacks, or complete response bodies.' It includes a specific verb ('output'), resource ('error aggregation results'), and output format ('Markdown summary'), distinguishing it from sibling tools like 'error_analyze' or 'error_fix_suggestion'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (to get a summary of errors) but does not provide explicit guidance on when not to use it or mention alternative tools. The lack of exclusions or context-specific recommendations limits its helpfulness for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evidenceA

证据管理工具(v1.9.5 起合并 evidence_pack/evidence_index)。通过 mode 参数区分子模式:pack(默认,生成单步证据包,把截图、DOM 摘要、错误、网络请求、API 响应摘要、数据 diff、traceId、Console、PageError、HAR 汇总成一个 JSON 文件)/ index(证据包索引,扫描 reports 目录所有 evidence.json 文件,按 runId 串联生成完整验证时间线)。

ParametersJSON Schema
NameRequiredDescriptionDefault
harNo是否导出 HAR,默认 false(mode=pack 时使用)
modeNo工作模式:pack(默认,生成单步证据包)/ index(证据包索引与时间线)pack
labelNo步骤名称,stepId 未传时作为 stepId(mode=pack 时使用)
runIdNo本次验证运行 ID,不传则自动生成(mode=pack 时使用);mode=index 时可选,只返回指定 runId 的证据包时间线
stepIdNo当前步骤 ID,如 marketplace.purchase.after-click(mode=pack 时使用)
traceIdNo可选链路追踪 ID,用于和后端日志关联(mode=pack 时使用)
snapshotNo是否采集 DOM 简要快照,默认 true(mode=pack 时使用)
afterDataNo操作后数据快照,用于生成 data diff(mode=pack 时使用)
afterStateNo操作后状态快照引用(mode=pack 时使用)
beforeDataNo操作前数据快照,用于生成 data diff(mode=pack 时使用)
screenshotNo是否截图,默认 true(mode=pack 时使用)
autoAnalyzeNo截图后是否自动分析可见错误,默认 true(mode=pack 时使用)
beforeStateNo操作前状态快照引用(mode=pack 时使用)
captureStepNo是否同时调用 browser_step 采集截图和 DOM,默认 true(mode=pack 时使用)
currentOnlyNo是否只采集当前 checkpoint 后的错误和网络,默认 true(mode=pack 时使用)
consoleLimitNo证据包中保留最近 Console 条数,默认 30(mode=pack 时使用)
networkLimitNo证据包中保留最近网络请求条数,默认 30(mode=pack 时使用)
pageErrorLimitNo证据包中保留最近 PageError 条数,默认 10(mode=pack 时使用)
includeTraceIdsNo是否在结果中包含所有 traceId 列表,默认 false(mode=index 时使用)
includeWarningsNo错误摘要是否包含 warning,默认 false(mode=pack 时使用)
apiResponseLimitNo证据包中保留最近 API 响应摘要数,默认 10(mode=pack 时使用)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It explains that pack mode generates a JSON file summarizing various evidence types, and index mode scans directories. However, it does not mention side effects like file creation, permissions needed, or potential rate limits. The description gives a reasonable overview but omits important implementation details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, starting with a version note, then explaining the two modes and their outputs. Every sentence adds value. It could be slightly shorter, but it efficiently conveys the essential information for a complex tool with 21 parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (two modes, many parameters, no output schema), the description provides a reasonably complete overview. It explains what each mode produces (JSON file contents, timeline). It could mention file system interaction or error handling, but overall it covers the key aspects sufficiently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, providing adequate per-parameter info. The tool description adds context by grouping parameters under modes and explaining the overall purpose, but it does not add significant extra meaning beyond the schema descriptions. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it is an evidence management tool that merges evidence_pack and evidence_index since v1.9.5. It clearly defines two sub-modes (pack and index) with distinct responsibilities: generating single-step evidence packages vs. indexing for a timeline. This distinguishes it from sibling tools like browser_* tools and even the deprecated individual evidence tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides indirect usage guidance by defining the mode parameter and explaining what each mode does. However, it does not explicitly state when to use this tool vs. the deprecated evidence_pack/evidence_index siblings, nor does it mention when not to use it. The guidance is adequate for mode selection but lacks explicit alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evidence_indexA

证据包索引:扫描 reports 目录所有 evidence.json 文件,按 runId 串联多个证据包生成完整验证时间线。支持跨步骤、跨 runId 检索,汇总 traceId、错误数、API 响应数、数据 diff 数等关键指标。

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdNo可选,只返回指定 runId 的证据包时间线。不传则返回所有
includeTraceIdsNo是否在结果中包含所有 traceId 列表,默认 false

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even without annotations, the description effectively communicates the tool's behavior: it scans a directory, groups data by runId, and returns a timeline with metrics. It also discloses that filtering by runId and including traceIds is optional. The description is transparent about the read-only nature (no mention of side effects), though it could explicitly state that no modifications occur.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using only a few sentences to convey the core purpose, parameters, and output metrics. It is front-loaded with the main action and avoids any extraneous information. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has two optional parameters and no output schema, the description provides a good overview of the output: a timeline with key metrics like traceId, error count, API response count, and data diff count. While it does not detail the exact output structure, it provides enough context for an agent to understand the tool's purpose and expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters. The description adds context by explaining that runId filters the timeline and includeTraceIds controls trace ID inclusion. However, it largely restates the schema descriptions, providing marginal additional value. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scans evidence.json files in the reports directory, groups by runId to generate a validation timeline, and aggregates key metrics. It is specific about the verb (index/scan), resource (evidence files), and outcome. However, it does not explicitly differentiate from sibling tools like 'evidence' or 'evidence_pack', which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for cross-step and cross-runId retrieval, but it does not provide explicit guidance on when to use this tool versus alternatives. Sibling tools like 'evidence' and 'evidence_pack' exist, yet no usage boundaries or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evidence_packB

生成单步证据包(v2.0),把截图、DOM 摘要、错误、网络请求、API 响应摘要、数据 diff、traceId 汇总、Console、PageError、HAR 和现有产物汇总成一个 JSON 文件,用于后续双链路验证复盘。

ParametersJSON Schema
NameRequiredDescriptionDefault
harNo是否导出 HAR,默认 false
labelNo步骤名称,stepId 未传时作为 stepId
runIdNo本次验证运行 ID,不传则自动生成
stepIdNo当前步骤 ID,如 marketplace.purchase.after-click
traceIdNo可选链路追踪 ID,用于和后端日志关联
snapshotNo是否采集 DOM 简要快照,默认 true
afterDataNo操作后数据快照,用于生成 data diff
afterStateNo操作后状态快照引用
beforeDataNo操作前数据快照,用于生成 data diff
screenshotNo是否截图,默认 true
autoAnalyzeNo截图后是否自动分析可见错误,默认 true
beforeStateNo操作前状态快照引用
captureStepNo是否同时调用 browser_step 采集截图和 DOM,默认 true
currentOnlyNo是否只采集当前 checkpoint 后的错误和网络,默认 true
consoleLimitNo证据包中保留最近 Console 条数,默认 30
networkLimitNo证据包中保留最近网络请求条数,默认 30
pageErrorLimitNo证据包中保留最近 PageError 条数,默认 10
includeWarningsNo错误摘要是否包含 warning,默认 false
apiResponseLimitNo证据包中保留最近 API 响应摘要数,默认 10

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden of behavioral disclosure. It describes what the tool collects and produces (a JSON file) but does not disclose side effects, required permissions, rate limits, or whether the tool modifies browser state or existing data. Key behavioral traits (e.g., if it triggers side effects, if it is safe to call repeatedly) are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single long sentence that lists many components. It is front-loaded with the core purpose, but the enumeration of artifacts makes it dense and harder to parse quickly. It could be restructured into bullet points or a clearer summary while remaining concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 19 parameters, no output schema, and no annotations. The description explains what the output is (a JSON file) but does not describe its structure, how the parameters interact, typical usage patterns, or prerequisites (e.g., prior browser steps). For a complex data-gathering tool, this level of completeness is insufficient for an agent to confidently invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add meaning beyond what the schema already provides for each parameter; it simply summarizes the tool's overall behavior. Parameters like 'har', 'screenshot', 'snapshot' are individually well-documented in the schema, so the description does not need to elaborate, but it also does not provide higher-level context (e.g., typical combinations).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: generating a single-step evidence package (v2.0) that aggregates screenshots, DOM summaries, errors, network requests, API response summaries, data diffs, traceId, console logs, page errors, HAR, and existing artifacts into a JSON file for dual-chain verification review. It uses a specific verb ('生成') and resource ('单步证据包'), and distinguishes itself from sibling tools by focusing on evidence aggregation for review.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or when not to use it. Among the many sibling tools (e.g., browser_step, evidence, evidence_index), there is no discussion of trade-offs or context for selection. The usage is only implied through the detailed list of what it aggregates.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

exploration_quickA
Read-only

【探索模式】对目标 URL 执行 6 阶段前端浅层自动探索:导航快照→端点提取→技术栈指纹→路由发现→表单检测→报告聚合。纯浏览器沙箱内完成,无需后端权限。发现高价值线索时自动提示 Pro/Team 升级路径。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNotarget 的别名,要探索的目标页面 URL
modeNo探索模式:basic=仅结构快照 full=完整6阶段。默认 fullfull
depthNo探索深度:1=快速(仅导航+基本信息) 2=标准(含端点提取+路由) 3=深度(含所有阶段)。默认 2
targetNo要探索的目标页面 URL,如 https://example.com

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint and openWorldHint, which the description supports by mentioning a sandbox without backend permissions. It adds behavioral context like automatic upgrade prompting and the 6-stage process. No contradiction. It provides value beyond annotations, though could mention error handling or time estimates.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured paragraph. It front-loads the main purpose, lists stages succinctly, and ends with the upgrade note. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters (all documented), no output schema, and safety annotations, the description covers the overall behavior well. It explains the 6 stages and the sandboxed execution. Missing details about output format are compensated by the lack of output schema. Adequate for a quick exploration tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 4 parameters have descriptions in the input schema, achieving 100% coverage. The main description does not add significant meaning beyond the schema, such as clarifying the difference between 'url' and 'target' (both are target URLs). Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: performing a 6-stage front-end shallow exploration on a target URL, listing specific stages. The name 'exploration_quick' and the description distinguish it from more specific sibling tools like browser_navigate or browser_visual.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it operates in a pure browser sandbox without backend permissions and that it prompts for upgrades when high-value clues are found. It implies usage for surface-level exploration, but does not explicitly state when not to use it or compare with alternatives. This is adequate but could be more explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mcp_diagA

MCP 自诊断工具。v1.9.5 起合并 mcp_health_check / mcp_self_test。mode=health 检查 MCP 健康状态(工具注册完整性、schema 合法性、目录可写性、checkpoint);mode=self_test 执行 MCP 自测(创建会话、验证 flow/assert/type/click/wait 等基础能力)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo诊断模式:health(健康检查,默认)、self_test(自测)health
traceNo是否录制 trace(仅 mode=self_test),默认 true
headlessNo是否无头运行(仅 mode=self_test),默认 false
sessionNameNo自测使用的会话名称(仅 mode=self_test),默认 mcp-self-test

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full responsibility for behavioral disclosure. It explains the two modes and what they involve (e.g., health checks tool registration, schema, directory writability; self-test creates sessions and verifies capabilities). While it does not discuss side effects or prerequisites, for a diagnostic tool the transparency is good, though it could be more explicit about potential state modifications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences covering the tool's merged nature, the two modes, and their functions. No unnecessary words; every sentence provides essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (4 parameters, all documented), the description provides a clear overview of purpose and modes. However, it lacks information about return values or how to interpret results, which would be useful for a diagnostic tool. Overall, it is sufficiently complete for the task.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds context for the mode parameter by explaining the two options, but does not elaborate on trace, headless, or sessionName beyond what the schema already provides. Thus, the description offers marginal added value over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is an MCP self-diagnosis tool that merges two previous tools. It specifies exactly what each mode does: health checks tool registration, schema, directory writability, and checkpoint; self-test creates sessions and verifies basic capabilities. This distinguishes it from siblings like mcp_health_check and mcp_self_test, which are now merged.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions the merge of mcp_health_check and mcp_self_test, implying this tool replaces them, but it does not provide explicit guidance on when to use one mode over the other. An AI agent would benefit from recommendations on selecting health vs self_test based on context, but the description leaves that implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mcp_health_checkA

检查 MCP 自身健康状态:工具注册完整性、schema 合法性、证据目录可写性、当前会话和 checkpoint 状态。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It discloses specific checks including evidence directory writability (implying a write test), giving insight into potential side effects. However, it does not clarify if the tool is read-only or if it modifies any state permanently, such as creating evidence files.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently lists all health check categories. Every word earns its place, and it is front-loaded with the core verb and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains what is checked but does not describe the return value or expected outcome. For a tool with no output schema, this gap leaves the agent unsure what it will receive (e.g., a report, pass/fail, or structured data).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the input schema is empty with 100% coverage. According to the rubric, this receives a baseline of 4. The description adds no parameter information, which is acceptable since there are none to document.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks MCP's health status, listing specific aspects like tool registration completeness, schema legality, evidence directory writability, and session/checkpoint state. This is a specific verb-resource combination and distinguishes it from sibling tools, none of which focus on health checking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for health checking but provides no explicit guidance on when or when not to use this tool. It does not mention alternatives or contextual triggers, leaving the agent to infer usage from the tool's purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mcp_self_testB

执行 MCP 自测:创建自测会话,打开 data URL,验证 flow/assert/type/click/wait/step/events/errors/trace/artifacts 基础能力。

ParametersJSON Schema
NameRequiredDescriptionDefault
traceNo是否录制 trace,默认 true
headlessNo是否无头运行,默认 false
sessionNameNo自测使用的会话名称,默认 mcp-self-test

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions creating a session and verifying capabilities but does not state whether the tool is safe (read-only or destructive), what side effects occur, or what permissions are needed. Minimal behavioral context is given.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence that efficiently conveys the tool's purpose and scope. No redundant or unnecessary words are present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lists the capabilities being verified but does not explain what the output or return value is (e.g., pass/fail, report). It also references 'data URL' without clarification. Given no output schema, the description leaves gaps in understanding what the tool produces.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have schema descriptions covering 100% of the parameters. The tool description does not add additional meaning beyond the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a self-test of MCP capabilities, listing specific actions like flow, assert, and click. It identifies the tool as a diagnostic/validation tool distinct from sibling browser action tools. However, the Chinese language and lack of an English translation may limit clarity for some AI agents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as mcp_health_check or browser_smoke_test. The description implies it is for verifying MCP's own capabilities, but lacks explicit when-to-use or when-not-to-use instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

memory_recallB

跨会话记忆系统:检索/固化/列出/遗忘历史验证发现与修复模式。基于 .validpilot/memory/ 目录持久化情景记忆、模式记忆、程序记忆三类知识,支持文本相似度+标签+主机多维度召回,实现同类 Bug 第二次自动识别。

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoforget 时指定要删除的记忆 ID
hostNo按主机名过滤(如 example.com)
tagsNo按标签过滤(多标签为 AND 关系)
limitNo返回数量上限,默认 10
queryNo检索查询文本(recall 时必填,支持错误消息、URL、症状描述)
sinceNoISO8601 时间戳,仅返回此时间之后的记忆
beforeNoISO8601 时间戳,仅返回此时间之前的记忆
episodeNoconsolidate 时要固化的情景数据
minScoreNorecall 时最低相似度分数阈值(0-1),默认 0.3
operationYes操作类型:recall=检索相似记忆;consolidate=固化当前会话发现到长期记忆;list=列出记忆条目;forget=删除过期/指定记忆;stats=统计记忆库状态
projectIdNo项目标识(用于项目级记忆隔离),默认自动从 cwd 推断
queryTypeNo查询类型,默认 auto 自动识别
memoryTypeNo记忆类型过滤,默认 all
forgetStrategyNoforget 策略:byId=按ID删除;expired=删除过期记忆;byTag=按标签删除;before=删除 before 时间之前的记忆

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavior. It mentions persistence to .validpilot/memory/ and multi-dimensional recall, but lacks details on side effects (e.g., forget operations are permanent) or rate limits. It provides some transparency but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph that is reasonably concise and front-loaded with the core purpose. However, it could be broken into structured points for clarity. Every sentence contributes value, but it remains dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (14 parameters, nested objects, enums) and lack of output schema, the description is moderately complete. It explains memory types and recall dimensions but does not clarify return format, error cases, or the exact behavior of forget operations. Adequate but with gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already describes all parameters. The description adds high-level context (e.g., '支持文本相似度+标签+主机多维度召回') but does not significantly enhance understanding beyond the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as a cross-session memory system for retrieving, consolidating, listing, and forgetting historical validation findings and repair patterns. It distinguishes itself from sibling tools by focusing on memory management, not browser actions or validation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lacks explicit guidance on when to use this tool versus alternatives. While it mentions the operations (recall, consolidate, list, forget, stats), it does not specify under what circumstances each operation should be chosen. No 'when to use' or 'when not to use' advice is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

project_auditB

扫描项目目录,检测常见的代码质量问题:硬编码密码/密钥、硬编码绝对路径、SQL语法错误、CSS变量异常(循环引用、引用未定义变量、非:root区域引用未定义变量)等。运行后返回带有严重级别的问题列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
severityNo筛选最低严重级别,默认 all
projectPathYes要扫描的项目根目录(绝对路径)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry full burden. It discloses detected issue categories and return format but does not mention read-only nature, required permissions, performance impact, or safety profile. Significant behavioral gaps remain.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise and front-loaded with the main action ('scan project directory') and then lists specific issues. It is efficient but slightly run-on as a single long sentence. One sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no output schema, so description should explain output format. It mentions a list with severity but omits details like object structure or property names. Parameter descriptions are clear but output remains ambiguous. Adequate but with gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters. The description adds no additional meaning beyond the schema (e.g., severity filter and project path are already clear). Baseline 3 applies as no extra value is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it scans a project directory for code quality issues like hardcoded passwords, absolute paths, SQL errors, and CSS variable anomalies. It distinguishes itself from sibling tools (e.g., browser audits, security scans) by focusing on static code analysis of a project directory.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. It does not specify prerequisites, exclusions, or compare with sibling tools like 'css_var_check' or 'security_scan'. The description only lists what it checks, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

screenshot_diffA

Compare two screenshots (baseline vs actual) or capture a current screenshot and return a diff summary and artifact path. Supports element-scoped capture via selector; does not emit long screenshot descriptions.

中文详情:

  • 用途:比较两张截图(baseline/actual)或捕获当前截图并返回差异摘要与产物路径,不输出长截图描述

  • 何时使用:手动指定 baseline/actual 路径做差异对比时;测试前后页面状态对比时;元素级截图差异分析时;调试 visual_compare 流程时

  • 输出:{ ok: boolean, diffPath: string, baselinePath: string, actualPath: string, diffPixels: number, diffRatio: number, passed: boolean, threshold: number }

  • 参数:

    • baselinePath (string, 可选):基线截图路径

    • actualPath (string, 可选):实际截图路径,与 baselinePath 同时提供时直接对比

    • beforePath (string, 可选):baselinePath 的别名

    • afterPath (string, 可选):actualPath 的别名

    • selector (string, 可选):捕获时仅截取该元素区域

    • threshold (number, 可选):差异阈值,默认 0.01

    • name (string, 可选):产物名称,用于命名 diff 文件

  • 错误:baselinePath 与 actualPath 都缺失且浏览器未启动抛出 'No screenshots to compare';文件不存在抛出 'File not found'

  • 示例:{"baselinePath":"screenshots/login.png","actualPath":"screenshots/login-v2.png","threshold":0.005,"name":"login-diff"}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
selectorNo
afterPathNo
thresholdNo
actualPathNo
beforePathNo
baselinePathNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden and discloses important behaviors: it does not emit long screenshot descriptions, lists error conditions like missing screenshots and file not found. It adds context beyond the schema, though side effects or resource usage are not mentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description contains a bilingual section (English and Chinese) which adds redundancy and length. However, it is well-structured with clear sections for usage, output, parameters, errors, and an example. It earns its place by being comprehensive, but conciseness suffers.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (7 optional parameters, no output schema, no annotations), the description is remarkably complete. It includes the return structure, error messages, parameter explanations, and an example, enabling an agent to select and invoke the tool correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description fully compensates by explaining each parameter's purpose: baselinePath/actualPath for direct comparison, beforePath/afterPath as aliases, selector for element capture, threshold with default 0.01, and name for diff file naming. This provides rich meaning beyond the schema property names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool compares two screenshots or captures a current screenshot, returning a diff summary. It distinguishes itself from sibling tools like browser_screenshot and browser_visual_compare by focusing on diff comparison and not emitting long descriptions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit scenarios for use, such as comparing baseline vs actual, testing page states, element-level diff, and debugging visual_compare flow. It implies when not to use by stating it does not emit long descriptions, but lacks explicit alternatives among the many sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_csp_analyzeA

Deep analysis of Content-Security-Policy: parse CSP directives, detect unsafe-inline/unsafe-eval/wildcard * and other unsafe configurations, and produce a CSP security score.

中文详情:

  • 用途:深度分析 Content-Security-Policy 策略,解析 CSP 指令,检测不安全配置(unsafe-inline/unsafe-eval/通配符 * 等)并评估 CSP 安全评分

  • 何时使用:CSP 策略上线前评估时;XSS 防护层验证时;第三方脚本加载白名单审查时;CSP 报告异常排查时

  • 输出:{ ok: boolean, url: string, csp: string, directives: object, unsafeDirectives: array, score: number, recommendations: array }

  • 参数:

    • url (string, 必填):目标 URL

  • 错误:URL 不可达抛出 'Request failed';响应无 CSP 头返回 score=0 但 ok=true

  • 示例:{"url":"https://example.com"}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL(必填)

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, but the description fully discloses behavior: it fetches a URL, parses the CSP header, detects unsafe directives, and returns an ok boolean, directives object, unsafeDirectives array, score, and recommendations. It also describes error cases: URL unreachable throws 'Request failed', missing CSP header returns score=0 with ok=true. This covers all behavioral traits beyond the input schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is organized into clear sections (purpose, usage, output, parameters, errors, example) with both English and Chinese. It is longer than necessary but structured well, and every part adds value. One sentence could be removed (the Chinese title line) without loss, but overall it is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool performs complex CSP analysis with no output schema provided. The description fully covers input, output format, error conditions, and usage context, making it complete for an AI agent to invoke correctly. No additional information is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'url' (type string, required, described in Chinese as 'target URL (required)'). The description adds an example JSON input and explains the parameter context, which adds some value beyond the schema description, justifying a 4 instead of baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool analyzes Content-Security-Policy, parses directives, detects unsafe configurations (unsafe-inline, unsafe-eval, wildcard), and produces a security score. It uses a specific verb+resource format and distinguishes itself from sibling security tools like 'security_headers_check' and 'security_scan' by focusing exclusively on CSP.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly provides usage scenarios: before CSP policy deployment, XSS protection verification, third-party script whitelist review, CSP report anomaly investigation. This gives clear when-to-use guidance and implies alternatives are not needed for this specialized task.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_headers_checkA

Check HTTP security response headers: analyze presence and correctness of CSP, X-Content-Type-Options, X-Frame-Options, HSTS, Referrer-Policy, and detect information leakage via X-Powered-By/Server.

中文详情:

  • 用途:检查 HTTP 安全响应头部,分析 CSP、X-Content-Type-Options、X-Frame-Options、HSTS、Referrer-Policy 等头部的存在性和配置正确性,检测 X-Powered-By/Server 等信息泄露

  • 何时使用:上线前安全头部合规检查时;HTTPS/HSTS 配置验证时;点击劫持防护(X-Frame-Options)验证时;信息泄露排查时

  • 输出:{ ok: boolean, url: string, headers: object, missing: array, misconfigured: array, infoLeakage: array, score: number, recommendations: array }

  • 参数:

    • url (string, 必填):目标 URL

  • 错误:URL 不可达抛出 'Request failed';非 HTTP(S) URL 抛出 'Invalid url'

  • 示例:{"url":"https://example.com"}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL(必填)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It specifies the output structure (ok, url, headers, missing, misconfigured, infoLeakage, score, recommendations) and error conditions (Request failed, Invalid url). Although it doesn't explicitly state if it makes HTTP requests, the nature of the tool implies a read-only check.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is bilingual, with a concise English sentence followed by a structured Chinese section detailing purpose, usage, output, parameters, and errors. It is front-loaded and well-organized, though slightly longer due to bilingual duplication.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 1-parameter tool with no output schema, the description adequately covers input, output fields, and error conditions. However, it does not explain the scoring mechanism or recommendation logic, which could be useful for agents.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter 'url'. The description repeats the parameter name and requirement (必填) and provides an example, but adds no new semantic information beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks HTTP security response headers for specific headers (CSP, X-Content-Type-Options, etc.) and detects information leakage. This distinguishes it from siblings like security_csp_analyze which focuses only on CSP, and other security scan tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section lists specific use cases (pre-deployment compliance, HTTPS/HSTS verification, clickjacking protection, info leakage). While it doesn't explicitly mention when not to use or name alternatives, the context provides clear guidance for when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_owasp_top10A

OWASP Top 10 security check: quickly scans for risks like A01 access control, A02 cryptographic failures, A05 security misconfiguration, etc., and returns pass/warn/fail status per category.

中文详情:

  • 用途:OWASP Top 10 安全检查,快速检查 A1 访问控制、A2 加密失败、A5 安全配置错误等安全风险,返回通过/警告/失败状态

  • 何时使用:上线前整体安全风险评估时;合规审计 OWASP 检查清单时;安全门禁快速过检时;定期安全巡检时

  • 输出:{ ok: boolean, url: string, totalChecks: number, categories: array, score: number } — 每项含 { id, name, status: pass/warn/fail, findings: array, recommendation }

  • 参数:

    • url (string, 必填):目标 URL

  • 错误:URL 不可达抛出 'Request failed';部分检查依赖其他工具(如 headers/csp),缺失时该类别标记 warn

  • 示例:{"url":"https://example.com"}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL(必填)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description adds context: it scans (read-only implied), returns structured output, and depends on other tools for some categories. It discloses potential errors and partial results. Could be more explicit about non-destructive nature, but adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is split into English and Chinese sections. The English is concise; the Chinese adds structured details (use cases, output, parameters, errors). Well-organized but slightly verbose. Could be more compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides output format, error handling, and dependency behavior. The single parameter is well-documented. Covers essential behavioral aspects for a simple scanner tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter 'url'. The description adds meaning by explaining it is the target URL, required, and provides an example. This adds value beyond the schema's property description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs an OWASP Top 10 security check on a URL, returning pass/warn/fail per category. It distinguishes from sibling security tools that focus on specific areas like CSP, headers, SQL injection, XSS, etc., by targeting the OWASP Top 10 categories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists use cases: pre-launch risk assessment, compliance audits, security gate checks, periodic reviews. It also describes error handling and dependency behavior (e.g., missing header tools cause warn status). However, it does not explicitly exclude alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_scanA

安全扫描工具(v1.9.5 起合并 security_headers_check/security_owasp_top10/security_sql_injection_scan/security_xss_scan/security_csp_analyze)。通过 mode 参数区分子模式:headers(默认,HTTP 安全头检查,等价于已废弃的 security_headers_check)/ owasp(OWASP Top 10 安全检查,等价于 security_owasp_top10)/ sqli(SQL 注入漏洞扫描,等价于 security_sql_injection_scan)/ xss(XSS 漏洞扫描,等价于 security_xss_scan)/ csp(Content-Security-Policy 深度分析,等价于 security_csp_analyze)。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL(必填)。sqli/xss 模式可包含查询参数如 http://example.com/page?id=1
modeNo安全扫描模式:headers(默认,HTTP 安全头检查)/ owasp(OWASP Top 10 检查)/ sqli(SQL 注入扫描)/ xss(XSS 漏洞扫描)/ csp(CSP 策略分析)headers

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must carry the burden. It explains mode behavior and notes that sqli/xss modes support query parameters in URLs, but does not disclose other behavioral traits like rate limits, authentication needs, or side effects (e.g., scanning may trigger alerts).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph that front-loads the key information (version merge and mode list). It is reasonably concise for the amount of context conveyed, though it could be slightly more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (2 parameters, no output schema), the description adequately covers the modes and URL parameter hint. However, it lacks information on expected output format, error handling, or how results should be interpreted, leaving gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds meaningful context beyond the schema: it explains the equivalence to deprecated tools, notes that sqli/xss modes can include query parameters in the URL, and clarifies the default mode. This adds value for the agent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: a consolidated security scanning tool replacing five older tools. It specifies each mode's function and the equivalent deprecated tool, providing strong purpose clarity and differentiation from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool (by mentioning deprecated tools) but does not explicitly provide when-to-use or when-not-to-use guidance. It lacks alternatives or exclusion criteria, relying on the agent to infer context from the mode list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_sql_injection_scanA

SQL injection vulnerability scanner: injects 20 SQLi payloads into the target URL's query parameters and detects SQL error leakage (MySQL, Oracle, PostgreSQL, SQL Server, SQLite) in responses.

中文详情:

  • 用途:SQL 注入漏洞扫描,向目标 URL 的查询参数注入 20 种 SQL 注入 payload,检测响应中是否泄露 SQL 错误信息

  • 何时使用:上线前 SQL 注入漏洞扫描时;查询参数(如 ?id=1)可疑时;接口输入校验回归时;OWASP A03 注入类风险验证时

  • 输出:{ ok: boolean, url: string, totalPayloads: number, vulnerable: boolean, findings: array, dbms: string } — 每项含 { payload, response, evidence }

  • 参数:

  • 错误:URL 无查询参数抛出 'No injectable parameters found';URL 不可达抛出 'Request failed'

  • 示例:{"url":"https://example.com/product?id=1"}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL,可包含查询参数如 http://example.com/page?id=1(必填)

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description details the scanning process (20 payloads, DBMS detection), output format, and error handling. It does not mention authorization needs or potential side effects, but the behavior is well described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: an English summary followed by Chinese bullet points for key aspects (usage, output, parameters, errors, example). No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the single parameter and no output schema, the description is fairly complete. It covers purpose, when to use, parameter details, output shape, error cases, and an example. It could mention that it only scans query parameters (not POST bodies), but overall it's sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The url parameter is described in both the schema and the description with examples and error conditions. The description adds context that query parameters are expected and provides a sample input, going beyond the schema's type and required flag.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a SQL injection vulnerability scanner that injects 20 SQLi payloads and detects error leakage. It distinguishes from sibling tools like security_xss_scan and security_headers_check by naming the specific vulnerability type and technique.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The Chinese section explicitly lists when to use: pre-release scanning, suspicious query parameters, regression testing, OWASP A03 verification. It also mentions error cases (no injectable parameters, unreachable URL).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_xss_scanA

XSS vulnerability scanner: injects 26 XSS payloads (script tags, event handlers, SVG, template injection, etc.) into the target URL and detects unescaped payload reflection in the response body.

中文详情:

  • 用途:XSS 漏洞扫描,向目标 URL 注入 26 种 XSS payload(script 标签、事件处理器、SVG、模板注入等),检测响应体中是否未转义地包含 payload

  • 何时使用:搜索/评论/反馈等输入点上线前扫描时;URL 参数反射型 XSS 验证时;模板引擎转义回归时;OWASP A03 注入类风险验证时

  • 输出:{ ok: boolean, url: string, totalPayloads: number, vulnerable: boolean, findings: array } — 每项含 { payload, reflected: boolean, context: string, evidence }

  • 参数:

  • 错误:URL 无查询参数抛出 'No injectable parameters found';URL 不可达抛出 'Request failed'

  • 示例:{"url":"https://example.com/search?q=test"}

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes目标 URL,可包含查询参数如 http://example.com/page?q=test(必填)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description fully describes behavior: injects 26 payloads, checks reflection, includes errors and output structure. Could explicitly state non-destructive nature, but overall transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Bilingual structure adds redundancy (English summary repeated in Chinese). Well-organized with sections (purpose, when-to-use, output, params, errors), but could be more concise by removing duplicate content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Comprehensive: covers payload count, detection method, full output shape, parameter details, error cases, and example. Sufficient for an agent to use correctly without needing other references.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Single parameter 'url' is documented in both schema and description. Description adds example and required flag, plus Chinese details. Schema coverage is 100%, so description adds marginal but useful context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'XSS vulnerability scanner' and specifies it injects 26 payload types into target URLs, detecting unescaped reflection. Among sibling tools like security_sql_injection_scan and security_csp_analyze, this one is uniquely identified for XSS scanning.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Chinese section explicitly lists when to use: pre-launch input scanning, reflected XSS validation, template regression, OWASP A03 verification. Does not explicitly state when not to use, but context from siblings (e.g., security_sql_injection_scan) implies it's for XSS only. Good guidance without exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skill_consistency_checkA

批量校验所有开源 Skill 引用的工具是否与 tools/ 目录实际注册一致,不依赖 .trae/skills/SKILL.tools.json 外部文件。同时检测 SKILL_TOOLS_MAP 与 handlers/prompts.js 的 buildMessages 输出之间是否存在漂移(mapDrift 仅 warning)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNostrict=缺失工具时报错(passed:false),warn=仅警告不阻断(passed 始终为 true)strict
skillNameNo可选:仅校验单个 Skill。不传则校验全部 7 个 Skill

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It explains two key behaviors: consistency check (without relying on external file) and drift detection (with mapDrift as warning). It also implicitly describes mode behavior (strict vs warn). However, it does not disclose potential side effects, authentication needs, or expected output format beyond the mode parameter note.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, with the primary action front-loaded. Every sentence provides essential information without redundancy. It efficiently covers the two main validation aspects and mode behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description should explain return values. It only hints at pass/fail in the mode parameter description but does not explicitly state output structure for either consistency check or drift detection. The tool is moderately complex with two checks and two modes, so more detail on output would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add significant meaning beyond what the schema already provides for parameters. The mode parameter's behavior is partially reinforced in the description (mapDrift is warning), but no new semantic value is added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's two functions: batch validation of skill tool consistency and drift detection. It specifies the scope (all open-source Skills) and key distinguishing detail (independent of external file). This verb+resource with specific scope makes it distinct from sibling tools like skill_validate or skill_tools_map.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives (e.g., when to use skill_validate or skill_mcp_validate). No context for when-not to use it or prerequisites are mentioned. The usage context is only implied by the tool's purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skill_mcp_validateB

自动校验 Skill 定义的工具依赖是否与 MCP 服务器实际可用工具一致

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNostrict=缺失工具时报错,warn=仅报告不阻断strict
skillNameYesSkill 名称,如 browser-dev-full-validation-skill

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It does not disclose behavioral traits such as whether the tool is read-only, what happens on inconsistency (only partially covered by the 'mode' parameter in schema), or any side effects. The description is too terse to be transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that effectively front-loads the core action. No unnecessary words or redundant information. It is appropriately sized given the simplicity of the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (2 parameters with schema descriptions, no output schema, no annotations), the description is minimally complete. It conveys the primary task but lacks details about return values, error handling, or how it integrates with sibling tools like 'skill_validate'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning about the parameters beyond what the schema already provides. It does not explain the purpose of each parameter or how they affect behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: automatically verify consistency between Skill-defined tool dependencies and actual MCP server tools. It uses specific verb ('verify') and resource ('tool dependencies'), distinguishing it from siblings like 'skill_validate' which may have a different scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., skill_validate, skill_consistency_check). There is no mention of prerequisites or scenarios where this tool is inappropriate. The agent is left to infer usage from the name and purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skill_tools_mapA

查询 Skill 与 MCP 工具的双向映射:传入 skillName 返回该 Skill 的工具链;传入 toolName 返回引用该工具的所有 Skill。数据源 handlers/skill_map.js,与 handlers/prompts.js 交叉校验。

ParametersJSON Schema
NameRequiredDescriptionDefault
toolNameNo工具名称(如 'browser_open'、'evidence_pack'),返回引用该工具的所有 Skill
skillNameNoSkill 名称(如 'validate-login'、'submit-form'),返回该 Skill 的工具链
includeDetailsNo是否包含每个工具的 step/required/description 等详情

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

无 annotations,描述补充了数据源(handlers/skill_map.js)和交叉校验(与 prompts.js),但未明确说明查询是只读操作,也未提及其他行为特性(如错误处理、权限)。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

仅两句话,第一句总述目的和方法,第二句说明数据源和校验。无冗余,信息密度高。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

缺少输出格式说明(如返回列表还是对象),尽管 schema 描述 includeDetails,但无 output schema 的情况下,描述未提供足够信息让 agent 完全理解返回结构。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

input schema 已覆盖 100% 参数描述,描述未对 includeDetails 参数额外解释,但 schema 说明已足够。描述仅重复了 skillName 和 toolName 的主要用途,未增加实质额外语义。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

明确使用动词 '查询' 描述双向映射功能,并具体列出 skillName 和 toolName 两种入口。与 sibling 工具(如 skill_validate、skill_consistency_check)有清晰区分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

指明了两种典型使用场景:传入 skillName 返回工具链,传入 toolName 返回引用它的所有 Skill。但未提到何时不适合使用或与其他工具的比较。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

skill_validateA

Skill 与 MCP 工具一致性校验与映射查询。v1.9.5 起合并 skill_consistency_check / skill_mcp_validate / skill_tools_map。mode=consistency 批量校验所有 Skill 引用的工具是否与 tools/ 目录一致;mode=mcp_validate 校验单个 Skill 定义的工具依赖是否与 MCP 服务器一致;mode=tools_map 查询 Skill↔Tool 双向映射。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo工作模式:consistency(批量校验全部 Skill,默认)、mcp_validate(校验单个 Skill,需传 skillName)、tools_map(查询 Skill↔Tool 映射,需传 skillName 或 toolName)consistency
toolNameNo工具名称(仅 mode=tools_map 生效),返回引用该工具的所有 Skill
skillNameNoSkill 名称(mode=mcp_validate 时必填;mode=consistency 时可选,仅校验单个 Skill;mode=tools_map 时与 toolName 至少传一项)
strictModeNo校验严格度(mode=consistency 和 mode=mcp_validate 生效):strict=缺失工具时报错(passed:false),warn=仅警告不阻断strict
includeDetailsNo是否包含每个工具的 step/required/description 等详情(仅 mode=tools_map 生效)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It explains the three modes and parameter conditions but does not disclose behavioral traits such as whether the tool is destructive, requires specific permissions, or has rate limits. For a validation/query tool, it likely is read-only, but that is not stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph that efficiently conveys purpose, merge history, and mode behavior. It front-loads the core function and uses enumeration. While it could be more structured (e.g., bullet points), it is not verbose and every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters and no output schema or annotations, the description adequately covers input semantics and mode conditions. However, it does not describe the tool's return value or output format, which is important for an agent to understand what to expect after invocation. This gap reduces completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, providing a baseline of 3. The description adds significant value beyond the schema by explaining the purpose of each mode in relation to parameters (e.g., mode=consistency for batch, mode=mcp_validate requires skillName). It clarifies the interplay between mode and parameter requirements, which the schema alone only hints at.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool performs 'Skill与MCP工具一致性校验与映射查询' and enumerates three distinct modes (consistency, mcp_validate, tools_map), each with a clear verb+resource. It effectively distinguishes from sibling tools by explicitly noting it merged the older separate tools (skill_consistency_check, skill_mcp_validate, skill_tools_map) as of v1.9.5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each mode (batch vs single validation vs mapping) and lists required parameters per mode. However, it does not explicitly state when not to use this tool or mention alternative tools (e.g., the deprecated sibling tools). The context is clear but lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

state_diff_assertB

捕获并对比操作前后的页面/API/存储状态,用于验证 UI、API、数据状态是否真的发生预期变化。先做进现有 MCP,后续可剥离为独立双链路验证模块。

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNo可选,直接传入 after snapshot;不传则现场采集
labelNo本次状态采集或对比名称
actionNocapture=采集当前状态快照;compare=采集当前状态并与 before/compareTo 快照对比capture
beforeNo直接传入之前 capture 返回的 snapshot 对象
sourcesYes要采集的状态源列表
timeoutNo页面打开超时,默认 30000ms
evidenceNo是否生成步骤证据,默认 true
snapshotNo是否采集 DOM 简要快照,默认 true
compareToNo对比时引用之前 capture 返回的 snapshotId
targetUrlNo可选,采集前先打开的页面 URL
screenshotNo是否截图,默认 true
snapshotIdNo采集快照时指定 ID,便于后续 compareTo 引用
expectationsNo对比断言列表
beforeSnapshotIdNocompareTo 的别名

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry the full burden of behavioral disclosure. It states the tool captures and compares state but does not disclose side effects (e.g., whether it modifies state, requires specific permissions, or has rate limits). The description also includes a forward-looking statement that adds no operational transparency. Key behavioral traits like return format or error handling are absent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short with two sentences. The first sentence delivers the core purpose. The second sentence is slightly tangential, discussing future modularity. It is concise but could be tightened by removing the non-functional note. Structure is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (14 parameters, nested objects, no output schema), the description is insufficient. It does not explain how to invoke the two actions (capture vs. compare), how to interpret results, or what the snapshot/snapshotId concept means. The lack of output schema and missing behavioral details leave significant gaps for an agent to correctly use this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter has a meaningful description in the schema. The tool description does not add additional semantics beyond the schema; it only provides a high-level summary. Baseline score of 3 is appropriate as the schema already adequately documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: capturing and comparing state (page/API/storage) before and after operations to verify expected changes. The verb 'capture and compare' and resource 'state' are specific, and it distinguishes from sibling tools which focus on individual browser actions or validation types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for verification of state changes but does not explicitly state when to use it versus alternatives. The note '先做进现有 MCP,后续可剥离' provides context on its current integration but not usage guidance. Among many sibling validation tools, no direct comparisons or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trace_correlateA

traceId 深度关联工具(v1.9.5 起合并 browser_trace_chain 和 trace_correlation_check)。通过 mode 参数区分子模式:view(默认,根据 traceIds 反查前端证据包和后端日志,实现前后端联调闭环)/ check(校验浏览器请求和后端日志是否共享同一 traceId/runId,输出 trace 覆盖率和关联性评分,等价于已废弃的 trace_correlation_check)/ chain(全链路调用链追溯,从 traceId 或时间点追溯前端→API→后端的完整请求链路,等价于已废弃的 browser_trace_chain)。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoURL 包含过滤(mode=chain 时使用)
modeNo关联模式:view(默认,traceId 深度关联)/ check(trace 覆盖率校验,等价于 trace_correlation_check)/ chain(全链路调用链追溯,等价于 browser_trace_chain)view
sinceNo只检查此 ISO 时间点之后的请求(mode=check 时使用),默认使用当前 checkpoint
traceIdNo单个 traceId(与 traceIds 二选一,mode=view/chain 时使用)
traceIdsNo要关联的 traceId 列表(mode=view 时使用)
statusMinNo最小 HTTP 状态码过滤(mode=chain 时使用,如 400 只显示错误请求)
urlContainsNo只检查 URL 包含此字符串的请求(mode=check 时使用)
useSshBackendNo是否通过 SSH 远程查询后端日志(需配置 backend_logs 工具)
backendLogPathNo后端日志文件本地路径,将在文件中搜索 traceId
backendLogLinesNo每个 traceId 返回的后端日志行数上限,默认 10
includeBackendLogsNo是否同时从后端服务器 grep 日志(mode=chain 时使用,需要 SSH 免密)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility. It discloses the tool's modes and their effects but does not mention idempotency, authorization requirements, rate limits, or side effects. The description implies read-like operations but lacks explicit behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is a single paragraph of moderate length. It front-loads the key fact (merged tool) and then systematically explains modes. It is efficient with no filler, though could be slightly more structured (e.g., bullet points for modes).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should explain return values, but it does not. Given the tool's complexity (11 parameters, 3 modes), the description covers usage context well but omits output format and behavior. The relationship with deprecated siblings is clarified, but completeness is partially lacking.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The tool description adds value by explaining the meaning of the 'mode' parameter values and their equivalence to deprecated tools, and provides overall context for parameter usage (e.g., 'since' used in check mode). This enhances understanding beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'traceId 深度关联工具' and explicitly mentions it merges two previous tools (browser_trace_chain and trace_correlation_check), providing a distinct identity. It explains three sub-modes (view/check/chain) with specific use cases, effectively distinguishing itself from siblings like browser_trace_chain and trace_correlation_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description explicitly defines when to use each mode (e.g., 'view' for front-end/back-end debugging, 'check' for trace coverage verification, 'chain' for full link tracing). It implies this tool replaces the deprecated browser_trace_chain and trace_correlation_check, providing clear context. However, it does not explicitly state scenarios where the tool should not be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trace_correlation_checkB

校验浏览器请求和后端日志是否共享同一 traceId/runId。读取 MCP 采集的 network 日志中的 traceparent/traceId,可选读取后端日志文件或通过 SSH 抓取后端容器日志,输出 trace 覆盖率和前后端关联性评分。先做进现有 MCP,后续再剥离。

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNo只检查此 ISO 时间点之后的请求,默认使用当前 checkpoint
urlContainsNo只检查 URL 包含此字符串的请求
useSshBackendNo是否通过 SSH 抓取远程后端容器日志(依赖 fetchBackendLogs),默认 false
backendLogPathNo后端日志文件本地路径,直接读取并搜索 traceId

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behaviors: reading MCP network logs, optionally reading backend logs or using SSH, and outputting scores. However, it omits details about side effects (e.g., SSH network activity), required permissions (e.g., file access, SSH credentials), or performance implications. No annotations are provided, so the description carries the full burden, which it partially meets.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with one sentence for purpose and behavior. However, the second sentence ('先做进现有 MCP,后续再剥离') is a meta comment that does not aid tool usage and could be removed. It is front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 100% schema coverage, no output schema, and 4 optional parameters, the description adequately explains what the tool does and what parameters are available. It mentions the output (trace coverage and correlation score) but lacks details on format or interpretation. No required parameters or enums reduce the need for extensive documentation, so it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description restates the backend parameter options (file vs SSH) but adds no new semantics beyond the schema. Parameters like 'since' and 'urlContains' are not elaborated. The description adds marginal value over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: verifying whether browser requests and backend logs share the same traceId/runId. It specifies the action (verify), resource (trace correlation), and output (trace coverage and correlation score). However, it does not explicitly differentiate from sibling tools like 'trace_correlate', though the name and context imply specialization.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'trace_correlate' or 'trace_chain'. There is no mention of prerequisites, scenarios, or when not to use it. The agent must infer usage from the tool's purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_chainA

完整功能链路闭环验证工具,按步骤依次执行 navigate/click/type/wait/validate 操作,每步自动检查控制台错误和网络错误,发现错误立即终止并返回详细的失败信息,输出完整的链路验证报告。支持强制执行5步链路验证,缺少关键步骤时拒绝执行。step.type 与 step.action 互为别名,二者至少传一个。

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsYes验证步骤列表,每步包含 type(或 action 别名)和相关参数
timeoutNo整个流程超时时间(毫秒),默认 60000
failOnErrorNo是否在发现错误时立即停止,默认 true
networkFilterNo网络请求过滤条件
requiredStepsNo是否强制执行5步链路验证(navigate/click/type/wait/validate),缺少关键步骤时拒绝执行,默认 true
captureScreenshotsNo是否每步截图,默认 false

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses automatic error checking per step, immediate termination on error, alias support for type/action, and the 5-step requirement. However, it does not explicitly state that operations like click and type modify page state (destructive hint), though this is implied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively concise, starting with the purpose and then detailing behavior. It could be slightly more streamlined but effectively communicates the key points without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the nested object (steps) and 6 parameters, the description provides adequate context for the input behavior but does not describe the output report format. Since there is no output schema, mentioning what the report contains (e.g., step results, errors, screenshots) would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds meaning beyond the schema: it explains that step.type and step.action are aliases, clarifies the purpose of each step type, and notes the refusal behavior when required steps are missing. This helps the agent understand the step structure and constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it's a 'complete functional chain closed-loop verification tool' that executes navigate/click/type/wait/validate steps in order, checks errors, and produces a report. It distinguishes itself from siblings like browser_chain and validation_flow by specifying the exact step types and error-checking behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for full 5-step chain validation and states it refuses execution if required steps are missing. However, it does not explicitly contrast with alternative tools like browser_step or validation_flow for simpler cases, or state when NOT to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_checkA

单项验证检查工具(v1.9.5 起合并 validation_quick_run)。通过 mode 参数区分子模式:basic(默认,执行完整浏览器健康检查:打开 URL、等待条件、执行断言、截图留证、统计错误)/ quick(低 Token 快速验证,等价于已废弃的 validation_quick_run)。仍支持 check_type=deploy_verify 执行部署验证。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo可选,检查前打开的 URL
modeNo检查模式:basic(默认,完整浏览器健康检查)/ quick(低 Token 快速验证,等价于已废弃的 validation_quick_run)basic
nameNo检查名称
waitNo可选,browser_wait 参数
evidenceNo是否保存步骤证据,默认 true
noErrorsNo是否要求本轮无错误,默认 true
targetUrlNodeploy_verify 类型的目标 URL,如 http://localhost:3000
assertionsNobrowser_assert 参数
check_typeNo检查类型:standard 为标准浏览器检查(默认),deploy_verify 为部署验证(通过 HTTP 执行 API 端点/Console/CSS/静态资源检查,无需浏览器)
instrumentNo是否注入运行时探针,默认 false
clearErrorsNo检查前是否清空错误 checkpoint,默认 true
urlContainsNo快捷断言:URL 包含文本
textContainsNo快捷断言:页面包含文本
selectorVisibleNo快捷断言:元素可见

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It states basic performs a full browser health check (open URL, wait, assertions, screenshot, error count) and quick is low-token. Missing details on side effects (e.g., clearing errors, evidence saving) and whether it closes the browser session.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two dense sentences. It front-loads the tool's name and version, then efficiently explains modes and alternatives. No superfluous words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 14 parameters, no output schema, and no annotations, the description covers the core modes and one special type but omits return values, error behavior, and prerequisites. It mentions 'evidence' but doesn't clarify its impact.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. The description adds value by explaining the mode enum semantics, naming the deprecated quick tool, and describing the deploy_verify type. It also clarifies the basic mode steps, which are not in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a single validation check with distinct sub-modes (basic/quick) and a deployment verification type. It explicitly states it merges validation_quick_run, distinguishing it from that sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use basic vs quick mode based on token cost and thoroughness, and mentions the deploy_verify alternative. However, it does not compare this tool to other validation or browser tools in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_complianceB

验证当前会话中各功能的链路验证合规性,检查是否完成了完整的5步链路验证(入口可达→操作可行→请求正确→响应正常→状态更新),未完成的功能标记为 NON-COMPLIANT。

ParametersJSON Schema
NameRequiredDescriptionDefault
functionsYes需要检查合规性的功能列表
strictModeNo是否严格模式,开启时数据提交类功能必须完成完整5步验证,默认 true
sessionLogsNo会话日志,包含已执行的验证步骤记录

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the tool checks and marks non-compliant functions but does not mention side effects, prerequisites, permissions, or how 'marking' occurs. The behavioral model is partially defined but lacks important details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the purpose, uses clear terminology, and is free of redundancy. Every word serves the definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 parameters, nested objects, and no output schema. The description explains the compliance check but does not specify the return format or output behavior. Given complexity, the description should at least hint at what the tool returns (e.g., list of non-compliant functions) to be fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents parameters. The description adds context about the overall purpose (5-step chain, NON-COMPLIANT marking) but does not clarify parameter specifics beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it validates '链路验证合规性' (link verification compliance) for functions in the current session, specifies the 5-step chain, and indicates non-compliant functions are marked. This distinguishes it from sibling validation tools, which focus on specific aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking full 5-step chain compliance but does not explicitly state when to use it versus alternatives like validation_chain or validation_check. No exclusions or when-not guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_data_integrityB

验证 CRUD 全链路数据一致性。通过 browser_eval 调用 API 并拦截响应,对比 Create/Read/Update/Delete 各阶段的数据是否一致。支持三种验证模式:check_create_read、check_update_read、check_delete_read

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo检测名称,用于报告标识
actionYes验证模式:check_create_read=创建后立即查询验证数据一致性;check_update_read=更新后查询验证字段已更新;check_delete_read=删除后验证已标记删除或 404
entityYes实体名称,如 leads/orders/customers(对应 API 路径中的资源名)
timeoutNoAPI 调用超时时间(毫秒),默认 15000
entityIdNo操作的实体 ID(check_update_read/check_delete_read 时需要提供,或由前一步自动提取)
evidenceNo是否生成证据包,默认 true
noErrorsNo是否检查页面错误,默认 true
targetUrlNo目标页面 URL,用于 API 调用的基础路径
apiBaseUrlNoAPI 基础 URL,默认从当前页面 URL 推导
screenshotNo是否截图,默认失败时截图
createPayloadNo创建操作的请求体(JSON 对象),action=check_create_read 时必填
updatePayloadNo更新操作的请求体(JSON 对象),action=check_update_read 时必填
identifierFieldNo标识字段名(如 id/leadId/orderNo),默认 'id'id
expectedCreateFieldsNo创建后需要验证的字段列表(默认验证 createPayload 中的所有字段)
expectedUpdatedFieldsNo更新后需要验证的字段列表(默认验证 updatePayload 中的所有字段)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions using browser_eval to intercept responses, but does not clarify whether the tool is read-only, whether it modifies state, or any side effects. Important behavioral traits like permission requirements or destructive potential are omitted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief with two sentences and a list of modes, front-loading the core purpose. It is efficient though not perfectly structured (no usage example or summary line). The Chinese language may limit accessibility, but conciseness is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 15 parameters, no output schema, and no annotations, the description needs to provide more context. It lacks explanation of return values, preconditions (e.g., browser session), error handling, and how results are structured. The tool appears complex but the description leaves many aspects uncovered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter having a description in the schema. The description lists the three validation modes but does not add meaning beyond what the schema already provides. Baseline 3 is appropriate as the description adds minimal extra semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: verifying CRUD data consistency by intercepting API responses via browser_eval. It lists three specific validation modes. However, it does not explicitly differentiate from sibling validation tools like validation_check or validation_flow, leaving some ambiguity about when to choose this tool over others.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage contexts through the three modes (check_create_read, check_update_read, check_delete_read) but does not explicitly state when to use this tool versus alternatives among many sibling validation tools. No exclusion criteria or when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_decisionA

快速止损决策系统 - 基于页面初始错误状态,1 秒内判断是否值得继续验证,避免浪费 Token。返回决策建议(STOP/WARN/CONTINUE)、置信度、预计节省 Token 比例和估算的浪费 Token 数量。

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo返回格式:json(默认)或 text
browserErrorsNo浏览器错误统计数据

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that the tool is a read-only decision maker and mentions it avoids wasting tokens, implying safe behavior. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient paragraph that front-loads purpose and lists outputs. No extraneous content, though it could be slightly more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately covers inputs and outputs for a 2-param tool with no output schema, but lacks details on decision logic or edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds limited value beyond providing context. It mentions the decision output but does not elaborate on parameter structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it's a fast stop-loss decision system based on initial page error state, distinguishing it from other validation tools among many siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use it (based on initial browser errors, within 1 second) but does not explicitly state when not to use or mention alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_elementA

验证特定DOM元素的状态:存在性、可见性、可用性、文本内容、属性、值、数量等。支持多条断言组合,返回每条断言的通过/失败详情和证据截图。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo目标页面URL(可选,若提供则会先导航到该页面)
nameNo本次验证的名称(用于证据标记)
existsNo断言元素是否存在
enabledNo断言元素是否可用(非 disabled 且非 readonly)
visibleNo断言元素是否可见
evidenceNo是否采集证据(截图+快照),默认 true
noErrorsNo是否同时检查本轮无控制台/页面/网络错误,默认 true
selectorYes元素CSS选择器(必填)
snapshotNo是否在证据中包含DOM快照
screenshotNo是否在证据中包含截图(默认在断言失败时自动截图)
clearErrorsNo是否在验证前清空历史错误日志,默认 true
countEqualsNo断言匹配选择器的元素数量
valueEqualsNo断言表单元素的值等于该内容
hasAttributeNo断言元素具有该属性名
textContainsNo断言元素文本包含该内容

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions returning pass/fail details and evidence screenshots, but does not disclose read-only nature, side effects, error handling, or response format. This is insufficient for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences that efficiently cover core functionality and output. Every word contributes to understanding, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 15 parameters, no output schema, and no annotations, the description provides a good overview but lacks details on output structure, error handling, and assertion ordering. It adequately covers what the tool does but leaves gaps for an agent to fully understand behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds an overview of assertion types and evidence collection, but does not elaborate on parameter usage beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'validate' and the resource 'specific DOM element state', listing specific aspects like existence, visibility, text content, etc. It distinguishes itself from sibling tools by emphasizing multi-assertion combination and evidence output.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for verifying DOM element states, but does not provide explicit when-to-use or when-not-to-use guidance. It lacks mention of alternatives or prerequisites, leaving the agent to infer context from sibling tool names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_flowA

多步流程验证工具(v1.9.5 起合并 validation_chain),按步骤依次执行 navigate/click/type/wait/eval/screenshot 等操作,支持失败可配置继续执行。step.action 与 step.type 互为别名,二者至少传一个;navigate 也支持别名 goto。通过 mode 参数区分子模式:flow(默认,标准流程验证)/ chain(链式验证,等价于已废弃的 validation_chain,失败即停止并返回失败步骤详情)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo编排模式:flow(默认,标准流程验证,支持 continueOnFailure)/ chain(链式验证,等价于已废弃的 validation_chain,失败即停止)flow
stepsYes验证步骤列表,每个步骤的 action/type 字段互为别名,至少传一个
timeoutNo整个流程超时时间(毫秒),默认 30000
stopOnErrorNochain 模式专用:某步骤失败后是否停止(默认 true)。等价于 continueOnFailure 的反义,stopOnError=true 等价于 continueOnFailure=false
continueOnFailureNo某步骤失败后是否继续执行后续步骤,默认 false

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It does explain the sequential execution of steps, the alias relationship between action and type, and the mode-specific failure behavior. However, it does not mention potential side effects (e.g., state changes from clicks/types), authentication requirements, rate limits, or what happens to the browser session. Given the tool's mutating nature, more transparency would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph that covers the core purpose, version context, supported actions, alias relationships, and mode semantics. It is concise but could benefit from better structure (e.g., bullet points or separation of mode descriptions). The most critical information is front-loaded. Every sentence adds value, though the alias explanation could be slightly more streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the two modes and their behavior, but it does not describe the return value or output format. For chain mode, it mentions 'returns failure step details' but for flow mode it is implicit. The tool has no output schema, so the description should compensate. It also omits what happens on success, how errors are reported, and whether the tool produces any artifact (e.g., screenshots). Given the complexity (5 parameters, nested steps), the description is somewhat incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so each parameter's purpose is already documented. The description adds value by clarifying that step.action and step.type are aliases (both acceptable, at least one required) and that navigate also accepts the alias 'goto' (though 'goto' is not listed in the schema enum, which is a minor inconsistency). The mode parameter's semantics are reinforced. No additional parameter details beyond schema are provided, but the alias clarification is helpful.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a multi-step flow validation tool that executes browser operations like navigate/click/type/wait/eval/screenshot. It distinguishes between two modes (flow and chain) and mentions it merged the now-deprecated validation_chain. The verb 'validate' and resource 'flow' are specific, and the description differentiates it from sibling single-step tools like browser_click or browser_navigate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the two modes: flow (default, with configurable continueOnFailure) and chain (equivalent to deprecated validation_chain, stops on failure). This provides clear context on when to use each mode. However, it does not explicitly state when not to use this tool or mention alternative tools (e.g., for single-step actions use browser_* tools). The context is sufficient but lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_matrixB

执行多维度验证矩阵(功能/视觉/性能/a11y),输出综合评分报告。支持角色×功能权限矩阵验证,每个角色使用独立 session。

ParametersJSON Schema
NameRequiredDescriptionDefault
harNo是否导出 HAR JSON,默认 true
urlYes目标页面 URL
nameNo矩阵验证名称
rolesYes角色列表,每个角色可包含 name、sessionName、url、setupSteps
featuresYes功能列表,每个功能可包含 name、steps、stepsByRole、expected、expectedByRole、assertions、assertionsByRole、focus
dimensionsNo验证维度列表,可选:functional、visual、performance、a11y
instrumentNo是否注入运行时探针,默认 true
clearErrorsNo执行前是否清空错误 checkpoint,默认 true
a11yStandardNoa11y 标准级别:wcag-a / wcag-aa / wcag-aaawcag-aa
outputFormatNo输出格式:json / markdownjson
clearArtifactsNo执行前是否清理证据产物,默认 false
visualBaselineNo视觉基线截图路径(可选)
continueOnFailureNo单元失败后是否继续执行后续功能,默认 false
investigateOnFailureNo失败时是否自动 debug_investigate,默认 true
performanceThresholdNo性能阈值(LCP ms),默认 2500

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions independent sessions per role but does not disclose side effects, auth requirements, rate limits, or whether the tool is read-only or mutates state. The behavioral impact is underdescribed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences that front-load the core purpose and key details. Every word contributes meaning, and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 15 parameters and no output schema or annotations, the description is too brief. It does not explain the output report format, prerequisites, or how to interpret results, leaving significant gaps for a complex tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema documents all parameters. The description adds no additional semantic value beyond what the schema provides, meeting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's function: executing a multi-dimensional validation matrix covering functional, visual, performance, and a11y dimensions, and outputting a comprehensive scoring report. It also mentions role×feature permission matrix validation with independent sessions, which clearly differentiates it from sibling tools like browser_matrix_test or validation_run.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for comprehensive multi-dimensional and role-based validation but does not explicitly state when to use this tool over alternatives or provide context on when not to use it. No comparisons or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_permissionA

权限越权检测工具。支持三种模式:horizontal_privilege=水平越权检测(替换API路径中的ID);vertical_privilege=垂直越权检测(普通用户访问管理API);role_menu=基于角色的菜单可见性验证

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo检测名称
actionYes检测模式:horizontal_privilege=水平越权;vertical_privilege=垂直越权;role_menu=角色菜单
entityNo实体名称(如 leads/orders),用于构造 API 路径
timeoutNo超时时间(毫秒),默认 15000
entityIdNo当前用户的实体 ID(水平越权检测时,将被替换为 otherEntityId)
targetUrlNo目标页面 URL
targetRoleNorole_menu 模式:目标角色名称
roleSelectorNorole_menu 模式:角色切换按钮/下拉框的选择器
adminApiPathsNo管理端 API 路径数组(垂直越权检测时访问这些路径)
otherEntityIdNo其他用户的实体 ID(水平越权检测时替换为目标值)
expectedMenuItemsNorole_menu 模式:目标角色应看到的菜单项文本
unexpectedMenuItemsNorole_menu 模式:目标角色不应看到的菜单项文本

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as side effects, required permissions, or whether the tool is read-only. For a detection tool, missing information about safety or impact reduces transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently captures the tool's purpose and main modes. It is front-loaded and contains no superfluous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 12 parameters and no output schema, the description is relatively brief. While the modes are explained, there is no guidance on which parameters to use for each mode or on expected outcomes, leaving the agent to infer from the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already provides detailed parameter descriptions. The tool description adds value by contextualizing the action enum and modes, but it does not add meaning beyond what is in the schema for other parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as a permission escalation detection tool and enumerates three specific modes (horizontal privilege, vertical privilege, role menu), which distinguishes it from sibling tools that are mostly browser automation or generic validation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the three modes and their use cases, providing context for when to use each mode. However, it does not explicitly state when not to use this tool or mention alternatives, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_quick_runA

对单页执行低 Token 快速验证:Console、Network、PageError、DOM/ARIA/文本摘要和稳定选择器可达性,返回 pass/fail、Top errors、artifact 路径。

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
timeoutNo
headlessNo

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavioral traits. It mentions low token usage, specific checks, and outputs. However, it does not disclose whether the tool is read-only, has side effects, or requires specific permissions. The description is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the core purpose, scope, and outputs. Every part carries weight, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose and basic outputs, but lacks parameter details and output format (e.g., structure of errors, artifact path). Without output schema, more detail on return values would be beneficial. Overall adequate but not thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description does not explain any parameters. The parameter names (url, timeout, headless) are somewhat self-explanatory, but the description adds no additional meaning or context, such as units or behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs low-token quick validation on a single page, listing specific checks (Console, Network, PageError, DOM/ARIA/text summary, stable selector reachability) and outputs (pass/fail, top errors, artifact path). This differentiates it from sibling tools like validation_run or validation_start which are likely more comprehensive.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for quick, low-resource validation on single pages but does not explicitly state when to use this tool versus alternatives like validation_run or validation_start. No exclusions or alternative recommendations are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_reportA

验证报告工具(v1.9.5 起合并 validation_report_export)。通过 mode 参数区分子模式:view(默认,根据最近一次 validation_check/run/matrix 生成 Markdown/JSON 结构化验证报告,含六段式结构)/ export(导出 HTML 报告到文件,等价于已废弃的 validation_report_export)。

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo报告模式:view(默认,生成 Markdown/JSON 报告)/ export(导出 HTML 报告到文件,等价于已废弃的 validation_report_export)view
formatNo报告格式markdown
strictSchemaNo是否严格遵循六段式输出结构

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It reports that the tool generates reports based on recent validation data and mentions a six-section structure, but does not disclose potential side effects (e.g., file overwrite on export) or detailed behavior beyond mode selection.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (two sentences) while covering purpose, modes, and deprecation notice. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core functionality, modes, and relationship to the deprecated tool. However, it lacks details on the six-section structure, return format, or any file export specifics, which would be helpful given no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents parameters. The tool description adds context by explaining mode sub-modes and the default view mode, but does not significantly enhance understanding beyond the schema's enum descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates validation reports with two sub-modes (view and export), explicitly linking view to recent validation_check/run/matrix and export to the deprecated validation_report_export. This distinguishes it from siblings like validation_check and validation_run.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each mode (view for Markdown/JSON report, export for HTML file) and notes that export replaces the deprecated sibling. However, it does not explicitly state when not to use this tool or compare with other report-like tools such as chain_score_report.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_report_exportA

将最近一次验证结果导出为本地静态 HTML 报告,包含六段式结构:摘要、工具链、发现问题、网络证据、证据产物、待分类项。HTML 报告和 JSON 数据统一输出到 .trae/validations/runs// 目录下;若无活跃 run-id,则输出到 ai-verify-mcp/reports/ 目录。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It adequately describes the output (HTML report and JSON data), the directory structure (dependent on run-id), and the report sections. However, it does not mention potential side effects (e.g., overwriting files) or access requirements. The level of detail is sufficient for a tool with no parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence in Chinese that front-loads the core action. It includes all essential details (output format, structure, directory logic) without extraneous information. Every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description provides complete context: what it does, the resulting output structure, and where files are saved. It covers all necessary information for a simple export tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema coverage is effectively 100%. According to guidelines, a baseline of 4 is appropriate. The description adds value by explaining the output behavior (directory fallback, report structure) beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's primary purpose: exporting the latest validation result as a static HTML report with a specific six-section structure. It uses a strong verb 'export' and specifies the output resource (validation results). While it does not explicitly differentiate from sibling tools like 'validation_report', the description is specific enough to convey its function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives. It implies it should be used after a validation run, but does not mention when to avoid it or specify any prerequisites or exclusions. No comparative context with sibling tools is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_runA

Execute a complete browser acceptance plan: auto-clear errors, inject probes, record trace, run browser_flow per case, assert, investigate failures, export HAR, and persist evidence artifacts.

中文详情:

  • 用途:执行完整的浏览器端到端验收测试计划,自动完成错误清空、探针注入、trace 录制、按用例执行 browser_flow、断言、失败调查、HAR 导出和证据保存

  • 何时使用:需要一次性运行多个测试用例并产出完整证据链时;CI/CD 流水线中需要 gate 检查时;版本发布前回归验证时;复杂业务流程端到端验证时

  • 输出:{ ok: boolean, planName: string, totalCases: number, passedCases: number, failedCases: number, artifacts: { screenshots: [], traces: [], har: string, report: string }, summary: string }

  • 参数:

    • name (string, 可选):验证计划名称,用于报告标识

    • cases (array, 必填):测试用例列表,每项含 name/sessionName/steps/assertions/focus/symptom/expected/continueOnError

    • clearArtifacts (boolean, 可选):执行前是否清理旧截图/trace/har,默认 false

    • clearErrors (boolean, 可选):执行前是否清空错误 checkpoint,默认 true

    • instrument (boolean, 可选):是否注入运行时探针,默认 true

    • trace (boolean, 可选):是否录制 trace,默认 true

    • har (boolean, 可选):是否导出 HAR JSON,默认 true

    • investigateOnFailure (boolean, 可选):失败时是否自动调用 debug_investigate,默认 true

    • continueOnFailure (boolean, 可选):用例失败后是否继续执行后续用例,默认 false

  • 错误:cases 为空抛出 'No test cases provided';浏览器未启动抛出 'Browser not launched';单个用例断言失败会在 result 中标记 failed 但不抛出

  • 示例:{"name":"login-regression","cases":[{"name":"valid-login","steps":[{"action":"navigate","url":"https://example.com/login"}],"assertions":{"urlContains":"dashboard"}}],"clearArtifacts":true}

ParametersJSON Schema
NameRequiredDescriptionDefault
harNo是否导出 HAR JSON,默认 true
nameNo验证计划名称
casesYes测试用例列表
traceNo是否录制 trace,默认 true
instrumentNo是否注入运行时探针,默认 true
clearErrorsNo执行前是否清空错误 checkpoint,默认 true
clearArtifactsNo执行前是否清理截图、trace、har,默认 false
continueOnFailureNo用例失败后是否继续执行后续用例,默认 false
investigateOnFailureNo失败时是否自动调用 debug_investigate,默认 true

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It details the full workflow: auto-clear errors, inject probes, trace, per-case browser_flow, assertion, investigation, HAR export, and evidence persistence. It also lists error conditions and handling of failures.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long (bilingual) but well-structured with sections for purpose, usage, output, parameters, errors, and example. It is comprehensive but could be more concise by removing redundant Chinese translations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is complex with 9 parameters and orchestration of multiple steps. The description covers output structure, error conditions, and provides an example. Despite no output schema, the output format is explicitly documented. This is complete for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (all 9 parameters described in schema). The description repeats and adds default values, as well as an example. This adds value beyond the schema, justifying a score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Execute a complete browser acceptance plan' and enumerates the steps. The verb-resource combination is specific and distinguishable from sibling tools, which are lower-level browser actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a '何时使用' section in Chinese, explaining when to use the tool (multiple test cases, CI/CD, regression, end-to-end). While it provides good context, it lacks explicit when-not-to-use or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validation_startB

Start an end-to-end validation flow. 启动端到端验证流程,按给定场景列表对目标 URL 执行多步验证。

ParametersJSON Schema
NameRequiredDescriptionDefault
targetUrlYes目标验证页面URL
testScenariosYes测试场景列表

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It does not disclose behavioral traits such as whether the flow is asynchronous, whether it modifies state, or what errors may occur. The description only states the action without side effects or guarantees.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, including a Chinese translation for clarity. No wasted words; essential information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description covers the basic purpose and inputs. However, it omits what the tool returns (e.g., a flow ID or result) and whether it is synchronous or asynchronous, which is important for an action that 'starts' something.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with Chinese descriptions that explain targetUrl and testScenarios adequately. The description adds context of 'end-to-end validation flow' but does not enrich parameter semantics beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it starts an end-to-end validation flow, specifying it performs multi-step verification against a target URL using a given list of scenarios. This differentiates it from sibling tools like validation_check or validation_flow, which likely serve different roles.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like validation_chain or validation_flow. The description lacks context about prerequisites, post-conditions, or comparison with other validation tools in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 32 tool updatesv1.9.5
    • Removedasset_endpoint_probe
    • Removedatl_fix
    • Removedatl_learn
    • Removedbrowser_anti_bot_detect
    • Removedbrowser_aria_click
    • Removedbrowser_aria_snapshot
    • Removedbrowser_artifacts_clear
    • Removedbrowser_assert
    • Removedbrowser_batch
    • Addedbrowser_captcha
    • Removedbrowser_captcha_detect
    • Addedbrowser_console
    • Addedbrowser_diagnose
    • Addedbrowser_dom
    • Addedbrowser_errors_aggregate
    • Addedbrowser_events_clear
    • Addedbrowser_find_element
    • Addedbrowser_flow
    • Addedbrowser_form_fill
    • Addedbrowser_full_audit
    • Addedbrowser_har_export
    • Addedbrowser_highlight
    • Addedbrowser_hover
    • Addedbrowser_links
    • Addedbrowser_locator
    • Addedbrowser_locator_suggest
    • Addedbrowser_locator_validate
    • Addedbrowser_navigate
    • Addedbrowser_network_detail
    • Addedbrowser_open
    • Addedbrowser_performance_check
    • Addedbrowser_press_key
  2. 112 tool updatesv1.9.5
    • Removedarch_reverse_probe
    • Addedasset_discovery
    • Removedasset_endpoint_enum
    • Addedbrowser_a11y_check
    • Addedbrowser_anti_bot_detect
    • Addedbrowser_aria_click
    • Addedbrowser_aria_snapshot
    • Addedbrowser_aria_type
    • Changedbrowser_batch5 fields changed
      • changedInput schema / properties / steps / description
        Previous value: -"操作步骤数组,每个步骤包含type、selector、text等参数"New value: +"操作步骤数组,每个步骤包含 type(或 action 别名)、selector、text 等参数"
      • addedInput schema / properties / steps / items / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "type"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "action"
        +    ]
        +  }
        +]
      • addedInput schema / properties / steps / items / properties / action
        Added value: +{
        +  "description": "操作类型(type 的别名,与 type 等效)",
        +  "enum": [
        +    "click",
        +    "type",
        +    "hover",
        +    "scroll",
        +    "screenshot",
        +    "wait",
        +    "press_key",
        +    "select"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / steps / items / properties / type / description
        Previous value: -"操作类型"New value: +"操作类型(与 action 互为别名,优先使用 type)"
      • removedInput schema / properties / steps / items / required
        Removed value: -[
        -  "type"
        -]
    • Changedbrowser_chain5 fields changed
      • changedInput schema / properties / actions / description
        Previous value: -"操作步骤数组,每个步骤包含 type 和相关参数"New value: +"操作步骤数组,每个步骤包含 type(或 action 别名)和相关参数"
      • addedInput schema / properties / actions / items / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "type"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "action"
        +    ]
        +  }
        +]
      • addedInput schema / properties / actions / items / properties / action
        Added value: +{
        +  "description": "操作类型(type 的别名,与 type 等效)",
        +  "enum": [
        +    "click",
        +    "type",
        +    "hover",
        +    "scroll",
        +    "pressKey",
        +    "select",
        +    "wait",
        +    "evaluate"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / actions / items / properties / type / description
        Previous value: -"操作类型"New value: +"操作类型(与 action 互为别名,优先使用 type)"
      • removedInput schema / properties / actions / items / required
        Removed value: -[
        -  "type"
        -]
    • Removedbrowser_console
    • Addedbrowser_cookies
    • Addedbrowser_counterfactual_analyze
    • Addedbrowser_data_compare
    • Addedbrowser_debug
    • Addedbrowser_debug_report
    • Addedbrowser_element_status
    • Addedbrowser_emulate_device
    • Addedbrowser_errors
    • Addedbrowser_errors_clear
    • Addedbrowser_eval
    • Changedbrowser_events1 field changed
      • addedInput schema / properties / mode
        Added value: +{
        +  "default": "view",
        +  "description": "事件管理模式:view(默认,查看事件流)/ clear(清空事件并创建新 checkpoint,等价于已废弃的 browser_events_clear)",
        +  "enum": [
        +    "view",
        +    "clear"
        +  ],
        +  "type": "string"
        +}
    • Addedbrowser_find
    • Addedbrowser_find_page
    • Addedbrowser_form_validate
    • Addedbrowser_full_regression
    • Addedbrowser_instrument
    • Addedbrowser_lighthouse_audit
    • Addedbrowser_matrix_test
    • Addedbrowser_memory_check
    • Addedbrowser_network
    • Addedbrowser_overlay
    • Addedbrowser_overlay_detect
    • Addedbrowser_performance
    • Addedbrowser_performance_trace
    • Addedbrowser_quick_fix
    • Addedbrowser_screenshot
    • Addedbrowser_screenshot_element
    • Addedbrowser_scroll
    • Addedbrowser_select
    • Addedbrowser_session
    • Addedbrowser_session_close
    • Addedbrowser_session_create
    • Addedbrowser_session_switch
    • Addedbrowser_sessions
    • Addedbrowser_smart_fill
    • Addedbrowser_smoke_test
    • Addedbrowser_snapshot
    • Addedbrowser_state
    • Addedbrowser_step
    • Addedbrowser_storage
    • Addedbrowser_trace_chain
    • Addedbrowser_trace_start
    • Addedbrowser_trace_stop
    • Addedbrowser_traverse_menu
    • Addedbrowser_type
    • Addedbrowser_verify_fix
    • Addedbrowser_visual
    • Addedbrowser_visual_baseline
    • Addedbrowser_visual_check
    • Addedbrowser_visual_report
    • Addedbrowser_visual_snapshot
    • Addedbrowser_wait
    • Addedbusiness_loop_validate
    • Addedbypass_login
    • Addedchain_list_templates
    • Addedchain_score_report
    • Addedchain_spec
    • Addedchain_spec_run
    • Addedcontract
    • Addedcontract_baseline
    • Addedcontract_guard
    • Addedcorrelate_triple_check
    • Addedcss_var_check
    • Addeddebug_investigate
    • Addeddual_chain_explore
    • Addederror_analyze
    • Addederror_fix_suggestion
    • Addederror_summary_md
    • Addedevidence
    • Addedevidence_index
    • Addedevidence_pack
    • Addedexploration_quick
    • Addedmcp_diag
    • Addedmcp_health_check
    • Addedmcp_self_test
    • Addedmemory_recall
    • Addedproject_audit
    • Addedsecurity_csp_analyze
    • Addedsecurity_headers_check
    • Addedsecurity_owasp_top10
    • Addedsecurity_scan
    • Addedsecurity_xss_scan
    • Addedskill_consistency_check
    • Addedskill_mcp_validate
    • Addedskill_tools_map
    • Addedskill_validate
    • Addedstate_diff_assert
    • Addedtrace_correlate
    • Addedvalidation_chain
    • Addedvalidation_check
    • Addedvalidation_data_integrity
    • Addedvalidation_decision
    • Addedvalidation_element
    • Addedvalidation_flow
    • Addedvalidation_matrix
    • Addedvalidation_permission
    • Addedvalidation_quick_run
    • Addedvalidation_report
    • Addedvalidation_report_export
    • Addedvalidation_run
    • Addedvalidation_start
  3. 31 tool updatesv1.9.2
    • Addedapi_probe
    • Addedatl_learn
    • Removedbrowser_aria_snapshot
    • Removedbrowser_aria_type
    • Addedbrowser_chain
    • Addedbrowser_click
    • Addedbrowser_click_audit
    • Addedbrowser_console
    • Removedbrowser_counterfactual_analyze
    • Removedbrowser_data_compare
    • Removedbrowser_debug_report
    • Removedbrowser_diagnose
    • Removedbrowser_dom
    • Removedbrowser_element_status
    • Removedbrowser_emulate_device
    • Removedbrowser_errors
    • Removedbrowser_errors_clear
    • Addedbrowser_events
    • Removedbrowser_full_audit
    • Addedbrowser_overlay_dismiss
    • Addedbrowser_responsive_test
    • Removedbrowser_session_create
    • Removedbrowser_step
    • Addedbrowser_visual_component
    • Addedscreenshot_diff
    • Addedsecurity_sql_injection_scan
    • Removedsecurity_xss_scan
    • Removedstate_diff_assert
    • Addedtrace_correlation_check
    • Removedvalidation_data_integrity
    • Removedvalidation_quick_run
  4. 102 tool updatesv1.9.1
    • Removedapi_probe
    • Removedatl_learn
    • Removedbrowser_a11y_check
    • Removedbrowser_anti_bot_detect
    • Removedbrowser_aria_click
    • Removedbrowser_chain
    • Removedbrowser_click
    • Removedbrowser_click_audit
    • Removedbrowser_console
    • Removedbrowser_cookies
    • Removedbrowser_errors_aggregate
    • Removedbrowser_eval
    • Removedbrowser_events
    • Removedbrowser_events_clear
    • Removedbrowser_find_element
    • Removedbrowser_find_page
    • Removedbrowser_form_fill
    • Removedbrowser_form_validate
    • Removedbrowser_full_regression
    • Removedbrowser_har_export
    • Removedbrowser_highlight
    • Removedbrowser_hover
    • Removedbrowser_instrument
    • Removedbrowser_lighthouse_audit
    • Removedbrowser_links
    • Removedbrowser_locator_suggest
    • Removedbrowser_locator_validate
    • Removedbrowser_matrix_test
    • Removedbrowser_memory_check
    • Removedbrowser_navigate
    • Removedbrowser_network
    • Removedbrowser_network_detail
    • Removedbrowser_open
    • Removedbrowser_overlay_detect
    • Removedbrowser_overlay_dismiss
    • Removedbrowser_performance_check
    • Removedbrowser_performance_trace
    • Removedbrowser_press_key
    • Removedbrowser_quick_fix
    • Removedbrowser_responsive_test
    • Removedbrowser_screenshot
    • Removedbrowser_screenshot_element
    • Removedbrowser_scroll
    • Removedbrowser_select
    • Removedbrowser_session_close
    • Removedbrowser_session_switch
    • Removedbrowser_sessions
    • Removedbrowser_smart_fill
    • Removedbrowser_smoke_test
    • Removedbrowser_snapshot
    • Removedbrowser_storage
    • Removedbrowser_trace_chain
    • Removedbrowser_trace_start
    • Removedbrowser_trace_stop
    • Removedbrowser_traverse_menu
    • Removedbrowser_type
    • Removedbrowser_verify_fix
    • Removedbrowser_visual_baseline
    • Removedbrowser_visual_check
    • Removedbrowser_visual_component
    • Removedbrowser_visual_report
    • Removedbrowser_visual_snapshot
    • Removedbrowser_wait
    • Removedbusiness_loop_validate
    • Removedbypass_login
    • Removedchain_list_templates
    • Removedchain_score_report
    • Removedchain_spec_run
    • Removedcontract_baseline
    • Removedcontract_guard
    • Removedcorrelate_triple_check
    • Removedcss_var_check
    • Removeddebug_investigate
    • Removeddual_chain_explore
    • Removederror_fix_suggestion
    • Removederror_summary_md
    • Removedevidence_index
    • Removedevidence_pack
    • Removedexploration_quick
    • Removedmcp_health_check
    • Removedmcp_self_test
    • Removedmemory_recall
    • Removedproject_audit
    • Removedscreenshot_diff
    • Removedsecurity_csp_analyze
    • Removedsecurity_headers_check
    • Removedsecurity_owasp_top10
    • Removedsecurity_sql_injection_scan
    • Removedskill_mcp_validate
    • Removedtrace_correlate
    • Removedtrace_correlation_check
    • Removedvalidation_chain
    • Removedvalidation_check
    • Removedvalidation_decision
    • Removedvalidation_element
    • Removedvalidation_flow
    • Removedvalidation_matrix
    • Removedvalidation_permission
    • Removedvalidation_report
    • Removedvalidation_report_export
    • Removedvalidation_run
    • Removedvalidation_start
  5. 37 tool updatesv1.8.5
    • Addedapi_probe
    • Addedarch_reverse_probe
    • Addedasset_endpoint_enum
    • Addedasset_endpoint_probe
    • Addedasset_routes_discover
    • Addedatl_fix
    • Addedatl_learn
    • Changedbrowser_anti_bot_detect1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "detected": {
        -      "description": "检测到的反爬机制列表",
        -      "items": {
        -        "properties": {
        -          "confidence": {
        -            "description": "置信度 0-100",
        -            "type": "number"
        -          },
        -          "evidence": {
        -            "description": "检测证据",
        -            "type": "string"
        -          },
        -          "name": {
        -            "description": "反爬服务名称",
        -            "type": "string"
        -          },
        -          "risk": {
        -            "description": "风险等级",
        -            "enum": [
        -              "low",
        -              "medium",
        -              "high",
        -              "critical"
        -            ],
        -            "type": "string"
        -          },
        -          "type": {
        -            "description": "反爬类型:cloudflare/js_challenge/captcha/fingerprint/recaptcha/hcaptcha/aws_waf/custom",
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "headers": {
        -      "description": "相关响应头",
        -      "type": "object"
        -    },
        -    "pageInfo": {
        -      "description": "页面信息",
        -      "properties": {
        -        "challengeType": {
        -          "type": "string"
        -        },
        -        "hasChallenge": {
        -          "type": "boolean"
        -        },
        -        "title": {
        -          "type": "string"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "recommendations": {
        -      "description": "绕过建议",
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "riskLevel": {
        -      "description": "总体风险等级",
        -      "enum": [
        -        "none",
        -        "low",
        -        "medium",
        -        "high",
        -        "critical"
        -      ],
        -      "type": "string"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "url": {
        -      "type": "string"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Addedbrowser_captcha_detect
    • Addedbrowser_captcha_read
    • Addedbrowser_captcha_screenshot
    • Changedbrowser_click2 fields changed
      • addedInput schema / properties / index
        Added value: +{
        +  "description": "当选择器匹配多个元素时,指定点击第几个元素(从 0 开始)。不提供时默认点击第一个元素。",
        +  "type": "number"
        +}
      • changedInput schema / properties / selector / description
        Previous value: -"CSS 选择器"New value: +"CSS 选择器(支持 Playwright 语法,如 'button:has-text(\"Log In\")' 或 '#submit-btn')"
    • Changedbrowser_counterfactual_analyze1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "failureContext": {
        -      "type": "string"
        -    },
        -    "hasHighConfidenceRootCause": {
        -      "type": "boolean"
        -    },
        -    "hypotheses": {
        -      "items": {
        -        "properties": {
        -          "confidence": {
        -            "type": "number"
        -          },
        -          "contextMatch": {
        -            "type": "boolean"
        -          },
        -          "counterfactual": {
        -            "type": "string"
        -          },
        -          "description": {
        -            "type": "string"
        -          },
        -          "evidence": {
        -            "type": "array"
        -          },
        -          "factor": {
        -            "type": "string"
        -          },
        -          "impact": {
        -            "enum": [
        -              "high",
        -              "medium",
        -              "low"
        -            ],
        -            "type": "string"
        -          },
        -          "verifyAction": {
        -            "type": "string"
        -          },
        -          "verifyTool": {
        -            "type": "string"
        -          },
        -          "wouldStillFail": {
        -            "enum": [
        -              "likely",
        -              "maybe",
        -              "unlikely"
        -            ],
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "nextSteps": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "pageState": {
        -      "properties": {
        -        "hasBlockingOverlay": {
        -          "type": "boolean"
        -        },
        -        "httpErrorCount": {
        -          "type": "number"
        -        },
        -        "interactiveElements": {
        -          "type": "number"
        -        },
        -        "jsErrorCount": {
        -          "type": "number"
        -        },
        -        "loadTime": {
        -          "type": "number"
        -        },
        -        "loadingState": {
        -          "type": "string"
        -        },
        -        "overlayCount": {
        -          "type": "number"
        -        },
        -        "title": {
        -          "type": "string"
        -        },
        -        "url": {
        -          "type": "string"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "paidUpgradeHint": {
        -      "type": "string"
        -    },
        -    "rootCause": {
        -      "properties": {
        -        "confidence": {
        -          "type": "number"
        -        },
        -        "factor": {
        -          "type": "string"
        -        },
        -        "verifyAction": {
        -          "type": "string"
        -        },
        -        "verifyTool": {
        -          "type": "string"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "status": {
        -      "enum": [
        -        "success",
        -        "warning"
        -      ],
        -      "type": "string"
        -    },
        -    "suggestions": {
        -      "items": {
        -        "type": "object"
        -      },
        -      "type": "array"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Addedbrowser_data_compare
    • Changedbrowser_emulate_device1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "applied": {
        -      "description": "应用的设备配置",
        -      "properties": {
        -        "orientation": {
        -          "type": "string"
        -        },
        -        "touch": {
        -          "type": "boolean"
        -        },
        -        "userAgent": {
        -          "type": "string"
        -        },
        -        "viewport": {
        -          "properties": {
        -            "deviceScaleFactor": {
        -              "type": "number"
        -            },
        -            "height": {
        -              "type": "number"
        -            },
        -            "width": {
        -              "type": "number"
        -            }
        -          },
        -          "type": "object"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "device": {
        -      "type": "string"
        -    },
        -    "pageInfo": {
        -      "description": "当前页面信息",
        -      "properties": {
        -        "title": {
        -          "type": "string"
        -        },
        -        "url": {
        -          "type": "string"
        -        },
        -        "viewport": {
        -          "properties": {
        -            "height": {
        -              "type": "number"
        -            },
        -            "width": {
        -              "type": "number"
        -            }
        -          },
        -          "type": "object"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "verification": {
        -      "description": "设备模拟验证结果",
        -      "properties": {
        -        "touchEnabled": {
        -          "type": "boolean"
        -        },
        -        "userAgentMatched": {
        -          "type": "boolean"
        -        },
        -        "viewportMatched": {
        -          "type": "boolean"
        -        }
        -      },
        -      "type": "object"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_form_fill1 field changed
      • changedInput schema / properties / fields / description
        Previous value: -"手动指定的字段覆盖值,key为字段名,value为字段值"New value: +"手动指定的字段值。支持两种key格式:1) CSS选择器模式(key以#/./[/[/>/:/*开头,如 {\"#login-email\": \"user@test.com\", \"#login-password\": \"pass123\"});2) 字段名模式(key为input的name属性,如 {\"email\": \"user@test.com\", \"password\": \"pass123\"})。CSS选择器模式的字段会直接用Playwright定位填充,字段名模式的字段会通过表单自动发现机制匹配。"
    • Changedbrowser_form_validate1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "fields": {
        -      "description": "表单字段列表",
        -      "items": {
        -        "properties": {
        -          "defaultValue": {
        -            "type": "string"
        -          },
        -          "id": {
        -            "type": "string"
        -          },
        -          "inputType": {
        -            "type": "string"
        -          },
        -          "issues": {
        -            "description": "字段问题",
        -            "items": {
        -              "type": "string"
        -            },
        -            "type": "array"
        -          },
        -          "label": {
        -            "type": "string"
        -          },
        -          "max": {
        -            "type": "string"
        -          },
        -          "maxLength": {
        -            "type": "number"
        -          },
        -          "min": {
        -            "type": "string"
        -          },
        -          "minLength": {
        -            "type": "number"
        -          },
        -          "name": {
        -            "type": "string"
        -          },
        -          "options": {
        -            "description": "下拉选项(select/radio/checkbox)",
        -            "items": {
        -              "type": "string"
        -            },
        -            "type": "array"
        -          },
        -          "pattern": {
        -            "type": "string"
        -          },
        -          "placeholder": {
        -            "type": "string"
        -          },
        -          "required": {
        -            "type": "boolean"
        -          },
        -          "tagName": {
        -            "type": "string"
        -          },
        -          "type": {
        -            "type": "string"
        -          },
        -          "validationRules": {
        -            "description": "检测到的验证规则",
        -            "items": {
        -              "type": "string"
        -            },
        -            "type": "array"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "formFound": {
        -      "type": "boolean"
        -    },
        -    "formSelector": {
        -      "type": "string"
        -    },
        -    "recommendations": {
        -      "description": "改进建议",
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "summary": {
        -      "description": "验证摘要",
        -      "type": "string"
        -    },
        -    "url": {
        -      "type": "string"
        -    },
        -    "validationResults": {
        -      "description": "验证结果",
        -      "properties": {
        -        "allPassed": {
        -          "type": "boolean"
        -        },
        -        "lengthViolations": {
        -          "type": "number"
        -        },
        -        "patternViolations": {
        -          "type": "number"
        -        },
        -        "requiredFieldsMissing": {
        -          "type": "number"
        -        },
        -        "totalFields": {
        -          "type": "number"
        -        }
        -      },
        -      "type": "object"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_overlay_detect1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "hasBlockingOverlay": {
        -      "type": "boolean"
        -    },
        -    "nextSteps": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "overlays": {
        -      "items": {
        -        "properties": {
        -          "className": {
        -            "type": "string"
        -          },
        -          "coveragePercent": {
        -            "type": "number"
        -          },
        -          "id": {
        -            "type": "string"
        -          },
        -          "opacity": {
        -            "type": "number"
        -          },
        -          "overlayType": {
        -            "type": "string"
        -          },
        -          "position": {
        -            "type": "string"
        -          },
        -          "rect": {
        -            "type": "object"
        -          },
        -          "tagName": {
        -            "type": "string"
        -          },
        -          "text": {
        -            "type": "string"
        -          },
        -          "zIndex": {
        -            "type": "number"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "paidUpgradeHint": {
        -      "type": "string"
        -    },
        -    "status": {
        -      "enum": [
        -        "success",
        -        "warning"
        -      ],
        -      "type": "string"
        -    },
        -    "suggestions": {
        -      "items": {
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "totalCoveragePercent": {
        -      "type": "number"
        -    },
        -    "totalOverlays": {
        -      "type": "number"
        -    },
        -    "typeCounts": {
        -      "type": "object"
        -    },
        -    "viewportInfo": {
        -      "type": "object"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_overlay_dismiss1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "dismissResults": {
        -      "items": {
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "dismissedCount": {
        -      "type": "number"
        -    },
        -    "hasBlockingOverlay": {
        -      "type": "boolean"
        -    },
        -    "nextSteps": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "paidUpgradeHint": {
        -      "type": "string"
        -    },
        -    "remainingOverlays": {
        -      "type": "number"
        -    },
        -    "status": {
        -      "enum": [
        -        "success",
        -        "partial",
        -        "warning"
        -      ],
        -      "type": "string"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "suggestions": {
        -      "items": {
        -        "type": "object"
        -      },
        -      "type": "array"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_performance_trace1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "duration": {
        -      "type": "number"
        -    },
        -    "entries": {
        -      "description": "所有性能条目",
        -      "type": "array"
        -    },
        -    "grade": {
        -      "description": "性能等级",
        -      "enum": [
        -        "A",
        -        "B",
        -        "C",
        -        "D",
        -        "F"
        -      ],
        -      "type": "string"
        -    },
        -    "har": {
        -      "description": "HAR 格式数据(如果 enableHar=true)",
        -      "type": "object"
        -    },
        -    "metrics": {
        -      "properties": {
        -        "cumulativeLayoutShift": {
        -          "description": "累积布局偏移分数",
        -          "type": "number"
        -        },
        -        "domContentLoaded": {
        -          "description": "DOM 内容加载完成时间 (ms)",
        -          "type": "number"
        -        },
        -        "firstContentfulPaint": {
        -          "description": "首次内容绘制时间 (ms)",
        -          "type": "number"
        -        },
        -        "firstInputDelay": {
        -          "description": "首次输入延迟 (ms)",
        -          "type": "number"
        -        },
        -        "firstPaint": {
        -          "description": "首次绘制时间 (ms)",
        -          "type": "number"
        -        },
        -        "largestContentfulPaint": {
        -          "description": "最大内容绘制时间 (ms)",
        -          "type": "number"
        -        },
        -        "load": {
        -          "description": "页面加载时间 (ms)",
        -          "type": "number"
        -        },
        -        "speedIndex": {
        -          "description": "速度指数",
        -          "type": "number"
        -        },
        -        "totalBlockingTime": {
        -          "description": "总阻塞时间 (ms)",
        -          "type": "number"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "recommendations": {
        -      "description": "优化建议",
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "resourceCount": {
        -      "description": "资源数量",
        -      "type": "number"
        -    },
        -    "resourceTypes": {
        -      "description": "按类型统计的资源数量",
        -      "type": "object"
        -    },
        -    "screenshots": {
        -      "description": "追踪期间的截图路径(如果 enableScreenshots=true)",
        -      "type": "array"
        -    },
        -    "slowRequests": {
        -      "description": "慢请求(>1s)",
        -      "items": {
        -        "properties": {
        -          "duration": {
        -            "type": "number"
        -          },
        -          "size": {
        -            "type": "number"
        -          },
        -          "type": {
        -            "type": "string"
        -          },
        -          "url": {
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "url": {
        -      "type": "string"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_smoke_test1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "details": {
        -      "type": "object"
        -    },
        -    "nextSteps": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "paidUpgradeHint": {
        -      "type": "string"
        -    },
        -    "passed": {
        -      "type": "boolean"
        -    },
        -    "status": {
        -      "enum": [
        -        "success",
        -        "warning",
        -        "error"
        -      ],
        -      "type": "string"
        -    },
        -    "suggestions": {
        -      "items": {
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "summary": {
        -      "properties": {
        -        "accessibilityIssues": {
        -          "type": "number"
        -        },
        -        "consoleWarnings": {
        -          "type": "number"
        -        },
        -        "elementCount": {
        -          "type": "number"
        -        },
        -        "httpErrors": {
        -          "type": "number"
        -        },
        -        "jsErrors": {
        -          "type": "number"
        -        },
        -        "pageLoad": {
        -          "type": "string"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "totalTime": {
        -      "type": "number"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_trace_start1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "message": {
        -      "type": "string"
        -    },
        -    "ok": {
        -      "type": "boolean"
        -    },
        -    "startedAt": {
        -      "type": "string"
        -    },
        -    "traceId": {
        -      "type": "string"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Changedbrowser_trace_stop1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "logs": {
        -      "type": "array"
        -    },
        -    "message": {
        -      "type": "string"
        -    },
        -    "ok": {
        -      "type": "boolean"
        -    },
        -    "stoppedAt": {
        -      "type": "string"
        -    },
        -    "traceId": {
        -      "type": "string"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Addedbusiness_loop_validate
    • Addedbypass_login
    • Addedcorrelate_triple_check
    • Changedcss_var_check1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "definitions": {
        -      "description": "所有变量定义列表",
        -      "items": {
        -        "properties": {
        -          "line": {
        -            "type": "number"
        -          },
        -          "name": {
        -            "type": "string"
        -          },
        -          "selector": {
        -            "type": "string"
        -          },
        -          "value": {
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "entries": {
        -      "description": "检测到的问题条目列表",
        -      "items": {
        -        "properties": {
        -          "column": {
        -            "description": "列号",
        -            "type": "number"
        -          },
        -          "line": {
        -            "description": "行号",
        -            "type": "number"
        -          },
        -          "message": {
        -            "description": "问题描述",
        -            "type": "string"
        -          },
        -          "selector": {
        -            "description": "所在选择器",
        -            "type": "string"
        -          },
        -          "severity": {
        -            "description": "严重级别",
        -            "type": "string"
        -          },
        -          "suggestedFix": {
        -            "description": "修复建议",
        -            "properties": {
        -              "insertAfter": {
        -                "description": "建议插入在该变量定义之后,可为 null(表示插入到文件末尾)",
        -                "type": "string"
        -              },
        -              "value": {
        -                "description": "建议的定义值,如 #176b87",
        -                "type": "string"
        -              }
        -            },
        -            "type": "object"
        -          },
        -          "usedIn": {
        -            "description": "在哪个属性或变量中被引用",
        -            "type": "string"
        -          },
        -          "variable": {
        -            "description": "缺失的 CSS 变量名,如 --primary",
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "file": {
        -      "description": "分析的 CSS 来源",
        -      "type": "string"
        -    },
        -    "missingVarOverview": {
        -      "description": "缺失变量总览(去重)",
        -      "items": {
        -        "properties": {
        -          "count": {
        -            "description": "出现的次数",
        -            "type": "number"
        -          },
        -          "suggestedValue": {
        -            "description": "建议的默认值",
        -            "type": "string"
        -          },
        -          "variable": {
        -            "type": "string"
        -          }
        -        },
        -        "type": "object"
        -      },
        -      "type": "array"
        -    },
        -    "summary": {
        -      "properties": {
        -        "circularReferences": {
        -          "description": "循环引用数",
        -          "type": "number"
        -        },
        -        "missingVariables": {
        -          "description": "缺失的变量数",
        -          "type": "number"
        -        },
        -        "totalDefinitions": {
        -          "description": "定义的变量总数",
        -          "type": "number"
        -        },
        -        "totalReferences": {
        -          "description": "引用变量总数",
        -          "type": "number"
        -        }
        -      },
        -      "type": "object"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
    • Addeddual_chain_explore
    • Addedexploration_quick
    • Addedmemory_recall
    • Addedsecurity_csp_analyze
    • Addedsecurity_headers_check
    • Addedsecurity_owasp_top10
    • Addedsecurity_sql_injection_scan
    • Addedsecurity_xss_scan
    • Changedvalidation_element19 fields changed
      • addedInput schema / properties / clearErrors
        Added value: +{
        +  "default": true,
        +  "description": "是否在验证前清空历史错误日志,默认 true",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / countEquals
        Added value: +{
        +  "description": "断言匹配选择器的元素数量",
        +  "type": "number"
        +}
      • removedInput schema / properties / elementSelector
        Removed value: -{
        -  "description": "元素选择器",
        -  "type": "string"
        -}
      • addedInput schema / properties / enabled
        Added value: +{
        +  "description": "断言元素是否可用(非 disabled 且非 readonly)",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / evidence
        Added value: +{
        +  "default": true,
        +  "description": "是否采集证据(截图+快照),默认 true",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / exists
        Added value: +{
        +  "description": "断言元素是否存在",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / expectedText
        Removed value: -{
        -  "description": "预期文本",
        -  "type": "string"
        -}
      • addedInput schema / properties / hasAttribute
        Added value: +{
        +  "description": "断言元素具有该属性名",
        +  "type": "string"
        +}
      • addedInput schema / properties / name
        Added value: +{
        +  "description": "本次验证的名称(用于证据标记)",
        +  "type": "string"
        +}
      • addedInput schema / properties / noErrors
        Added value: +{
        +  "default": true,
        +  "description": "是否同时检查本轮无控制台/页面/网络错误,默认 true",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / screenshot
        Added value: +{
        +  "description": "是否在证据中包含截图(默认在断言失败时自动截图)",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / selector
        Added value: +{
        +  "description": "元素CSS选择器(必填)",
        +  "type": "string"
        +}
      • addedInput schema / properties / snapshot
        Added value: +{
        +  "description": "是否在证据中包含DOM快照",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / targetUrl
        Removed value: -{
        -  "description": "目标页面URL",
        -  "type": "string"
        -}
      • addedInput schema / properties / textContains
        Added value: +{
        +  "description": "断言元素文本包含该内容",
        +  "type": "string"
        +}
      • addedInput schema / properties / url
        Added value: +{
        +  "description": "目标页面URL(可选,若提供则会先导航到该页面)",
        +  "type": "string"
        +}
      • addedInput schema / properties / valueEquals
        Added value: +{
        +  "description": "断言表单元素的值等于该内容",
        +  "type": "string"
        +}
      • addedInput schema / properties / visible
        Added value: +{
        +  "description": "断言元素是否可见",
        +  "type": "boolean"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "targetUrl",
        -  "elementSelector"
        -]New value: +[
        +  "selector"
        +]
    • Changedvalidation_matrix1 field changed
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "artifacts": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "dimensions": {
        -      "properties": {
        -        "a11y": {
        -          "description": "无障碍维度评分",
        -          "type": "object"
        -        },
        -        "functional": {
        -          "description": "功能维度评分",
        -          "type": "object"
        -        },
        -        "performance": {
        -          "description": "性能维度评分",
        -          "type": "object"
        -        },
        -        "visual": {
        -          "description": "视觉维度评分",
        -          "type": "object"
        -        }
        -      },
        -      "type": "object"
        -    },
        -    "grade": {
        -      "description": "等级 A/B/C/D/F",
        -      "type": "string"
        -    },
        -    "name": {
        -      "type": "string"
        -    },
        -    "overallScore": {
        -      "description": "综合评分 0-100",
        -      "type": "number"
        -    },
        -    "recommendations": {
        -      "items": {
        -        "type": "string"
        -      },
        -      "type": "array"
        -    },
        -    "roleMatrix": {
        -      "description": "角色×功能矩阵结果",
        -      "type": "array"
        -    },
        -    "success": {
        -      "type": "boolean"
        -    },
        -    "timestamp": {
        -      "type": "string"
        -    },
        -    "url": {
        -      "type": "string"
        -    }
        -  },
        -  "type": "object"
        -}New value: +null
  6. 52 tool updatesv1.2.1
    • Removedai_debug_investigate
    • Removedauto_fix_pipeline
    • Removedbenchmark_run
    • Addedbrowser_anti_bot_detect
    • Addedbrowser_aria_click
    • Addedbrowser_aria_snapshot
    • Addedbrowser_aria_type
    • Addedbrowser_chain
    • Addedbrowser_counterfactual_analyze
    • Removedbrowser_deep_interact
    • Addedbrowser_emulate_device
    • Changedbrowser_errors6 fields changed
      • changedInput schema / properties / currentOnly / description
        Previous value: -"是否只返回当前 checkpoint 之后的错误,默认 true"New value: +"是否只返回当前checkpoint之后的错误,默认true"
      • changedInput schema / properties / includeWarnings / description
        Previous value: -"是否包含 warning/warn 日志,默认 false"New value: +"是否包含warning/warn日志,默认false"
      • changedInput schema / properties / limit / description
        Previous value: -"MCP 服务错误日志最多返回条数,默认 50"New value: +"MCP服务错误日志最多返回条数,默认50"
      • changedInput schema / properties / method / description
        Previous value: -"只返回指定 HTTP 方法的网络错误,如 GET/POST"New value: +"只返回指定HTTP方法的网络错误"
      • changedInput schema / properties / since / description
        Previous value: -"ISO 时间戳,只返回该时间之后的错误"New value: +"ISO时间戳,只返回该时间之后的错误"
      • changedInput schema / properties / urlContains / description
        Previous value: -"只返回 URL 包含该关键字的网络错误"New value: +"只返回URL包含该关键字的网络错误"
    • Removedbrowser_flow
    • Addedbrowser_form_fill
    • Addedbrowser_form_validate
    • Addedbrowser_full_audit
    • Changedbrowser_full_regression2 fields changed
      • changedInput schema / properties / url / default
        Previous value: -"http://192.168.8.4:5173/app.html"New value: +"http://localhost:5173"
      • changedInput schema / properties / url / description
        Previous value: -"目标页面 URL(默认: http://192.168.8.4:5173/app.html)"New value: +"目标页面 URL(默认: http://localhost:5173)"
    • Addedbrowser_lighthouse_audit
    • Addedbrowser_matrix_test
    • Addedbrowser_memory_check
    • Changedbrowser_open1 field changed
      • addedInput schema / properties / browserType
        Added value: +{
        +  "default": "chromium",
        +  "description": "浏览器引擎类型,默认 chromium",
        +  "enum": [
        +    "chromium",
        +    "firefox",
        +    "webkit"
        +  ],
        +  "type": "string"
        +}
    • Addedbrowser_overlay_detect
    • Addedbrowser_overlay_dismiss
    • Addedbrowser_performance_trace
    • Addedbrowser_responsive_test
    • Addedbrowser_smart_fill
    • Addedbrowser_smoke_test
    • Addedbrowser_trace_chain
    • Changedbrowser_trace_start7 fields changed
      • removedInput schema / properties / headless
        Removed value: -{
        -  "description": "无浏览器时是否以 headless 模式打开,默认 false",
        -  "type": "boolean"
        -}
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "Trace 名称,不含扩展名",
        -  "type": "string"
        -}
      • removedInput schema / properties / screenshots
        Removed value: -{
        -  "description": "是否记录每步截图,默认 true",
        -  "type": "boolean"
        -}
      • removedInput schema / properties / snapshots
        Removed value: -{
        -  "description": "是否记录 DOM 快照,默认 true",
        -  "type": "boolean"
        -}
      • removedInput schema / properties / sources
        Removed value: -{
        -  "description": "是否记录源码,默认 false",
        -  "type": "boolean"
        -}
      • addedInput schema / required
        Added value: +[]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "message": {
        +      "type": "string"
        +    },
        +    "ok": {
        +      "type": "boolean"
        +    },
        +    "startedAt": {
        +      "type": "string"
        +    },
        +    "traceId": {
        +      "type": "string"
        +    }
        +  },
        +  "type": "object"
        +}
    • Changedbrowser_trace_stop3 fields changed
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "保存的 Trace 文件名,不含扩展名;默认使用 start 时的名称",
        -  "type": "string"
        -}
      • addedInput schema / required
        Added value: +[]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "logs": {
        +      "type": "array"
        +    },
        +    "message": {
        +      "type": "string"
        +    },
        +    "ok": {
        +      "type": "boolean"
        +    },
        +    "stoppedAt": {
        +      "type": "string"
        +    },
        +    "traceId": {
        +      "type": "string"
        +    }
        +  },
        +  "type": "object"
        +}
    • Addedbrowser_visual_check
    • Addedbrowser_visual_component
    • Addedbrowser_visual_snapshot
    • Addedchain_list_templates
    • Addedchain_score_report
    • Addedchain_spec_run
    • Addedcontract_baseline
    • Addedcontract_guard
    • Addedevidence_index
    • Addedevidence_pack
    • Removedfix_verify
    • Removedskill_mcp_sync
    • Addedstate_diff_assert
    • Addedtrace_correlate
    • Addedtrace_correlation_check
    • Addedvalidation_chain
    • Addedvalidation_compliance
    • Addedvalidation_data_integrity
    • Changedvalidation_matrix8 fields changed
      • addedInput schema / properties / a11yStandard
        Added value: +{
        +  "default": "wcag-aa",
        +  "description": "a11y 标准级别:wcag-a / wcag-aa / wcag-aaa",
        +  "type": "string"
        +}
      • addedInput schema / properties / dimensions
        Added value: +{
        +  "default": [
        +    "functional",
        +    "visual",
        +    "performance",
        +    "a11y"
        +  ],
        +  "description": "验证维度列表,可选:functional、visual、performance、a11y",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / outputFormat
        Added value: +{
        +  "default": "json",
        +  "description": "输出格式:json / markdown",
        +  "type": "string"
        +}
      • addedInput schema / properties / performanceThreshold
        Added value: +{
        +  "description": "性能阈值(LCP ms),默认 2500",
        +  "type": "number"
        +}
      • addedInput schema / properties / url
        Added value: +{
        +  "description": "目标页面 URL",
        +  "type": "string"
        +}
      • addedInput schema / properties / visualBaseline
        Added value: +{
        +  "description": "视觉基线截图路径(可选)",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "roles",
        -  "features"
        -]New value: +[
        +  "url",
        +  "roles",
        +  "features"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "artifacts": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "dimensions": {
        +      "properties": {
        +        "a11y": {
        +          "description": "无障碍维度评分",
        +          "type": "object"
        +        },
        +        "functional": {
        +          "description": "功能维度评分",
        +          "type": "object"
        +        },
        +        "performance": {
        +          "description": "性能维度评分",
        +          "type": "object"
        +        },
        +        "visual": {
        +          "description": "视觉维度评分",
        +          "type": "object"
        +        }
        +      },
        +      "type": "object"
        +    },
        +    "grade": {
        +      "description": "等级 A/B/C/D/F",
        +      "type": "string"
        +    },
        +    "name": {
        +      "type": "string"
        +    },
        +    "overallScore": {
        +      "description": "综合评分 0-100",
        +      "type": "number"
        +    },
        +    "recommendations": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "roleMatrix": {
        +      "description": "角色×功能矩阵结果",
        +      "type": "array"
        +    },
        +    "success": {
        +      "type": "boolean"
        +    },
        +    "timestamp": {
        +      "type": "string"
        +    },
        +    "url": {
        +      "type": "string"
        +    }
        +  },
        +  "type": "object"
        +}
    • Addedvalidation_permission
    • Changedvalidation_report1 field changed
      • addedInput schema / properties / strictSchema
        Added value: +{
        +  "default": true,
        +  "description": "是否严格遵循六段式输出结构",
        +  "type": "boolean"
        +}
    • Removedvalidation_suite_run
  7. 83 tool updatesv1.2.0
    • First observedai_debug_investigate
    • First observedauto_fix_pipeline
    • First observedbenchmark_run
    • First observedbrowser_a11y_check
    • First observedbrowser_artifacts
    • First observedbrowser_artifacts_clear
    • First observedbrowser_assert
    • First observedbrowser_batch
    • First observedbrowser_click
    • First observedbrowser_click_audit
    • First observedbrowser_console
    • First observedbrowser_cookies
    • First observedbrowser_debug_report
    • First observedbrowser_deep_interact
    • First observedbrowser_diagnose
    • First observedbrowser_dom
    • First observedbrowser_element_status
    • First observedbrowser_errors
    • First observedbrowser_errors_aggregate
    • First observedbrowser_errors_clear
    • First observedbrowser_eval
    • First observedbrowser_events
    • First observedbrowser_events_clear
    • First observedbrowser_find_element
    • First observedbrowser_find_page
    • First observedbrowser_flow
    • First observedbrowser_full_regression
    • First observedbrowser_har_export
    • First observedbrowser_highlight
    • First observedbrowser_hover
    • First observedbrowser_instrument
    • First observedbrowser_links
    • First observedbrowser_locator_suggest
    • First observedbrowser_locator_validate
    • First observedbrowser_navigate
    • First observedbrowser_network
    • First observedbrowser_network_detail
    • First observedbrowser_open
    • First observedbrowser_performance_check
    • First observedbrowser_press_key
    • First observedbrowser_quick_fix
    • First observedbrowser_screenshot
    • First observedbrowser_screenshot_element
    • First observedbrowser_scroll
    • First observedbrowser_select
    • First observedbrowser_session_close
    • First observedbrowser_session_create
    • First observedbrowser_session_switch
    • First observedbrowser_sessions
    • First observedbrowser_snapshot
    • First observedbrowser_step
    • First observedbrowser_storage
    • First observedbrowser_trace_start
    • First observedbrowser_trace_stop
    • First observedbrowser_traverse_menu
    • First observedbrowser_type
    • First observedbrowser_verify_fix
    • First observedbrowser_visual_baseline
    • First observedbrowser_visual_compare
    • First observedbrowser_visual_report
    • First observedbrowser_wait
    • First observedcss_var_check
    • First observeddebug_investigate
    • First observederror_fix_suggestion
    • First observederror_summary_md
    • First observedfix_verify
    • First observedmcp_health_check
    • First observedmcp_self_test
    • First observedproject_audit
    • First observedscreenshot_diff
    • First observedskill_mcp_sync
    • First observedskill_mcp_validate
    • First observedvalidation_check
    • First observedvalidation_decision
    • First observedvalidation_element
    • First observedvalidation_flow
    • First observedvalidation_matrix
    • First observedvalidation_quick_run
    • First observedvalidation_report
    • First observedvalidation_report_export
    • First observedvalidation_run
    • First observedvalidation_start
    • First observedvalidation_suite_run

TDQS

B3.3/5.0
Disambiguation3/5

Many tools have overlapping purposes, e.g., multiple validation and browser operation tools with similar names. The use of sub-modes (mode parameter) helps but still causes ambiguity, as agents must choose between `browser_flow`, `validation_flow`, `chain_spec_run`, etc.

Naming Consistency4/5

Most tools follow a `browser_xxx` or `validation_xxx` pattern, with some outliers like `contract`, `screenshot_diff`, and `api_probe`. Overall, naming is largely consistent with a predictable verb_noun structure, though a few tools deviate.

Tool Count1/5

With 142 tools, the server is extremely bloated. Many tools are merged versions with sub-modes, but the sheer number far exceeds what is reasonable for a single MCP server. This overwhelms agents and suggests poor modularization.

Completeness3/5

The tool set covers browser testing, visual regression, security scanning, link validation, and internal diagnostics. However, there are numerous redundant tools and gaps in clear separation of concerns. Some areas (e.g., skill management) seem out of scope for a general-purpose testing server.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/validpilot/ai-verify-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server