Server Macos Use
FreeNot checkedEnables controlling macOS applications via accessibility APIs, supporting actions like clicking, typing, and keyboard input through MCP commands.
About
Enables controlling macOS applications via accessibility APIs, supporting actions like clicking, typing, and keyboard input through MCP commands.
README
Official website: https://macos-use.dev/
Model Context Protocol (MCP) server in Swift. It allows controlling macOS applications by leveraging the accessibility APIs, primarily through the MacosUseSDK.
You can use it in Claude Desktop or other compatible MCP-client.
The server listens for MCP commands over standard input/output (stdio) and exposes several tools to interact with applications.
https://github.com/user-attachments/assets/cd203171-bac6-4124-9a58-59947a25be07
https://github.com/user-attachments/assets/f274560a-559f-4140-b133-c0b5c500a02d
Available Tools
The server exposes the following tools via the CallTool MCP method:
macos-use_open_application_and_traverse- Description: Opens or activates a specified application and then traverses its accessibility tree.
- Parameters:
identifier(String, Required): The application's name, bundle ID, or file path.
macos-use_click_and_traverse- Description: Simulates a mouse click at specific coordinates within the window of the target application (identified by PID) and then traverses its accessibility tree.
- Parameters:
pid(Number, Required): The Process ID (PID) of the target application.x(Number, Required): The X-coordinate for the click (relative to the window/screen, depending on SDK behavior).y(Number, Required): The Y-coordinate for the click.
macos-use_type_and_traverse- Description: Simulates typing text into the target application (identified by PID) and then traverses its accessibility tree.
- Parameters:
pid(Number, Required): The Process ID (PID) of the target application.text(String, Required): The text to be typed.
macos-use_press_key_and_traverse- Description: Simulates pressing a specific keyboard key (e.g., 'Enter', 'Tab', 'a', 'B') with optional modifier keys held down, targeting the application specified by PID, and then traverses its accessibility tree.
- Parameters:
pid(Number, Required): The Process ID (PID) of the target application.keyName(String, Required): The name of the key (e.g.,Return,Escape,ArrowUp,Delete,a,B). Case-sensitive for letters if no modifiers are active.modifierFlags(Array, Optional): An array of modifier keys to hold during the press. Valid values: CapsLock(orCaps),Shift,Control(orCtrl),Option(orOpt,Alt),Command(orCmd),Function(orFn),NumericPad(orNumpad),Help.
macos-use_refresh_traversal- Description: Only performs the accessibility tree traversal for the specified application (identified by PID). Useful for getting the current UI state without performing an action.
- Parameters:
pid(Number, Required): The Process ID (PID) of the application to traverse.
Common Optional Parameters (for CallTool)
These can potentially be passed in the arguments object for any tool call to override default MacosUseSDK behavior (refer to ActionOptions in the code):
traverseBefore(Boolean, Optional): Traverse accessibility tree before the primary action.traverseAfter(Boolean, Optional): Traverse accessibility tree after the primary action (usually defaults to true).showDiff(Boolean, Optional): Include a diff between traversals (if applicable).onlyVisibleElements(Boolean, Optional): Limit traversal to visible elements.showAnimation(Boolean, Optional): Show visual feedback animation for actions.animationDuration(Number, Optional): Duration of the feedback animation.delayAfterAction(Number, Optional): Add a delay after performing the action.
Dependencies
MacosUseSDK(Assumed local or external Swift package providing macOS control functionality)
Building and Running
# Example build command (adjust as needed, use 'debug' for development)
swift build -c debug # Or 'release' for production
# Running the server (it communicates via stdin/stdout)
./.build/debug/mcp-server-macos-use
Integrating with Clients (Example: Claude Desktop)
Once built, you need to tell your client application where to find the server executable. For example, to configure Claude Desktop, you might add the following to its configuration:
{
"mcpServers": {
"mcp-server-macos-use": {
"command": "/path/to/your/project/mcp-server-macos-use/.build/debug/mcp-server-macos-use"
}
}
}
Replace /path/to/your/project/ with the actual absolute path to your mcp-server-macos-use directory.
Help
Reach out to [email protected] Discord: m13v_
Plans
Happy to tailor the server for your needs, feel free to open an issue or reach out
Install Server Macos Use in Claude Desktop, Claude Code & Cursor
unyly install mcp-server-macos-useInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add mcp-server-macos-use -- npx -y mcp-server-macos-useFAQ
Is Server Macos Use MCP free?
Yes, Server Macos Use MCP is free — one-click install via Unyly at no cost.
Does Server Macos Use need an API key?
No, Server Macos Use runs without API keys or environment variables.
Is Server Macos Use hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Server Macos Use in Claude Desktop, Claude Code or Cursor?
Open Server Macos Use on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Server Macos Use with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
