Token导航 LogoToken导航TokenDH.com
Safari Devtools MCP logo
开发工具未说明官方级别未说明来源级核验

Safari Devtools MCP

MCP Server

为Safari浏览器提供AI驱动的调试、自动化和测试功能的开发工具,通过Model-Context-Protocol服务器实现浏览器控制与检查。

工具数

45

提示词数

0

GitHub Stars

2

资源数

0
TypeScriptClaude自动化测试Claude DesktopClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

HayoDev

提供方

HayoDev

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Safari工具MCP

](https://npmjs.org/package/safari-devtools-mcp) ](https://npmjs.org/package/safari-devtools-mcp) ![license](https://github.com/HayoDev/safari-devtools-mcp/blob/main/LICENSE) ](https://npmjs.org/package/safari-devtools-mcp)

safari-devtools-mcp 允许您的编码代理(如Claude、Cursor、Copilot或Gemini)控制和检查macOS上的实时Safari浏览器。它充当模型上下文协议(MCP)服务器,让您的AI编码助手访问Safari DevTools进行调试、自动化和测试。

Chrome开发人员通过以下方式获得强大的AI调试 chrome开发工具mcp 谷歌。Safari开发人员应该有类似的东西——这个项目为Safari带来了同样的体验,具有匹配的工具名称和参数模式,这样你就可以在浏览器之间以最小的摩擦进行交换。

更新日志 | 贡献

注: 此服务器向MCP客户端公开浏览器内容(页面数据、控制台日志、网络流量)。避免在会话处于活动状态时浏览敏感网站或输入凭据。

为什么选择safari devtools mcp?

此项目使用 WebDriver 对于仅靠脚本无法提供的功能:

  • 网络请求/响应正文捕获 --拦截带有完整标头、有效载荷和计时的fetch和XHR调用
  • 通过可访问性树创建DOM快照 --在页面重新呈现后仍然存在的稳定元素UID,而不是脆弱的CSS选择器
  • CSS计算样式检查 --从任何元素读取任何计算属性
  • Cookie和存储管理 --读取、写入和删除Cookie、本地存储和会话存储
  • 元素级截图 --捕捉单个元素,而不仅仅是整个视口
  • 会话自动恢复 --检测死亡的SafariDriver会话并透明地重新连接

主要特点

  • 浏览器调试:捕获控制台日志、检查网络请求和评估JavaScript——使用堆栈跟踪和完整的请求/响应详细信息。
  • 可靠的自动化:使用具有稳定UID的辅助功能树快照,单击、键入、填写表单、拖放和按下键盘快捷键。
  • 原生macOS集成:通过AppleScript进行选项卡管理,用于在窗口中列出、切换和控制Safari选项卡

需求

  • macOS (Safari和SafariDriver是苹果独有的)
  • Node.js 18+ (22+推荐)
  • 游猎 启用远程自动化

Safari设置

  1. 打开Safari浏览器>设置>高级>检查 “为web开发人员显示功能”
  2. 开发菜单>检查 “允许远程自动化”
  3. 授权SafariDriver:
   sudo safaridriver --enable

入门

标准MCP配置:

{
  "mcpServers": {
    "safari-devtools": {
      "command": "npx",
      "args": ["-y", "safari-devtools-mcp@latest"]
    }
  }
}

Claude Code

claude mcp add safari-devtools -- npx -y safari-devtools-mcp@latest

或添加到您的项目 .mcp.json 使用上面的标准配置。

Claude Desktop

将标准配置添加到 ~/Library/Application Support/Claude/claude_desktop_config.json.

Cursor

将标准配置添加到光标MCP设置中。

VS Code

将标准配置添加到 .vscode/mcp.json.

Copilot CLI

copilot mcp add safari-devtools -- npx -y safari-devtools-mcp@latest

Gemini CLI

gemini mcp add safari-devtools -- npx -y safari-devtools-mcp@latest

或者将标准配置添加到您的 ~/.gemini/settings.json.

Gemini Code Assist

将标准配置添加到您的 .gemini/settings.json 在项目根中。

JetBrains AI Assistant & Junie

将标准配置添加到您的 .junie/mcp.json 在项目根中。

Raycast

在Raycast中打开“安装MCP服务器”并填写:

  • 命令: npx
  • 参数: -y safari-devtools-mcp@latest

或者在打开命令之前复制上面的标准配置JSON——Raycast将自动填充表单。

Visual Studio

将标准配置添加到您的 .vs/mcp.json 在溶液根中。

Warp

将标准配置添加到Warp MCP设置文件中 ~/.warp/mcp.json.

From source

git clone https://github.com/HayoDev/safari-devtools-mcp.git
cd safari-devtools-mcp
npm install && npm run build

然后将您的MCP客户端指向构建的入口点:

{
  "mcpServers": {
    "safari-devtools": {
      "command": "node",
      "args": [
        "/path/to/safari-devtools-mcp/build/src/bin/safari-devtools-mcp.js"
      ]
    }
  }
}

您的第一个提示

导航至https://example.com,拍摄快照,并列出任何控制台错误。

苗条模式

使用 --slim 通过缩短工具描述来减少令牌使用。在处理上下文受限的模型或长时间对话时很有用:

{
  "mcpServers": {
    "safari-devtools": {
      "command": "npx",
      "args": ["-y", "safari-devtools-mcp@latest", "--slim"]
    }
  }
}

提示(技能)

服务器将引导调试工作流作为MCP提示公开。支持提示的客户端(例如Claude Desktop、Claude Code)可以按名称调用它们:

提示描述
safari-devtools入门指南——工具概述、推荐的工作流程以及Safari特有的注意事项
a11y-debugging可访问性审计——11年树木检查、斧头芯注入、WCAG检查
safari-specific-debugging调试WebKit怪癖——CSS前缀、JS功能差距、ITP/CORS问题
performance-debugging性能分析——导航计时、核心Web生命周期、资源瀑布

工具(45)

调试

工具说明
list_console_messages按级别(日志、警告、错误)筛选列出控制台消息
get_console_message获取包括堆栈跟踪和参数的详细消息
clear_console清除所有捕获的控制台消息
list_network_requests监控网络请求——获取、XHR和资源负载
get_network_request获取包含标头和正文的完整请求/响应详细信息
clear_network清除所有捕获的网络请求
evaluate_script在浏览器上下文中执行JavaScript并返回结果
take_screenshot捕获页面或特定元素的PNG屏幕截图
take_snapshotDOM的可访问性树快照,具有用于元素定位的稳定UID

页面内容

工具说明
get_page_content获取页面标题、URL和可见文本内容
get_html_source获取页面的完整HTML源代码
extract_links提取所有链接及其文本、href和rel属性
extract_meta提取元标签(og:、twitter:、描述等)

导航

工具说明
list_pages列出窗口中所有打开的Safari选项卡
select_page切换到特定选项卡
new_page打开新选项卡并导航到URL
close_page关闭选项卡
navigate_page导航到URL,返回、前进或重新加载
wait_for等待特定文本出现在页面上
resize_page调整浏览器窗口大小
handle_dialog接受或关闭浏览器对话框(警告、确认、提示)

滚动

工具说明
scroll按给定的量在任何方向滚动页面
scroll_to_element按UID滚动元素进入视图

CSS检查

工具说明
get_computed_style通过UID获取任何元素的计算CSS样式

Cookie和存储

工具说明
get_cookies获取浏览器Cookie,可选择按名称或域进行过滤
set_cookie设置一个具有名称、值和可选属性的cookie
delete_cookie按名称删除cookie,或删除所有cookie
get_storage从本地存储或会话存储读取
set_storage将键值对写入localStorage或sessionStorage
delete_storage从localStorage/sessionStorage中删除密钥或清除所有条目

输入自动化

工具说明
click从快照中按UID单击元素
click_at单击特定的x/y坐标
right_click在元素上单击鼠标右键(上下文菜单)
select_option按值或标签从下拉列表中选择一个选项
hover将鼠标悬停在元素上
fill在输入框中键入或从下拉列表中选择
fill_form一次填写多个表单字段
type_text在当前关注的元素中键入文本
drag在元素或坐标之间拖放
press_key按下按键或组合(例如。, Meta+A, Enter)
upload_file通过文件输入上传文件

iOS Safari验证

工具说明
inspect_viewport_meta解析视口元标记,并根据iOS最佳实践(宽度、缩放、视口适配)进行验证
get_safe_area_insets读取CSS安全区域插入值,并检查页面是否正确处理凹口设备
check_ios_web_app_readiness审核页面是否已准备好添加到主屏幕/PWA(苹果触摸图标、清单、启动画面、状态栏)
check_webkit_compatibility通过CSS.supports()对照Safari实时会话检查页面CSS

建筑

MCP Client (Claude, Cursor, etc.)
    | stdio (MCP protocol)
    v
Safari DevTools MCP Server
    |
    v
+-------------------------------+
|  SafariDriver                 |
|  +-- Selenium WebDriver       | <-- Browser automation
|  +-- JS Injection             | <-- Console/Network capture
|  +-- AppleScript (osascript)  | <-- Native tab management
+-------------------------------+
    |
    v
Safari Browser

已知限制

  • 单次会话:Safari一次只允许一个WebDriver会话。不支持运行多个实例。
  • 仅限macOS:Safari和SafariDriver是苹果独有的——此服务器在Linux或Windows上无法运行。
  • 无无头模式:Safari不支持无头操作。需要一个可见的浏览器窗口。
  • 控制台预喷射间隙:在注入捕获脚本之前记录的控制台消息不会被捕获。
  • 网络预注入间隙:注入前发出的网络请求通过Performance API进行回填,但细节有限(时间和大小,但没有标题或状态代码)。
  • 仅PNG:Safari WebDriver仅支持PNG屏幕截图,不支持JPEG或WebP。无法进行完整页面捕获。
  • AppleScript权限:选项卡管理功能需要macOS辅助功能权限 osascript.

学分

  • chrome开发工具mcp 谷歌/ChromeDevTools——该项目所反映的灵感和界面标准。工具名称和模式有意兼容,因此您可以在Chrome和Safari之间无缝切换。
  • safari mcp服务器 --我们在开发过程中研究的Safari MCP集成的现有技术。

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude自动化测试浏览器调试本地部署网络请求捕获DOM检查Safari开发工具

支持客户端

Claude DesktopClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

45

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP