Token导航 LogoToken导航TokenDH.com
Safari MCP logo
浏览器工具HTTP官方级别未说明来源级核验

Safari MCP

MCP Server

一个提供Safari浏览器自动化和开发者工具访问的模型上下文协议(MCP)服务器,使LLM能够与Safari交互、访问控制台日志、监控网络活动并执行浏览器自动化任务。

工具数

0

提示词数

0

GitHub Stars

32

资源数

0
浏览器自动化开发工具TypeScriptClaude网络监控Claude DesktopClaude

安装说明

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

作者 / 组织

lxman

提供方

lxman

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

Safari MCP 服务器

一个模型上下文协议(MCP)服务器,为AI助手提供Safari浏览器自动化和开发者工具访问功能。该服务器使大型语言模型(LLMs)能够与Safari进行交互,访问控制台日志,监控网络活动,并执行浏览器自动化任务。

特性/功能

  • 🚀 表情符号“🚀”通常表示火箭、快速前进或加速,也可以用来表达兴奋、期待或对某事的强烈兴趣。在没有具体上下文的情况下,可以简单地翻译为“火箭”或“加速前进”,但具体含义可能因语境而异。 Safari 浏览器自动化启动、控制和管理Safari会话
  • 🔍 看起来像是一个放大镜的符号,常用于表示搜索或查看细节,中文里可以简单地翻译为“🔍(放大镜)”。不过,具体翻译时,根据上下文,也可以意译为“🔍(查找/查看)”。 开发者工具访问权限获取控制台日志、网络日志和性能指标
  • 📸(相机图标,无具体文字含义,通常用于表示拍照或照片) 屏幕截图截取页面截图以进行视觉分析
  • 🕵️(便衣侦探) 元素检查检查DOM元素及其属性
  • ⚡ 闪电符号(常用于表示速度、能量或警告) JavaScript 执行在浏览器上下文中运行自定义JavaScript
  • 📊 表格、数据图表 性能监控访问时间指标和性能数据
  • 🔧 修理工具或螺丝刀的符号,常用于表示需要维修或调整的物品或情境。 多个会话管理多个Safari自动化会话

先决条件

系统要求

  • 仅限 macOS (Safari 和 SafariDriver 仅适用于 macOS)
  • Node.js 18及以上版本
  • Safari 10及以上版本 (内置WebDriver支持)

Safari 设置

在使用此MCP服务器之前,您需要启用Safari的自动化功能:

  1. 启用开发者菜单

- 打开Safari → 首选项 → 高级 - 勾选“在菜单栏中显示开发菜单”

  1. 启用远程自动化

- 在Safari的菜单栏中:开发 → 允许远程自动化

  1. 授权SafariDriver
   sudo safaridriver --enable

当提示时,请输入您的管理员密码。

安装

  1. 克隆或导航到项目目录
   cd C:\Users\\RiderProjects\AIPacketAnalyzer\safari-mcp-server
  1. 安装依赖项:
   npm install
  1. 构建项目
   npm run build

使用方法

运行服务器

npm start

服务器将启动并在标准输入/输出(stdio)上监听MCP协议消息。

开发模式

npm run dev

可用工具

会话管理

  • safari_start_session - 启动一个新的Safari自动化会话
  • safari_close_session - 关闭一个Safari会话
  • safari_list_sessions - 列出所有活动会话

导航与页面信息

  • safari_navigate - 导航到一个URL
  • safari_get_page_info - 获取当前页面的URL和标题

开发者工具访问

  • safari_get_console_logs - 获取浏览器控制台日志
  • safari_get_network_logs - 获取网络活动日志
  • safari_get_performance_metrics - 获取页面性能指标

浏览器交互

  • safari_execute_script - 在浏览器中执行JavaScript
  • safari_take_screenshot - 捕获页面截图
  • safari_inspect_element - 检查DOM元素

与Claude Desktop的示例用法

将此配置添加到您的Claude Desktop配置文件中:

macOS(发音为 /ˈmæk θaʊ s/,中文常简称为“苹果系统”或直接称为“macOS”,是苹果公司为其Mac系列电脑开发的操作系统)~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "safari-devtools": {
      "command": "node",
      "args": ["C:/Users//RiderProjects/AIPacketAnalyzer/safari-mcp-server/build/index.js"]
    }
  }
}

示例命令

一旦连接到像Claude Desktop这样的MCP客户端,您就可以使用以下命令:

Start a Safari session with ID "main" and navigate to Google:
- Start session: safari_start_session with sessionId "main"
- Navigate: safari_navigate to "https://www.google.com"
- Take screenshot: safari_take_screenshot
- Get console logs: safari_get_console_logs

配置选项

在开始会话时,您可以指定选项:

{
  "sessionId": "my-session",
  "options": {
    "enableInspection": true,     // Enable Web Inspector
    "enableProfiling": true,      // Enable timeline profiling
    "usesTechnologyPreview": false // Use Safari Technology Preview
  }
}

局限性

  1. 单次会话限制Safari 一次只允许一个 WebDriver 会话
  2. 仅限 macOS此服务器仅在macOS系统上运行
  3. 专为Safari设计与Chrome DevTools协议不同,Safari的调试API访问有限
  4. 网络日志网络日志记录依赖于Safari的性能日志,可能存在局限性

发展

项目结构

safari-mcp-server/
├── src/
│   ├── index.ts                 # Main entry point
│   ├── safari-mcp-server.ts    # MCP server implementation
│   ├── safari-driver.ts        # Safari WebDriver manager
│   └── types.ts                # TypeScript type definitions
├── build/                      # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md

建筑

npm run build

留意变化

npm run watch

清理构建

npm run clean

故障排除

常见问题

  1. “会话未找到”错误

- 在使用其他命令之前,请确保已启动会话 - 检查Safari是否未崩溃或意外关闭

  1. “远程自动化未启用”

- 验证Safari的开发者菜单是否已启用 - 检查“开发”菜单中是否已启用“允许远程自动化”

  1. 权限错误:

- 跑 sudo safaridriver --enable 并输入您的密码 - 确保终端具有必要的权限

  1. Safari无响应:

- 一次只能有一个Safari自动化会话处于活动状态 - 在开始新的自动化会话之前,请关闭所有现有的自动化会话

调试模式

要查看详细的日志记录,您可以修改服务器以包含更详细的输出,或者在自动化运行时检查Safari的Web Inspector。

贡献

  1. 克隆(或“分叉”)该仓库
  2. 创建一个特性分支
  3. 做出你的更改
  4. 如适用,请添加测试
  5. 提交拉取请求

许可证

MIT 许可证 - 详情请参阅 LICENSE 文件。

相关项目

目录标签

目录标签

浏览器自动化开发工具TypeScriptClaude网络监控本地部署开发者工具SafariJavaScript执行

支持客户端

Claude DesktopClaude

接入字段

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

HTTP

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

session

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

HTTPsessionlocal-only

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP