什么是 Model Context Protocol (MCP)
MCP(Model Context Protocol)是一种桥接大型语言模型(LLM)与应用上下文的协议。它把应用状态(例如浏览器的 DOM、网络请求、截图、日志)序列化成模型可理解的上下文,并将模型输出的动作映射为受控的操作。
核心元素
- Context — 当前应用的状态:DOM、网络、控制台信息、截图、用户会话等。
- Model — 运行的 LLM 或模型代理,基于上下文生成建议或动作。
- Actions — 模型建议的动作(受限的命令集合,例如查询 DOM、截屏、执行脚本)。
- Server — MCP Server 负责收集上下文、调用模型、校验动作并将其下发到目标(如 DevTools)。
典型工作流
- MCP Server 收集浏览器上下文(例如当前页面 DOM、控制台、网络记录与截图)。
- 上下文被发送到模型,模型返回一组建议动作或查询请求。
- Server 校验动作是否在白名单内并执行(通过 DevTools 协议)。
- 执行结果与新的上下文会再次回传,形成闭环以便连续交互。
示例:模型发出一个简单查询
{
"action": "runtime.evaluate",
"params": { "expression": "document.querySelectorAll('img').length" }
}
部署与本地调试(快速入门)
通常你可以按以下步骤在本地体验 MCP 与 DevTools 的结合:
- 克隆官方或示例实现:
git clone https://github.com/ChromeDevTools/chrome-devtools-mcp - 进入示例目录并安装依赖:
npm install - 启动示例 server:
node examples/simple-server/server.js --port 3000 - 在 Chrome 中打开 DevTools 并连接到示例 Server(或使用示例 UI)。
安全建议
- 使用动作白名单限制模型能执行的 DevTools 命令。
- 在执行敏感操作前加入人工确认或多因素审批流程。
- 记录完整的审计日志以便回溯模型行为。
扩展用例
- 自动化回归检测与智能化差异报告。
- 用自然语言快速生成交互式测试脚本。
- AI 驱动的可访问性检查与修复建议。