Native Swift macOS automation MCP — 63 tools: AX, browser, capture, OCR, Spotlight, windows.
Mac MCP server is a locally run integration for AI assistants that speak the Model Context Protocol. Native Swift macOS automation MCP — 63 tools: AX, browser, capture, OCR, Spotlight, windows.
Native Swift MCP server for full macOS automation. 63 tools in one signed .app bundle — no Python, no Node runtime, no Electron.
Once Mac is connected, these are the calls the assistant has available:
Cross — origin iframes** block browser_eval_js — same-origin policy, not a limitation of the tool. Use AX coords or synthetic CGEvents for content insideFirst — run TCC prompts are unavoidable.** macOS requires the user to grant Screen Recording, Accessibility and Apple Events the first time. TheCategory — ToolsPermissions — permissions_status, request_permissionsAccessibility — find_element(s), query_elements, list_elements, get_ui_tree, get_element_attributes, set_element_attribute, read_value, perform_element_actionWindows — list_windows, focus_window, move_window, resize_window, set_window_state, wait_for_window, move_window_to_displayInput — click, mouse_event, drag_and_drop, scroll, type_text, press_key, press_key_sequence, key_down, key_up, convert_coordinatesMenus — click_menu_path, list_menu_paths, list_menu_titlesBrowser — browser_list_tabs, browser_get_active_tab, browser_navigate, browser_new_tab, browser_close_tab, browser_eval_jsScreen — capture_screen, capture_window, capture_display, ocr_screenClipboard — clipboard_read, clipboard_write, clipboard_clearSpotlight — spotlight_search, spotlight_open_resultSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.
This sits in the browser automation group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Mac's toolset — Cross, First, Category and 11 more — is a fair guide to whether it matches your workflow. It is maintained by AdelElo13; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Mac's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| Cross | origin iframes** block browser_eval_js — same-origin policy, not a limitation of the tool. Use AX coords or synthetic CGEvents for content inside embedded iframes from other origins. |
| First | run TCC prompts are unavoidable.** macOS requires the user to grant Screen Recording, Accessibility and Apple Events the first time. The usage-description strings in Info.plist make the consent dialogs show up with a cle |
| Category | Tools |
| Permissions | permissions_status, request_permissions |
| Accessibility | find_element(s), query_elements, list_elements, get_ui_tree, get_element_attributes, set_element_attribute, read_value, perform_element_action, wait_for_element, scroll_to_element |
| Windows | list_windows, focus_window, move_window, resize_window, set_window_state, wait_for_window, move_window_to_display |
| Input | click, mouse_event, drag_and_drop, scroll, type_text, press_key, press_key_sequence, key_down, key_up, convert_coordinates |
| Menus | click_menu_path, list_menu_paths, list_menu_titles |
| Browser | browser_list_tabs, browser_get_active_tab, browser_navigate, browser_new_tab, browser_close_tab, browser_eval_js |
| Screen | capture_screen, capture_window, capture_display, ocr_screen |
| Clipboard | clipboard_read, clipboard_write, clipboard_clear |
| Spotlight | spotlight_search, spotlight_open_result |
| System | set_volume, set_dark_mode, list_displays |
| Scope | State |
{
"mcpServers": {
"mac-control-mcp": {
"type": "stdio",
"command": "/Users/you/Applications/MacControlMCP.app/Contents/MacOS/MacControlMCP"
}
}
}Configuration as documented by the project. Restart the client after saving.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.