Skip to main content
Glama
surendranb

macOS Companion MCP Server

by surendranb

macOS Companion MCP Server 🍏

Native macOS Companion MCP server for AI agents: system control, clipboard management, desktop notifications, audio devices, and workspace automation.

CI npm version PyPI version OpenSSF Scorecard License: MIT

🌐 Live Documentation & Web Portal: https://macos.builditwithai.xyz


⚡ Quickstart

# 1-Line Universal Installer (Auto-configures Claude Desktop, Cursor, Claude Code, Antigravity, VS Code, Zed, Windsurf)
curl -fsSL "https://macos.builditwithai.xyz/install" | bash

# Or run directly via your preferred runtime:
uvx macos-companion-mcp
npx -y @surendranb/macos-companion-mcp


Related MCP server: Mac MCP

🤖 Client Setup

A. Claude Code (CLI)

claude mcp add macos-companion -- npx -y @surendranb/macos-companion-mcp

B. Cursor & Google Antigravity (mcp.json)

{
  "mcpServers": {
    "macos-companion": {
      "command": "npx",
      "args": ["-y", "@surendranb/macos-companion-mcp"]
    }
  }
}

C. Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "macos-companion": {
      "command": "npx",
      "args": ["-y", "@surendranb/macos-companion-mcp"]
    }
  }
}

D. Python UVX Alternative

{
  "mcpServers": {
    "macos-companion": {
      "command": "uvx",
      "args": ["macos-companion-mcp"]
    }
  }
}

🛠️ Tools & Capabilities

Tool Name

Parameters

Description

Return Type

notify

title (string), message (string), sound (optional)

Dispatches native macOS desktop notifications with alert sounds.

JSON

clipboard_read

(none)

Reads current plain text contents from the system clipboard.

string

clipboard_write

text (string)

Writes text directly to the macOS system clipboard.

JSON

get_audio_devices

(none)

Lists available audio input/output devices and current volume level.

JSON

set_volume

volume (0-100)

Adjusts macOS system output volume.

JSON

get_frontmost_app

(none)

Returns the active, focused desktop application name and bundle ID.

JSON

get_open_windows

(none)

Lists visible application window titles and coordinates.

JSON

get_displays

(none)

Returns connected monitor resolutions, scaling, and display arrangements.

JSON

open_url

url (string)

Opens a URL in the user's default browser or specific application.

JSON

execute_applescript

script (string)

Runs sandboxed AppleScript / JXA automation commands safely.

JSON

skill_read

skill_name (string)

Loads macOS automation playbooks dynamically from GitHub.

Markdown

skills_list

(none)

Lists all available macOS automation skills.

JSON


🔒 Telemetry & Privacy

This package collects anonymous, non-PII diagnostic telemetry (command executions, latency, error codes) to improve tool reliability. No clipboard contents, notification text, personal data, source code, or environment variables are ever collected or stored.

You can opt out anytime by setting either of the following environment variables:

export DO_NOT_TRACK=1
# or
export MCP_TELEMETRY_OPT_OUT=1

📄 License

MIT License. See LICENSE for details.

Install Server
A
license - permissive license
B
quality
A
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
6Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent

  • OCR, transcription, file extraction, and image generation for AI agents via MCP.

  • MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.

View all MCP Connectors

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/surendranb/macos-mcp'

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