macOS-MCP is an MCP server for automating macOS through accessibility-based UI control, app/window management, keyboard and mouse actions, shell/AppleScript execution, and webpage scraping. It supports stdio, SSE, and streamable HTTP transports for use with MCP clients like Claude Desktop or Gemini CLI.
From the registry: MCP server for macOS desktop automation via the Accessibility API.
$ pip install uvhttps://astral.sh/uv/Please install the `macos-mcp` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install Python 3.11+** — Python 3.11 or later is required.
- **Install uv package manager** — Install the uv package manager, which is used to run the server via uvx. Run: `pip install uv` (https://astral.sh/uv/)
- **Use macOS 12+** — This server only supports macOS 12 or later.
- **Grant Accessibility permissions** — Grant Accessibility permissions in System Settings to your terminal application, Python, and UV so the server can interact with macOS UI elements.
Optional prerequisites:
- Grant Screen Recording permissions — Grant Screen Recording permissions in System Settings to your terminal application, Python, and UV if you want screenshot capture via the Snapshot tool.
Canonical MCP server config (stdio transport):
- command: `uvx`
- args: ["macos-mcp"]
- optional environment variables:
- `ANONYMIZED_TELEMETRY`: Set to false to disable anonymous usage telemetry. (example: `false`)
- `MACOS_MCP_AUTH_KEY`: Bearer token for HTTP requests; alternative to --auth-key. Not needed for default stdio usage. (example: `<your-auth-token>`)
- `MACOS_MCP_IP_ALLOWLIST`: Comma-separated list of allowed client IPs or CIDR ranges; alternative to --ip-allowlist. Only relevant for network transports. (example: `<your-cidr-or-ip-list>`)
- `MACOS_MCP_SSL_CERTFILE`: Path to TLS certificate file (.pem). Must be used together with MACOS_MCP_SSL_KEYFILE. Only relevant for TLS-enabled network transports. (example: `<path-to-cert.pem>`)
- `MACOS_MCP_SSL_KEYFILE`: Path to TLS private key file (.pem). Must be used together with MACOS_MCP_SSL_CERTFILE. Only relevant for TLS-enabled network transports. (example: `<path-to-key.pem>`)
Note: Default MCP client configuration uses stdio via `uvx macos-mcp`. The server also supports SSE and streamable HTTP transports via CLI flags, including optional auth, IP allowlisting, TLS, and OAuth for network deployments, but those are not the simplest default install path.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.MACOS_MCP_ROOTrequiredPath to the macOS-MCP checkout when using a manually copied Pi extension.MCP server for Firecrawl web scraping, structured data extraction and web search integration.