mcp-server-macos
Provides tools that let an AI assistant use the Mac, including retrieving macOS system information and sending native notifications with optional title, subtitle, and sound.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-macos What macOS version and model is this Mac?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-server-macos
An MCP server that lets an AI assistant use your Mac, built on pymacos.
Early days. The server works, with two tools to start with. More of pymacos is on its way.
Tools
Tool | What it does | Changes something? |
| The macOS version and build, the Mac's model, processor, memory and name, and how long it has been running. | No |
| Shows a notification, with an optional title, subtitle and sound. | Shows a notification |
Every tool tells the client whether it only reads or changes something (the MCP tool annotations), so the client can ask you before a call that does.
Related MCP server: mac-mcp-server
Requirements
macOS. The server starts on other systems, but every tool answers that it needs macOS.
Python 3.10 or newer.
Installation
The server is launched by your MCP client, which talks to it over stdin and stdout. With
uv, there's nothing to install first: uvx mcp-server-macos downloads
and runs it.
Claude Code
claude mcp add macos -- uvx mcp-server-macosClaude Desktop, and other clients configured with JSON
Add the server to the client's configuration (for Claude Desktop, Settings › Developer › Edit Config):
{
"mcpServers": {
"macos": {
"command": "uvx",
"args": ["mcp-server-macos"]
}
}
}With pip
pip install mcp-server-macosThen use mcp-server-macos as the command, with no arguments (or python -m mcp_server_macos). If
the client doesn't find it, give the command's full path, which which mcp-server-macos prints.
Permissions
macOS grants privacy permissions to the app that runs the server (Claude Desktop, your terminal, your IDE), not to the server. When a tool lacks one, its error says which.
send_notification posts through Script Editor: when notifications are turned off for it in
System Settings › Notifications, the tool reports an error instead of sending one that macOS would drop.
Contributing
Bug reports, ideas and pull requests are welcome: see CONTRIBUTING.md, which explains how to add a tool. To report a vulnerability, see SECURITY.md.
License
Available Tools
2 toolsget_system_infoGet system informationARead-only
Get information about this Mac: the macOS version and build, the model, the processor, the installed memory, the computer's name and how long it has been running.
Inputs: no named parameters. Returns: What the Mac is, and how long it has been running.
send_notificationSend a notificationA
Show a notification on this Mac, in the top-right corner of the screen and in Notification Center.
macOS shows it as coming from Script Editor. Text over 4096 characters is clipped. Don't put a secret in a notification: other processes of the user can see its text while it's being posted.
Inputs: message (required), sound, title, subtitle. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one posts a user-visible notification, the other retrieves system information. There is no plausible way to confuse them or misselect between them.
Both names follow the same clear snake_case verb_noun convention: send_notification and get_system_info. The pattern is predictable and readable.
Two tools is quite thin for a server named mcp-server-macos, which suggests broad macOS integration. Each tool is well-scoped, but the surface feels minimal rather than complete.
The server exposes only notification sending and system information, leaving obvious macOS-related operations unaddressed. Agents needing app control, file interaction, or other system actions would hit dead ends.
Maintenance
Related MCP Connectors
- DNS-DATA RemoteDeprecatedcom.dns-data
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Connect AI assistants to your approved computer for files, commands, browser and desktop tasks.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
AI agents and scripts reporting back to your iPhone with Push Notifications and Live Activities.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to send native macOS notifications for task completion alerts and reminders. Supports interactive features like custom system sounds, action buttons, and user replies directly from the notification center.201 npmMIT
- AlicenseBqualityCmaintenanceEnables AI assistants to automate macOS through AppleScript and JXA by providing 44 tools for application management, window control, and UI interaction. It allows for comprehensive system control including screen capture, keyboard and mouse simulation, and system information retrieval.4415 npm1MIT
- AlicenseAqualityDmaintenanceProvides native macOS computer control tools including mouse and keyboard simulation, screenshot capture, and application management for MCP-compatible agents. It enables AI assistants to directly interact with the macOS operating system and installed apps through standard tool calls.2428 npm9MIT
- AlicenseAqualityDmaintenanceEnables macOS system automation, window management, and productivity tools for AI agents, including running AppleScripts, opening apps, retrieving browser tabs, taking screenshots, and controlling system settings.21MIT