Back to Browse

Cupertino MCP Server

by Mgcrea
Developer ToolsLow Risk10.0MCP RegistryLocal
Free

Server data from the Official MCP Registry

Read and act on Safari — history, tabs and reading list, writes off by default

About

Read and act on Safari — history, tabs and reading list, writes off by default

Security Report

10.0
Low Risk10.0Low Risk

Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. Trust signals: trusted author (10/10 approved); 3 highly-trusted packages. 1 finding(s) downgraded by scanner intelligence.

19 files analyzed · 1 issue found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

file_system

Check that this permission is expected for this type of plugin.

database

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Register the mutating tools. Off by default, and the gate decides whether the write tools exist at all rather than merely refusing — an agent with writes off cannot see them.Optional

Environment variable: APPLE_SAFARI_ALLOW_WRITES

Return one-time codes: a one-time-code field in apple_safari_page_elements, and apple_safari_find_codes for a code a page shows as text. Its own gate rather than allowWrites, because it is a read. Credential fields stay redacted whatever this says.Optional

Environment variable: APPLE_SAFARI_ALLOW_CODES

Register apple_safari_network_record, _list and _get, which record what a page you allowed the extension on fetches and read the responses. Its own gate rather than allowWrites, because it is a read; off means the tools do not exist. Headers named like credentials are masked, bodies are not. Reloading a tab to record and saving a body to a file still need APPLE_SAFARI_ALLOW_WRITES.Optional

Environment variable: APPLE_SAFARI_ALLOW_NETWORK

Where apple_safari_network_get's saveAs writes a file. Defaults to ~/Downloads. A name is kept to its basename and an existing file is never replaced unless asked.Optional

Environment variable: APPLE_SAFARI_DOWNLOAD_DIR

Characters of a body the server asks the page for per command when it reads a large body. Defaults to 262144, which was measured to work; how far above that Safari's native-message channel goes is unmeasured.Optional

Environment variable: APPLE_SAFARI_NETWORK_CHUNK_CHARS

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-mgcrea-mcp-apple-safari": {
      "env": {
        "APPLE_SAFARI_ALLOW_CODES": "your-apple-safari-allow-codes-here",
        "APPLE_SAFARI_ALLOW_WRITES": "your-apple-safari-allow-writes-here",
        "APPLE_SAFARI_DOWNLOAD_DIR": "your-apple-safari-download-dir-here",
        "APPLE_SAFARI_ALLOW_NETWORK": "your-apple-safari-allow-network-here",
        "APPLE_SAFARI_NETWORK_CHUNK_CHARS": "your-apple-safari-network-chunk-chars-here"
      },
      "args": [
        "-y",
        "@mgcrea/mcp-apple-safari"
      ],
      "command": "npx"
    }
  }
}

Reviews

No reviews yet

Be the first to review this server!