50+ tools for macOS automation:
- π± Messages & Contacts - Send/read iMessages, list chats, send file attachments, search/get/create/update contacts
- π Notes & Reminders - Create, list, search, update, show, move, complete, and delete notes/reminders
- π Calendar - Create, list, search, update, delete, check availability, and create recurring events
- ποΈ Files & Finder - Find, inspect, copy, move, rename, reveal, and trash files safely
- π Clipboard - Read/write text, copy file paths for Finder paste, and save/set clipboard images
- πͺ Window & Workspace - List/focus apps and windows, move/resize/center/tile windows, minimize windows, hide apps, and quit apps
- π Safari - Control tabs, navigate, execute JavaScript
- π Chrome (CDP) - Open sessions, navigate, click/type, extract data, screenshots
- πΈ Screen Capture - Capture the active display and share image output with the model
- π₯οΈ System - Open apps, adjust brightness/volume, visual effects
This repo currently includes one shareable skill:
altic-studio(skills/altic-studio/)- Runs local AppleScript automations via
osascriptthrough the Bash tool - Covers Messages, Contacts, Notes, Reminders, Calendar, Safari, window management, system controls, screenshots, and Chrome CDP browser control
- Main skill manifest:
skills/altic-studio/SKILL.md
- Runs local AppleScript automations via
Install altic-studio directly from this repo with the Skills CLI:
# Preview available skills in this repo
npx skills add altic-dev/altic-mcp --list
# Install skill with interactive mode
npx skills add altic-dev/altic-mcp
Restart your coding agent after installation.
- macOS 10.13+
- UV package manager (auto-installed by the bash installer if missing)
Python note: altic-mcp requires Python 3.13+ internally, but
uvxmanages this automatically β you do not need to install Python yourself when using the uvx or bash installer options below.
altic-mcp offers multiple installation methods for Claude Desktop.
π Update & Uninstall Information: Options 1 and 2 have automatic updates. See Updating & Uninstalling below for details.
Option 1: Add to claude_desktop_config manually β Auto-Updates (Requires UV)
Add this entry to your Claude Desktop config file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"altic-mcp": {
"command": "uvx",
"args": ["--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"]
}
}
}Restart Claude if running.
β
Auto-Updates: Yes β uvx --refresh re-fetches the latest version from GitHub each time Claude starts
π Manual Update: uv cache clean altic-mcp then restart Claude
ποΈ Uninstall: Remove the "altic-mcp" entry from your claude_desktop_config.json
Performance tip:
--refreshensures you always run the latest version but adds a few seconds to startup. Remove--refreshfor faster startup (update manually withuv cache clean altic-mcp).
Option 2: Using bash script installer β Auto-Updates (Installs UV if needed)
curl -fsSL https://raw.githubusercontent.com/altic-dev/altic-mcp/refs/heads/main/install.sh | bashThis script checks for UV (installs it if missing), backs up your existing Claude config, and adds the altic-mcp server entry automatically.
β
Auto-Updates: Yes β same uvx --refresh mechanism as Option 1
π Manual Update: Re-run the bash installer command above, or uv cache clean altic-mcp
ποΈ Uninstall: Remove the "altic-mcp" entry from your claude_desktop_config.json
altic-mcp works with any MCP-compatible client. The standard JSON configuration is:
{
"mcpServers": {
"altic-mcp": {
"command": "uvx",
"args": ["--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"]
}
}
}Add this to your client's MCP configuration file at the locations below:
Cursor
Or add manually to ~/.cursor/mcp.json (global) or .cursor/mcp.json in your project folder (project-specific).
See Cursor MCP docs for more info.
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json. See Windsurf MCP docs for more info.
VS Code / GitHub Copilot
Add to .vscode/mcp.json in your project or VS Code User Settings (JSON). Make sure MCP is enabled under Chat > MCP. Works in Agent mode.
See VS Code MCP docs for more info.
Cline
Configure through the Cline extension settings in VS Code. Open the Cline sidebar, click the MCP Servers icon, and add the JSON configuration above. See Cline MCP docs for more info.
Roo Code
Add to your Roo Code MCP configuration file. See Roo Code MCP docs for more info.
Claude Code
claude mcp add --scope user altic-mcp -- uvx --refresh --from git+https://github.com/altic-dev/altic-mcp.git altic-mcpRemove --scope user to install for the current project only. See Claude Code MCP docs for more info.
Trae
Use the "Add manually" feature and paste the JSON configuration above. See Trae MCP docs for more info.
Kiro
Navigate to Kiro > MCP Servers, click + Add, and paste the JSON configuration above. See Kiro MCP docs for more info.
Codex (OpenAI)
Codex uses TOML configuration. Run this command to add altic-mcp:
codex mcp add altic-mcp -- uvx --refresh --from git+https://github.com/altic-dev/altic-mcp.git altic-mcpOr manually add to ~/.codex/config.toml:
[mcp_servers.altic-mcp]
command = "uvx"
args = ["--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"]See Codex MCP docs for more info.
JetBrains (AI Assistant)
In JetBrains IDEs, go to Settings β Tools β AI Assistant β Model Context Protocol (MCP), click + Add, select As JSON, and paste the JSON configuration above. See JetBrains MCP docs for more info.
Gemini CLI
Add to ~/.gemini/settings.json:
{
"mcpServers": {
"altic-mcp": {
"command": "uvx",
"args": ["--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"]
}
}
}See Gemini CLI docs for more info.
OpenCode
Add to your opencode.json (project-level) or ~/.config/opencode/opencode.json (global):
{
"mcp": {
"altic-mcp": {
"type": "local",
"command": ["uvx", "--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"],
"enabled": true
}
}
}See OpenCode MCP docs for more info.
Both the manual config (Option 1) and bash installer (Option 2) use uvx --refresh, which automatically re-fetches the latest version from GitHub whenever you restart Claude. No manual intervention needed.
If you removed --refresh for faster startup, force an update with:
uv cache clean altic-mcpThen restart Claude Desktop.
-
Locate your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- macOS:
-
Edit the config file:
- Open the file in a text editor
- Find and remove the
"altic-mcp"entry from the"mcpServers"section - Save the file
Example β remove this section:
"altic-mcp": {
"command": "uvx",
"args": ["--refresh", "--from", "git+https://github.com/altic-dev/altic-mcp.git", "altic-mcp"]
}Close and restart Claude Desktop to complete the removal.
If Claude won't start after editing the config:
- Check that your JSON is valid (no trailing commas, matched braces)
- Restore from the backup created by the bash installer (
.bak.*file next to your config) - Re-run the bash installer to regenerate a valid config
For contributors who want to run altic-mcp from a local checkout:
# Install UV if needed
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and setup
git clone https://github.com/altic-dev/altic-mcp.git
cd altic-mcp
uv sync
# Run the server directly
uv run server.py
# Or build and run via the installed entry point
uv build
uvx --from dist/altic_mcp-0.1.0-py3-none-any.whl altic-mcpβ Auto-Updates: No β requires manual git pull to update
π Manual Update: cd altic-mcp && git pull && uv sync
ποΈ Uninstall: Remove the cloned directory and the MCP server entry from your client config
- β Contacts - For search_contacts
- β Calendars - For calendar events
- β Reminders - For creating reminders
- β Automation - Allow Claude to control apps (Messages, Notes, Safari)
- β Finder Automation - For Finder selection, reveal, and Trash file tools
- β Accessibility - Required for screen glow, system controls, and window management tools such as focus_window, move_window, resize_window, center_window, tile_windows, minimize, hide_app, and quit_app
- β Screen Recording - Required for screenshot capture tools and improves window title/id discovery for list_windows on recent macOS versions
Clipboard text operations normally do not require extra permissions. Clipboard file and image operations use macOS pasteboard APIs and may prompt for security approval depending on the host app and OS settings.
Safari β Develop β Allow JavaScript from Apple Events β (Required for Safari tools)
Note: If "Develop" menu is not visible, enable it in Safari β Settings β Advanced β Show Develop menu
- Install Google Chrome
- The MCP server can auto-start Chrome with
--remote-debugging-portwhen opening a CDP session - If auto-start fails, launch manually:
open -a "Google Chrome" --args --remote-debugging-port=9222macOS will prompt for permissions when first used. Grant them to enable full functionality.