mac-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_system_infoA | Retrieves macOS system information including version, hardware model, processor, and memory |
| get_battery_statusA | Gets battery percentage and charging status (MacBooks only, returns isDesktop: true for desktop Macs) |
| get_display_infoA | Lists connected displays with name, resolution, and main display indicator |
| get_volumeA | Gets the current system volume as a percentage (0-100) |
| set_volumeB | Sets the system volume to a specified percentage (0-100) |
| get_mute_statusA | Checks if system audio is currently muted |
| set_muteA | Mutes or unmutes system audio |
| get_clipboardA | Reads current clipboard content (text, image paths, or file paths) |
| set_clipboardB | Sets clipboard to specified text content |
| send_notificationB | Displays a macOS notification with title, optional message, subtitle, and sound |
| list_running_appsA | Lists all running GUI applications with name, bundle ID, and process ID |
| launch_appB | Launches an application by name (e.g., "Safari", "Finder") |
| quit_appA | Gracefully quits an application by name |
| activate_appC | Brings an application to the foreground |
| reveal_in_finderB | Opens Finder and selects the specified file or folder |
| get_selected_filesA | Gets paths of files currently selected in Finder |
| get_finder_window_pathA | Gets the path of the frontmost Finder window |
| list_windowsB | Lists all visible windows with app name, title, position, and size. Optional: filter by app name |
| focus_windowB | Brings a specific window to the front by app name and optional window index |
| move_windowB | Moves a window to specified x, y coordinates |
| resize_windowB | Resizes a window to specified width and height |
| minimize_windowA | Minimizes a window to the Dock |
| clickB | Performs a mouse click at specified coordinates. Supports left, right, middle buttons and modifier keys |
| double_clickB | Performs a double-click at specified coordinates |
| move_mouseA | Moves the mouse cursor to specified coordinates without clicking |
| dragC | Performs a drag operation from start to end coordinates |
| type_textB | Types text at the current cursor position with optional delay between characters |
| press_keyB | Presses a key by name (Enter, Tab, Escape, F1-F12, Arrow keys, etc.) |
| key_combinationA | Presses a focused-app or menu key combination with modifiers; OS-global hotkeys such as Electron globalShortcut are not guaranteed |
| scrollA | Scrolls in a specified direction (up, down, left, right) at optional coordinates |
| scroll_to_elementC | Scrolls until a UI element with specified text or role becomes visible |
| take_screenshotA | Captures a screenshot of the screen, display, window, or region. Auto-resized to max 1600px and compressed to max 1.8MB for API compatibility (both file and base64 output). Use rawFile: true to save at full resolution, or maxDimension/maxFileSize: 0 to disable processing |
| get_ui_elementsA | Retrieves the UI element tree for an application. Use maxDepth to limit tree depth |
| click_ui_elementB | Clicks a UI element by path (e.g., "window1/button1") |
| get_ui_element_valueB | Gets the value of a UI element (text field content, checkbox state, etc.) |
| set_ui_element_valueB | Sets the value of an editable UI element (text fields, sliders, etc.) |
| focus_ui_elementB | Sets keyboard focus to a UI element |
| list_menu_itemsC | Gets the menu hierarchy for an application |
| click_menu_itemB | Clicks a menu item by path (e.g., "File > Save", "Edit > Copy") |
| get_menu_item_stateB | Gets the enabled/checked state of a menu item |
| list_status_bar_itemsB | Lists visible status bar (menu bar extras) items |
| click_status_bar_itemB | Clicks a status bar item to open its menu |
| click_status_bar_menu_itemB | Clicks a menu item within a status bar menu |
| get_menu_bar_structureC | Gets the complete menu bar hierarchy for a process by PID |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/laststance/mac-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server