home / mcp / apple notifier mcp server

Apple Notifier MCP Server

Provides native macOS notifications, prompts, speech, screenshots, and file selection via MCP clients.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "turlockmike-apple-notifier-mcp": {
      "command": "apple-notifier-mcp",
      "args": []
    }
  }
}

Apple Notifier MCP Server lets you trigger native macOS notifications, interactive prompts, text-to-speech, screenshots, and file selections from any MCP-compatible client. It enables seamless desktop interactions from Claude Desktop, Cline, or other MCP clients by running on your Mac.

How to use

You connect an MCP client to the Apple Notifier MCP Server and then call the available tools to perform actions on macOS. Typical workflows include sending a notification to alert you, showing a prompt to gather input, speaking text aloud, taking screenshots for documentation, or letting users pick files from the system dialog. Each action is exposed as a distinct tool that you invoke through your MCP client, supplying the required and optional parameters.

How to install

Prerequisites you need before installing: macOS, Node.js 18 or newer, and an MCP-compatible client such as Claude Desktop or Cline.

Install the Apple Notifier MCP Server via the Smithery workflow (automatic client integration):

npx -y @smithery/cli install apple-notifier-mcp --client claude

Manual installation steps to run the server locally:

# Install the package globally
npm install -g apple-notifier-mcp

# Add to your MCP configuration files
# For Cline
``json``
{
  "mcpServers": {
    "apple-notifier": {
      "command": "apple-notifier-mcp"
    }
  }
}

# For Claude Desktop
``json``
{
  "mcpServers": {
    "apple-notifier": {
      "command": "apple-notifier-mcp"
    }
  }
}

Additional configuration and usage notes

The server exposes a set of actions you can invoke from your MCP client. You don’t need to run a separate HTTP service; instead, you run the local executable that communicates with macOS APIs to perform the requested actions.

Configuration examples

If you use Cline, place this under your cline_mcp_settings.json in the mcpServers section:

{
  "mcpServers": {
    "apple-notifier": {
      "command": "apple-notifier-mcp"
    }
  }
}

If you use Claude Desktop, place this under your claude_desktop_config.json in the mcpServers section:

{
  "mcpServers": {
    "apple-notifier": {
      "command": "apple-notifier-mcp"
    }
  }
}

Example usage

Send a notification directly from your MCP client with a title and message, optionally including a subtitle and sound:

await client.use_mcp_tool("apple-notifier", "send_notification", {
  title: "Reminder",
  message: "Standup in 5 minutes",
  subtitle: "Team meeting",
  sound: true
});

Troubleshooting and tips

If the server cannot start, ensure apple-notifier-mcp is installed and accessible in your system PATH. Verify you are using Node.js 18+ and that your MCP client is configured to reach the local MCP server by name (e.g., apple-notifier). Check that your macOS permissions allow accessibility features for automation.

Available tools

send_notification

Display a native macOS notification with a title, message, optional subtitle, and optional sound.

prompt_user

Display an interactive prompt with a message, optional default answer, up to three custom buttons, and an icon option.

speak

Use macOS text-to-speech to speak provided text with an optional voice and adjustable rate.

take_screenshot

Capture a screenshot of a fullscreen, window, or selection area and save it to a specified path with selectable format and options to hide the cursor or include shadows.

select_file

Open the native macOS file picker dialog with optional prompts, location defaults, file type filters, and the ability to select multiple files.