Enables management and automation of macOS applications through launching apps, listing running applications, executing AppleScript commands, quitting applications, and opening files in specific applications.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Mac Apps Serveropen a new tab in Safari and go to google.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Mac Apps Server
MCP server for managing macOS applications through LLM. Allows launching applications, managing them via AppleScript, and getting information about running applications.
π€ Voice Control: Use voice_client.py to control applications by voice! See VOICE_SETUP.md
Features
π Launch Applications - open any applications on Mac
π List Running Applications - get list of active applications
π€ AppleScript Automation - execute commands in applications
β Close Applications - quit applications
π Open Files - open files in specific applications
Installation
Python Version (Recommended)
Make sure you have Python 3.7+ installed
Install dependencies:
pip install -r requirements.txtServer is ready to use! No compilation required.
TypeScript Version (Alternative)
Make sure you have Node.js (v18+) and npm installed
Install dependencies:
npm installBuild the project:
npm run buildConfiguration for Use with MCP Clients
Claude Desktop
Add configuration to the MCP client settings file. For Claude Desktop this is usually the MCP configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"mac-apps": {
"command": "python3",
"args": ["/Users/olegzaichkin/Documents/MCP/src/server.py"]
}
}
}Or for development using tsx:
{
"mcpServers": {
"mac-apps": {
"command": "npm",
"args": ["run", "dev"],
"cwd": "/Users/olegzaichkin/Documents/MCP"
}
}
}Other LLMs and Clients
Available options:
Claude Desktop (recommended) - full MCP support
Ollama β - local models (installed, models loaded) - see OLLAMA_SETUP.md
LM Studio - graphical interface for local LLMs
DeepSeek - see DEEPSEEK_SETUP.md
π Detailed list of compatible LLMs and instructions: COMPATIBLE_LLM.md
Usage
After configuration, the LLM will be able to use the following tools:
1. Open Application
Open Safari2. Get List of Applications
What applications are currently running?3. Execute AppleScript
In Safari, open a new tab4. Close Application
Close Calculator5. Open File
Open file ~/Documents/example.txt in TextEditAvailable Tools
open_application
Opens an application by name.
Parameters:
appName(string) - application name (e.g., "Safari", "Calculator")
get_running_applications
Returns a list of all running applications.
run_applescript
Executes an AppleScript command in the specified application.
Parameters:
appName(string) - application namescript(string) - AppleScript command
AppleScript Examples:
Safari:
make new document- create a new tabFinder:
open folder "Documents"- open a folderTextEdit:
make new document- create a new document
quit_application
Closes the specified application.
Parameters:
appName(string) - application name to close
open_file_with_app
Opens a file or URL in the specified application.
Parameters:
path(string) - path to file or URLappName(string) - application name
Testing
To test the server:
node test-mcp-server.jsOr test manually:
npm run build
npm startDevelopment
For development with auto-reload:
npm run devSecurity
β οΈ Warning: This server allows executing commands on your system. Use it only with trusted LLM clients and in a secure environment.
For macOS, you may need permission to control other applications:
System Settings β Privacy & Security β Automation
Allow access for Terminal/Node.js
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.