osa-mcp
Automatically discovers all scriptable macOS apps and generates MCP tools for them, giving AI access to apps like Mail, Calendar, and Finder without any configuration.
README
osa-mcp
Give your AI access to every scriptable app on your Mac.
osa-mcp is an MCP server that automatically discovers all scriptable macOS apps (Mail, Calendar, Finder, Music, Notes, Safari, &c.) and generates tools for them. No configuration, no hardcoded app list. Just connect and go.
What you do
npx
claude mcp add my-mac -- npx -y osa-mcp
bunx
claude mcp add my-mac -- bunx osa-mcp
Homebrew
brew install MayCXC/osa-mcp/osa-mcp
claude mcp add my-mac -- osa-mcp
Remote Mac via SSH
If your AI runs on a different machine, connect to your Mac over SSH. Enable Remote Login in System Settings > General > Sharing first.
claude mcp add my-mac -- npx -y osa-mcp --ssh user@macbook.local
JSON config
All of the above can also be added to your MCP settings file directly:
{
"mcpServers": {
"my-mac": {
"type": "stdio",
"command": "npx",
"args": ["-y", "osa-mcp"]
}
}
}
For SSH, add "--ssh", "user@macbook.local" to the args.
What you get
On a typical Mac, osa-mcp generates ~700 tools in ~4 seconds. Every tool includes descriptions pulled from the app's scripting dictionary, so your AI knows what each tool does, what parameters it takes, and what values they accept.
Commands let your AI perform actions:
mail_send,mail_reply,mail_forwardfinder_reveal,finder_move,finder_duplicatemusic_play,music_pause,music_searchcalendar_show,reminders_show,notes_showsafari_do_javascript,safari_search_the_webmessages_send,terminal_do_script
Lists and gets let your AI read data:
mail_list_messages,mail_get_messagecalendar_list_events,calendar_list_calendarsfinder_list_files,finder_list_disksnotes_list_notes,reminders_list_reminderssafari_list_tabs,safari_list_documents
Application properties expose app settings:
mail_get_applicationreturns inbox, fetch interval, primary email, etc.finder_get_applicationreturns desktop, trash, home, startup disk, etc.music_get_applicationreturns current track, player state, etc.
Execute runs arbitrary AppleScript or JXA for anything the generated tools don't cover.
Navigating the object hierarchy
Many tools accept a parent parameter for navigating into nested objects:
// List events in a specific calendar
{ "parent": ["calendars", "byName", ["Work"]] }
// List messages in the inbox
{ "parent": ["inbox"] }
// Get the first window's current tab
{ "parent": ["windows", 0] }
Path steps: "key" accesses a property, 0 accesses by index, [] calls a method, ["arg"] calls with arguments.
Install from source
git clone https://github.com/MayCXC/osa-mcp.git
cd osa-mcp
bun install
bun link
claude mcp add my-mac -- osa-mcp
Requires Bun.
License
BSD 3-Clause. See LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.