Safari Technology Preview 247:介紹 Safari MCP 伺服器

Safari Technology Preview 247:介紹 Safari MCP 伺服器

Apple 在 Safari Technology Preview 247 中釋出 Safari MCP 伺服器,讓 AI 代理程式能直接與 Safari 瀏覽器視窗互動。此整合使代理程式能自主除錯 Web 應用程式,直接取得即時瀏覽器資料,減少開發者必須手動將瀏覽器狀態傳遞給大型語言模型(LLM)的需求。

自主式 Web 除錯與測試

Safari MCP 伺服器消除了「除錯舞步」——在瀏覽器、開發者工具與程式碼編輯器之間不斷切換的重複流程——因為它讓 AI 代理程式直接看到程式碼在 Safari 中的渲染情形。這使得代理程式能自主執行多項高價值任務:

  • 跨瀏覽器相容性: 代理程式可以在 Safari 中檢查計算後的樣式與版面配置,找出並修正瀏覽器特有的錯誤,無需開發者手動切換視窗。
  • 效能分析: 透過評估頁面上的 JavaScript,代理程式能呈現導覽時間與資源載入時間,協助定位效能瓶頸。
  • 無障礙稽核: 代理程式可自動掃描缺少的標籤、錯誤的 ARIA 屬性以及不佳的色彩對比度。
  • 狀態驗證: 代理程式能使用選擇器查詢元素、檢查表單狀態,並驗證複雜的使用者流程(例如結帳流程),確保應用程式如預期運作。

可用的 MCP 工具

Safari MCP 伺服器提供完整的工具集合,任何相容 MCP 的客戶端都能使用這些工具來控制瀏覽器與擷取資料:

工具 說明
browser_console_messages 回傳目前或指定分頁的緩衝式主控台日誌
browser_dialogs 列出並回應瀏覽器對話框(接受、關閉或輸入文字)
evaluate_javascript 在頁面內執行 JavaScript 程式碼並回傳結果
get_network_request 取得單一已記錄網路請求的完整細節(標頭、主體、時間)
get_page_content 以 Markdown、HTML 或 JSON 等格式擷取頁面文字
list_network_requests 列出網路請求摘要(URL、方法、狀態、時間)
page_interactions 執行 DOM 互動(點擊、輸入、捲動、懸停、按鍵)
screenshot 捕獲目前頁面的 PNG 截圖
set_viewport_size 以 CSS 像素設定瀏覽器視口大小
navigate_to_url 導向指定 URL 並回傳載入的頁面內容

其他可用工具包括 close_tabcreate_tablist_tabspage_infoset_emulated_mediaswitch_tabwait_for_navigation

安裝與設定

要使用 Safari MCP 伺服器,使用者必須安裝 Safari Technology Preview 並啟用以下設定:

  1. Advanced(進階): 開啟「Show features for web developers」
  2. Developer(開發者): 開啟「Remote automation and external agents」

設定範例

Claude,使用以下終端機指令: claude mcp add safari-mcp-stp -- "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --mcp

Codex,使用: codex mcp add safari-mcp-stp -- "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --mcp

對其他代理程式,將以下內容加入 mcp.jsonconfig.json 檔案:

{
  "safari-mcp-stp": {
    "command": "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver",
    "args": ["--mcp"]
  }
}

隱私與安全

Safari MCP 伺服器在使用者的本機上執行,且不會自行發起網路請求。它無法存取個人 Safari 資料,例如 AutoFill 或一般的瀏覽歷史。所有擷取的資料(截圖、日誌、頁面內容)皆直接傳送給執行中的代理程式;Apple 不會收到這些資料。建議使用者僅使用可信任的代理程式,因為代理程式會取得瀏覽器完整的狀態存取權限。

社群觀點與替代方案

雖然 Safari MCP 伺服器為 Apple 生態系開發者提供了原生的解決方案,社群仍指出了現有的替代方案與瀏覽器自動化的更廣泛趨勢:

  • 跨瀏覽器工具鏈: 有些開發者已經在其他瀏覽器上使用類似的 MCP 伺服器,認為加入 Safari 後即可完成與 Chrome、Firefox MCP 伺服器的相容性測試套件。
  • 既有 Driver: 有使用者指出 safaridriver 已存在多年,作為 W3C WebDriver 的實作,只是 MCP 實作簡化了介面,讓 LLM 更易使用。
  • 替代框架: 有些開發者偏好使用 Playwright-CLI 或直接與 Chrome DevTools Protocol(CDP)互動,以獲得更快的執行速度。

Sources