MCP Catalogs
Homesafari-mcp screenshot

safari-mcp

by achiya-automation·63·Score 49

Native Safari browser automation for AI agents with 80 tools via AppleScript, zero overhead, and lower CPU usage than Chrome DevTools.

browser-automationweb-scrapingdeveloper-tools
10
Forks
7
Open issues
this month
Last commit
2d ago
Indexed

Overview

Safari MCP is a macOS-exclusive browser automation server that provides AI agents with direct control over the Safari browser via AppleScript. It offers 80 tools for navigation, interaction, form filling, screenshots, and more, while preserving all user logins and cookies. The server operates in the background without opening visible browser windows and uses significantly less CPU (~60% less on Apple Silicon) compared to Chrome-based solutions. This makes it ideal for AI systems that need to browse the web without the overhead of running a full browser instance.

Try asking AI

After installing, here are 6 things you can ask your AI assistant:

you:AI agents automating web tasks while maintaining logged-in sessions
you:Web scraping with lower resource usage and better anti-bot detection resistance
you:Automated testing of web applications with actual browser state
you:What operating systems are supported?
you:Does it preserve browser sessions and logins?
you:How does it compare to browser automation with Puppeteer/Playwright?

When to choose this

Choose Safari MCP when you need to automate browser interactions on macOS while maintaining logged-in sessions and minimizing CPU usage.

When NOT to choose this

Don't choose Safari MCP if you need cross-platform support (Windows/Linux) or require Chrome DevTools Protocol-specific functionality.

Tools this server exposes

12 tools extracted from the README
  • safari_navigate

    Navigate to URL (auto HTTPS, wait for load)

  • safari_click

    Click by CSS selector, visible text, or coordinates

  • safari_fill

    Fill input (React/Vue/Angular compatible)

  • safari_screenshot

    Screenshot as PNG (viewport or full page)

  • safari_accessibility_snapshot

    Full a11y tree: roles, ARIA, focusable elements

  • safari_wait_for

    Wait for element, text, or URL change

  • safari_evaluate

    Execute arbitrary JavaScript, return result

  • safari_get_element

    Element details (tag, rect, attrs, visibility)

  • safari_upload_file

    Upload file via JS DataTransfer (no file dialog!)

  • safari_mock_route

    Mock network responses (intercept fetch/XHR)

  • safari_extract_tables

    Tables as structured JSON

  • safari_list_tabs

    List all tabs (index, title, URL)

Comparable tools

chrome-devtools-mcppuppeteerplaywrightbrowserless-mcp

Installation

Installation

Quick install: npx safari-mcp

Global install: npm install -g safari-mcp

Configure Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "safari": {
      "command": "npx",
      "args": ["safari-mcp"]
    }
  }
}

Restart Claude Desktop after saving.

FAQ

What operating systems are supported?
Safari MCP is macOS-only and requires Safari browser with developer features enabled.
Does it preserve browser sessions and logins?
Yes, it uses your existing Safari browser with all logged-in sessions, cookies, and data intact.
How does it compare to browser automation with Puppeteer/Playwright?
Safari MCP uses native AppleScript with ~5ms command latency, uses ~60% less CPU than Chrome-based solutions, and doesn't require a separate browser instance.

On Hacker News

Recent discussion from the developer community.

Compare safari-mcp with

GitHub →

Last updated · Auto-generated from public README + GitHub signals.