home / mcp / applescript mcp server
A dual-access MCP server that runs AppleScript to automate macOS apps and data with both Node.js and Python workflows.
Configuration
View docs{
"mcpServers": {
"peakmojo-applescript-mcp": {
"command": "npx",
"args": [
"@peakmojo/applescript-mcp"
]
}
}
}This MCP Server lets you run AppleScript on a Mac from a client, enabling remote control of applications, data, and tasks. It provides simple, dual access via Node.js and Python runtimes, so you can choose the workflow that fits your setup.
You connect to the AppleScript MCP Server using your preferred MCP client and run commands that execute AppleScript snippets on your Mac. Typical actions include interacting with Notes, Calendar, Contacts, and Messages; searching files with Spotlight or Finder; reading and writing files; running shell commands; and performing remote tasks over SSH. Use the Node.js-based or Python-based configuration to run the server locally, then point your MCP client at the corresponding server entry to execute AppleScript code remotely.
Prerequisites depend on the runtime you choose. Make sure you have Node.js and npm installed for the Node.js approach, or Python tooling available with uv for the Python approach.
# Node.js path (recommended for quick setup)
npx @peakmojo/applescript-mcp
# Python path (requires uv runtime)
brew install uv
git clone <your-repo-or-directory-containing-server>
# then run the Python server as described in the next stepIf you are deploying in a Docker container, you can connect to your Mac host using the special hostname host.docker.internal. You will typically configure the MCP client to run commands that forward to the host Mac for AppleScript execution.
The server exposes actionable capabilities for interacting with macOS apps and files. You can run AppleScript to control applications, read and write files, perform shell operations, and query system information. You can also perform remote actions such as SSH-based execution and calendar or note management from a distant client.
Verify that the Mac you want to control allows remote access and that the MCP client is configured to reach the correct server entry. If you use Docker, ensure the Mac host is reachable from inside the container and that SSH permissions are correctly set on the Mac. If commands do not execute, double-check AppleScript syntax and the environment in which the server runs (Node.js versus Python runtime).
Execute AppleScript to control macOS applications and system data.
Create, read, and manage notes via AppleScript.
Create calendar events and read upcoming events.
Search and fetch contact details.
Search for files using Spotlight or Finder.
Read and write file contents and execute shell commands.
Execute AppleScript remotely over SSH.
Capture screenshots of the screen and save to disk.
List all currently running applications.
Play a playlist in Apple Music.
Query current battery percentage.