Skip to main content
Glama
matthewdcage

macOS Automation MCP Server

by matthewdcage

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_system_infoA

Get macOS system information including hostname, version, user, and uptime.

set_volumeA

Set the system volume level.

Args: level: Volume level from 0 (mute) to 100 (max)

get_volumeA

Get the current system volume level.

toggle_muteA

Toggle system audio mute on/off.

toggle_dark_modeA

Toggle between dark mode and light mode.

set_dark_modeA

Set dark mode to a specific state.

Args: enabled: True for dark mode, False for light mode

is_dark_modeA

Check if dark mode is currently enabled.

sleep_displayA

Put the display to sleep.

say_textA

Speak text using text-to-speech.

Args: text: Text to speak voice: Optional voice name (e.g., 'Alex', 'Samantha', 'Victoria') rate: Optional speaking rate in words per minute

take_screenshotA

Capture a screenshot.

Args: path: Optional save path (defaults to Desktop with timestamp) region: If True, allows selecting a region (interactive) to_clipboard: If True, saves to clipboard instead of file

get_wifi_networkA

Get the current WiFi network name.

toggle_wifiB

Enable or disable WiFi.

Args: enabled: True to enable WiFi, False to disable

list_running_appsA

List all currently running applications.

get_frontmost_appA

Get information about the currently active (frontmost) application.

launch_appA

Launch an application.

Args: app_name: Name of the application (e.g., 'Safari', 'Finder', 'Terminal') new_instance: If True, opens a new instance of the app

quit_appA

Quit an application.

Args: app_name: Name of the application to quit force: If True, force quits without saving

hide_appA

Hide an application's windows.

Args: app_name: Name of the application to hide

is_app_runningC

Check if an application is currently running.

Args: app_name: Name of the application to check

send_notificationA

Send a macOS notification.

Args: title: Notification title message: Notification body text subtitle: Optional subtitle sound: Sound name ('default', 'Basso', 'Glass', 'Hero', 'Pop', etc.) or None for silent

send_alertA

Show an alert dialog and wait for user response.

Args: title: Alert title message: Alert message buttons: List of button names (max 3) default_button: Name of the default button

choose_from_listB

Show a list selection dialog.

Args: items: List of items to choose from title: Dialog title prompt: Optional prompt message multiple: Allow multiple selections

get_clipboardA

Get the current clipboard contents as text.

set_clipboardB

Copy text to the clipboard.

Args: text: Text to copy to clipboard

clear_clipboardA

Clear the clipboard contents.

reveal_in_finderA

Reveal a file or folder in Finder.

Args: path: Path to the file or folder

create_folderA

Create a new folder.

Args: path: Full path for the new folder

move_to_trashB

Move files or folders to the Trash.

Args: paths: List of paths to move to trash

empty_trashC

Empty the Trash.

get_selected_filesA

Get the currently selected files in Finder.

search_filesA

Search for files using Spotlight.

Args: query: Search query location: Optional folder path to search in kind: Optional file type filter ('pdf', 'image', 'document', 'audio', 'video')

list_calendarsA

List all available calendars.

list_calendar_eventsC

List upcoming calendar events.

Args: days_ahead: Number of days to look ahead (default: 7) calendar_name: Optional specific calendar name

create_calendar_eventA

Create a new calendar event.

Args: title: Event title start_date: Start date/time (ISO format: YYYY-MM-DDTHH:MM:SS) end_date: End date/time (ISO format: YYYY-MM-DDTHH:MM:SS) calendar_name: Calendar to add event to (default: "Calendar") location: Optional event location notes: Optional event notes

list_reminder_listsA

List all reminder lists.

list_remindersB

List reminders.

Args: list_name: Optional specific reminder list include_completed: Include completed reminders

create_reminderA

Create a new reminder.

Args: title: Reminder title list_name: Reminder list to add to (default: "Reminders") due_date: Optional due date (ISO format: YYYY-MM-DDTHH:MM:SS) notes: Optional notes

complete_reminderA

Mark a reminder as complete.

Args: title: Reminder title to complete list_name: Optional specific list to search in

get_overdue_remindersA

Get all overdue reminders.

run_applescriptC

Execute arbitrary AppleScript code.

Args: script: AppleScript code to execute timeout: Maximum execution time in seconds (default: 30)

run_shell_commandB

Execute a shell command (with safety checks).

Args: command: Shell command to execute timeout: Maximum execution time in seconds (default: 30) working_dir: Optional working directory

open_urlB

Open a URL in the default browser.

Args: url: URL to open

open_fileC

Open a file with the default or specified application.

Args: path: Path to the file app_name: Optional application name to open with

create_scheduled_taskA

Create a scheduled task using launchd.

Args: name: Unique name for the task command: Command to execute interval_seconds: Run every N seconds (min 60) hour: Hour to run (0-23) for calendar schedule minute: Minute to run (0-59) for calendar schedule run_at_load: Run immediately when loaded

list_scheduled_tasksA

List all MCP-managed scheduled tasks.

remove_scheduled_taskC

Remove a scheduled task.

Args: name: Name of the task to remove

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
get_system_info_resourceResource providing system information.
get_running_apps_resourceResource providing list of running applications.
get_clipboard_resourceResource providing current clipboard text content.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/matthewdcage/mcp-applescript-automation'

If you have feedback or need assistance with the MCP directory API, please join our Discord server