Safari MCP

MCP server for Safari on macOS: an agent drives your real browser with your logins through 98 tools

  • 242 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • The agent acts with your Safari sessions: mail, GitHub, paid services and banks are as reachable for it as for you
  • The enabled Allow JavaScript from Apple Events and the extension open local ports for browser control
All reasons and checks

achiya-automation/safari-mcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/safari-mcp

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent acts with your Safari sessions: mail, GitHub, paid services and banks are as reachable for it as for you
  • The enabled Allow JavaScript from Apple Events and the extension open local ports for browser control

This is third-party code. Review the repository files before installing.

What it does

Safari MCP puts an agent into the Safari where you are already signed in to email, GitHub and other services. Chrome, Puppeteer and Playwright are not needed: the server talks to the browser through AppleScript and an optional Safari extension and works in the background without taking the window. By the author's claim CPU load is about 60% lower than Chrome DevTools MCP on Apple Silicon. There are 98 tools: navigation, clicks, forms, screenshots, network, storage, accessibility and dialog handling. By default the server acts only in tabs it opened itself and refuses yours: a click in a tab with your inbox ends in a refusal until you enable `SAFARI_MCP_ALLOW_USER_TABS` and explicitly name the tab through `safari_switch_tab`. Closing a tab (`safari_close_tab`) is refused even for an adopted tab. The `safari_doctor` tool checks the macOS permission chain and suggests fixes.

Who it is for. Mac developers who need an agent inside their own Safari with saved logins, without launching a second browser and extra heat.

Good fit when

  • The agent fills in a form on a service where you are already signed in and needs no repeat authorization
  • You need a page screenshot and the accessibility structure to check an interface
  • Several agents work with the browser at once and each keeps its own marked tab
  • A data-collection script for a site that needs your session is handed to an agent in the background

Not a fit when

  • You are not on macOS: the server uses Safari and AppleScript and has no versions for other systems
  • The agent must not touch banking or work mail: it acts with your sessions
  • You need an isolated debugging session: Apple has its own `safaridriver --mcp` mode for that

Example request

Open the documentation page in Safari, take a screenshot of the authentication section and summarize the setup steps

MCP

Transport
stdio
Authentication
not required

Environment variables

SAFARI_MCP_ALLOW_USER_TABS
Allows adopting a user tab through safari_switch_tab; off by default

Limitations

macOS only. You need Node.js 20 or newer and the Safari, Settings, Developer, Allow JavaScript from Apple Events item turned on. Screenshots require screen recording permission and the Safari extension talks to local ports 9224, 9228, 9232 and 9236. By default the server works only in tabs it opened itself because early versions clicked into users' tabs and closed them. The `SAFARI_MCP_ALLOW_USER_TABS` and `SAFARI_MCP_RAISE_ON_NAVIGATE` variables loosen these guards. Apple has its own `safaridriver --mcp` for an isolated session, while Safari MCP works with your real browser.

How to disable. Remove the safari block from the client config (`claude mcp remove safari`), turn off the Safari MCP Bridge extension in Safari settings and switch off Allow JavaScript from Apple Events if no longer needed.

FAQ

How do I connect Safari MCP to Claude Code?

Run `claude mcp add safari -- npx safari-mcp`. Cursor and VS Code have one-click install buttons and the Homebrew variant is `brew install achiya-automation/tap/safari-mcp`.

What is required on the Mac?

Node.js 20 or newer and the Allow JavaScript from Apple Events permission in the Developer section of Safari settings. Screenshots need screen recording permission and `safari_doctor` checks the other links.

Why does the server refuse to click in my tab?

That is the default guard: the server works only in tabs it opened itself. To allow your tab enable `SAFARI_MCP_ALLOW_USER_TABS` and name it explicitly through `safari_switch_tab`.

How does it differ from safaridriver --mcp?

Apple's server opens an isolated debugging session while Safari MCP drives the real browser with your cookies and logins, in the background and with 98 tools.

Can several agents run at once?

Yes: each session keeps its own marked tab, and if the tab cannot be found the tools refuse instead of falling back to your current one.

Discussion

No questions or reviews yet.

Official

An MCP server and Chrome extension that let the agent drive your already open browser with your logged-in sessions, all locally

MCP serverBroad access7.3KRepository stars

An MCP server that drives your already open Chrome and stops to ask you about a 2FA code, a CAPTCHA, or a choice only you can make

MCP serverBroad access62Repository stars

A Chrome extension with an MCP server: the agent drives your everyday browser with its sessions, tabs, bookmarks and history

MCP serverBroad access12.5KRepository stars

An MCP wrapper over the browser-use engine: a single tool drives a browser from a natural-language task.

MCP serverBroad access64Repository stars
Needs a VPN

An MCP server that lets an agent drive a real browser: open pages, click and fill forms through Playwright

MCP serverExtended access848Repository stars
Official

The Chrome DevTools team's official MCP server: the agent drives a live Chrome, reads network and console, and records performance traces

MCP serverExtended access55.2KRepository stars

README in short

The text promises a browser for a coding agent: your real Safari with logins, with no heat and no headless mode. Next come a comparison with Playwright and Chrome DevTools MCP, a quick start for a dozen clients, the list of 98 tools, tab protection and a two-engine architecture.

README badge

Report a problem