Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Mac Use MCP

by antbotlabversion 1.1.1i★ –iRuns on your computer
Registry nameio.github.antbotlab/mac-use-mcp

Install

Overview

Description from the maker (original English)

Zero-dependency macOS desktop automation for AI agents. 18 tools via MCP. macOS 13+.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • The registry lists no key to fill in.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "mac-use": {
      "command": "npx",
      "args": [
        "-y",
        "mac-use-mcp"
      ]
    }
  }
}

Run this in your terminal

claude mcp add mac-use -- npx -y mac-use-mcp

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "mac-use": {
      "command": "npx",
      "args": [
        "-y",
        "mac-use-mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "mac-use": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mac-use-mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account antbotlab, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 32583 servers in this category
  • Published to the registry more recently than 3% of the other 32583 servers in this category
  • Basic checks equal to or better than 100% of the other 32583 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Mac Use MCP safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.1.1) reached the registry 8 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, sync. labs

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated yesterday
Install

sync. labs

by synchronicity-labs

Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.

Computer or cloudUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

mac-use-mcp

[!WARNING]

This tool has full control over mouse, keyboard, and screen. Please use in a sandboxed environment to protect your privacy and avoid accidental data loss by your agents. You are responsible for any actions performed through this tool.

Zero-native-dependency macOS desktop automation via MCP.

Give AI agents eyes and hands on macOS — click, type, screenshot, and inspect any application.

Use Cases

  • Automated UI testing — click buttons, verify element states with get_ui_elements, validate screen content via screenshot
  • Desktop workflow automation — launch apps with open_application, fill forms with type_text, navigate menus via click_menu
  • Screenshot-based monitoring — capture screen regions periodically with screenshot for visual diffing or alerting
  • Accessibility inspection — query UI element trees with get_ui_elements for QA and compliance checks
  • AI agent computer use — give LLMs eyes and hands on macOS via screenshot, click, type_text, and more

Why mac-use-mcp?

  • Just works — npx mac-use-mcp and grant two macOS permissions. No node-gyp, no Xcode tools, no build step.
  • 18 tools, one server — screenshots, clicks, keystrokes, window management, accessibility inspection, and clipboard.
  • macOS 13+ on Intel and Apple Silicon — no native addons, no architecture headaches.

Install

Requirements: macOS 13+ and Node.js 22+. The server communicates over stdio transport.

This package only works on macOS. It will refuse to install on other operating systems.

No build steps. No native dependencies. Just run:

npx mac-use-mcp

npx will prompt to install the package on first run. Use npx -y mac-use-mcp to skip the confirmation.

[!TIP]

Model selection matters. Desktop automation involves screenshot–action loops that add up in token usage. A fast model with solid reasoning, good vision, and reliable tool calling is recommended:

| Model | Provider |

|-------|----------|

| Gemini 3 Flash | Google |

| Claude Sonnet 4.6 | Anthropic |

| GPT-5 mini | OpenAI |

| MiniMax-M2.5 | MiniMax |

| Kimi K2.5 | Moonshot AI |

| Qwen3.5 | Alibaba |

| GLM-4.7 | Zhipu AI |

Permission Setup

mac-use-mcp requires two macOS permissions to function. Grant them once and you're set.

Accessibility

Required for mouse and keyboard control.

  1. Open System Settings > Privacy & Security > Accessibility
  2. Click the + button
  3. Add your MCP client application (e.g., Claude Desktop, your terminal emulator)
  4. Ensure the toggle is enabled
Screen Recording

Required for screenshots.

  1. Open System Settings > Privacy & Security > Screen Recording
  2. Click the + button
  3. Add your MCP client application
  4. Ensure the toggle is enabled
  5. Restart the application if prompted
Verify permissions

After granting both permissions and configuring your MCP client (see next section), use the check_permissions tool to confirm everything is working:

> check_permissions

✓ Accessibility: granted ✓ Screen Recording: granted

MCP Client Configuration

Claude Code

claude mcp add mac-use-mcp -- npx mac-use-mcp

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

OpenAI Codex

Add to ~/.codex/config.toml:

[mcp_servers.mac-use]

command = "npx" args = ["-y", "mac-use-mcp"]

Or via CLI:

codex mcp add mac-use -- npx -y mac-use-mcp

Google Antigravity

Add to ~/.gemini/antigravity/mcp_config.json:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Gemini CLI

Add to ~/.gemini/settings.json:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

VS Code / Copilot

Add to .vscode/mcp.json in your workspace (or open the Command Palette and run MCP: Open User Configuration for global setup):

{

"servers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Cursor

Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level):

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Cline

Open Cline's MCP settings (in the Cline extension panel, click the MCP servers icon), then add:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Kiro

Add to ~/.aws/amazonq/mcp.json:

{

"mcpServers": { "mac-use-mcp": { "command": "npx", "args": ["mac-use-mcp"] } } }

Tools

This Node.js MCP server exposes 18 tools for mouse, keyboard, and screen control to any MCP-compatible client.

Screen
ToolDescription
screenshotCapture the screen, a region, or a window by title (PNG or JPEG)
get_screen_infoGet display count, resolution, origin, and scale factor for each display
get_cursor_positionGet current cursor coordinates
Input
ToolDescription
clickClick at screen coordinates with button, click count, and modifier options
move_mouseMove the cursor to a position
scrollScroll up, down, left, or right at a position
dragDrag from one point to another over a configurable duration
type_textType text at the cursor position (supports Unicode, CJK, and emoji)
press_keyPress a key or key combination (e.g., "cmd+c", "Return")
Window & App
ToolDescription
list_windowsList all visible windows with positions and sizes
focus_windowActivate an app and bring a specific window to the front
open_applicationLaunch an application by name
click_menuClick a menu bar item by path (e.g., "File > Save As...")

App names support fuzzy matching — "chrome" resolves to "Google Chrome", "code" to "Code", etc.

Accessibility
ToolDescription
get_ui_elementsQuery UI elements via Accessibility API — find buttons, text fields, and other controls by role or title
Clipboard
ToolDescription
clipboard_readRead the current system clipboard as plain text
clipboard_writeWrite text to the system clipboard
Utility
ToolDescription
waitPause for a specified duration (in milliseconds, 0–10 000, default 500)
check_permissionsVerify Accessibility and Screen Recording access

Examples

Common workflow patterns using mac-use-mcp tools:

Screenshot a specific window
1. focus_window({ app: "Safari" })
  1. screenshot({ mode: "window", window_title: "Safari" })
Click a button in a dialog
1. get_ui_elements({ app: "Finder", role: "AXButton" })

→ finds "OK" button at position (500, 300)

  1. click({ x: 500, y: 300 })
Automate a menu action
1. open_application({ name: "TextEdit" })
  1. click_menu({ app: "TextEdit", path: "Format > Make Plain Text" })
Copy text between apps
1. focus_window({ app: "Safari" })
  1. press_key({ key: "cmd+a" }) # select all
  2. press_key({ key: "cmd+c" }) # copy
  3. focus_window({ app: "Notes" })
  4. press_key({ key: "cmd+v" }) # paste

How It Works

  • Swift binary handles mouse input (CGEvent), screen capture (CGWindowListCreateImage), window enumeration (CGWindowListCopyWindowInfo), and UI element queries (Accessibility API)
  • AppleScript handles keyboard input (System Events key code), window focus, and menu clicks
  • Node.js MCP server orchestrates everything over stdio, translating MCP tool calls into system operations
  • No native Node.js addons — the Swift binary is pre-compiled and ships with the npm package
  • Serial execution queue prevents race conditions between system operations

Known Limitations

  • Screen Recording prompt on Sequoia: macOS 15 shows a monthly system prompt asking to reconfirm Screen Recording access. This is an OS-level behavior and cannot be suppressed.
  • Secure input fields: Password fields and other secure text inputs block synthetic keyboard events. This is a macOS security feature.
  • Keyboard input on macOS 26+: CGEvent keyboard synthesis is silently blocked. Keyboard input uses AppleScript (System Events key code) as a workaround, which may behave differently in some edge cases.
  • System dialogs: Some system-level dialogs (e.g., FileVault unlock, Login Window) cannot be interacted with programmatically due to macOS security restrictions.
  • Headless / CI: Requires a graphical session. Headless macOS environments (e.g., standard GitHub Actions runners) are not supported.

Troubleshooting

Permission prompts keep appearing

Grant Accessibility and Screen Recording permissions to your terminal app in System Settings > Privacy & Security. A restart of the terminal may be required.

macOS Sequoia permission dialogs

macOS 15 (Sequoia) introduced stricter permission prompts. Allow the prompts when they appear. The check_permissions tool can verify your current permission status.

Secure input fields

Some password fields and secure text inputs block programmatic key events. This is a macOS security feature. Use clipboard_write + press_key("cmd+v") as a workaround.

Screen recording shows black screenshots

Ensure Screen Recording permission is granted to your terminal app (not just Accessibility). Restart the terminal after granting.

Related Projects

  • Playwright MCP — Browser automation via accessibility tree. Complements mac-use-mcp for web-only tasks.
  • Peekaboo — macOS screen automation with ScreenCaptureKit. Requires macOS 15+ and a Swift build.
  • [awesome-mcp-servers](https://github.com/punkp

Only the beginning is shown; read the rest in the repo

Ask PopNx