macos-mcp-automation
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| run_applescriptB | Executes raw AppleScript code on macOS for custom system automation. |
| open_appA | Launches or brings to front a macOS application by name (e.g. Safari, Mail, Terminal, Spotify). |
| quit_appA | Quits or force-closes a running macOS application by name. |
| list_appsA | Lists all currently open visible user applications running on macOS. |
| type_textA | Simulates keyboard typing at the active text cursor position. |
| press_key_combinationB | Simulates pressing a key (enter, tab, space, escape, backspace) with optional modifiers (command, option, control, shift). |
| clipboard_getA | Reads the text content currently stored in the macOS system clipboard. |
| clipboard_setA | Copies a text string to the macOS system clipboard. |
| set_volumeA | Sets the macOS audio output volume percentage (0 to 100). |
| get_volumeA | Gets the current macOS audio output volume percentage. |
| adjust_brightnessA | Adjusts screen brightness up or down by a specified number of steps. |
| lock_screenA | Instantly locks the macOS user screen. |
| sleep_macA | Puts the macOS system to sleep. |
| take_screenshotA | Captures a desktop screenshot silently and returns it to the client as an image. |
| spotlight_searchA | Searches the macOS file system for files using Spotlight index (mdfind). |
| get_active_windowA | Gets the application name and window title of the frontmost active window. |
| get_browser_tabsA | Retrieves all open browser tab titles and URLs from Safari, Chrome, or both. |
| open_browser_urlB | Opens a web URL link in the default browser, Safari, or Chrome. |
| display_notificationA | Displays a native macOS banner notification with title, subtitle, and body text. |
| create_email_draftA | Drafts and opens an email in Apple Mail with optional recipient ('to'), subject line, and body message content. |
| create_noteA | Creates and saves a new note in the native Apple Notes application with a title, body content, and optional folder. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Each tool targets a distinct macOS feature or action, such as clipboard get/set, app lifecycle, volume control, or keyboard input. The generic `run_applescript` is explicitly for custom automation and does not overlap with the high-level wrappers, so there is no real ambiguity between tools.
Most tools follow a clear verb_noun snake_case pattern (e.g., `open_app`, `set_volume`, `create_note`). The only deviation is `spotlight_search`, which is noun_verb rather than verb_noun, making it a minor inconsistency.
With 21 tools, the server is above the typical compact range but justifiably so for a broad macOS automation suite covering clipboard, app control, display, input, browser, and Apple app integration. Each tool has a distinct purpose, so the count feels appropriate rather than bloated.
The tools cover core automation workflows: app management, keyboard/mouse simulation, clipboard, screenshots, volume/brightness, lock/sleep, file search, window/browser access, and Apple app shortcuts. Minor gaps like a `get_brightness` tool or email sending are not critical dead ends for typical automation tasks.