MCP Mac Apps Server
Enables control of macOS applications through natural language, allowing users to launch apps, execute AppleScript commands, manage running applications, and open files with voice or text commands.
README
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.txt
- Server is ready to use! No compilation required.
TypeScript Version (Alternative)
-
Make sure you have Node.js (v18+) and npm installed
-
Install dependencies:
npm install
- Build the project:
npm run build
Configuration 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 Safari
2. Get List of Applications
What applications are currently running?
3. Execute AppleScript
In Safari, open a new tab
4. Close Application
Close Calculator
5. Open File
Open file ~/Documents/example.txt in TextEdit
Available 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 tab - Finder:
open folder "Documents"- open a folder - TextEdit:
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.js
Or test manually:
npm run build
npm start
Development
For development with auto-reload:
npm run dev
Security
ā ļø 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
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.