Server profile

iMCP MCP Server

Connect an MCP assistant to selected macOS personal-data services through a menu-bar app. iMCP exposes calendar, contacts, messages, reminders, location, maps, and weather capabilities with explicit system permissions.

Server facts

iMCP MCP Server

Tech

Runtime / language
swiftSwift
Transports
stdio
Remote available
No
Authentication
Not specified

Activity

GitHub stars
1,772
Last commit
Data as of

Tags

  • Calendar
  • Contacts
  • Macos
  • Personal Data
  • Swift

Overview

iMCP is a macOS application that makes selected personal-data services available to MCP assistants. Its menu-bar interface lets users activate calendar, contacts, messages, reminders, location, maps, and weather capabilities. The documented actions range from finding contacts and reading message history to creating reminders or calendar events. Mapping features include place searches, directions, travel estimates, and static map images, giving an assistant several ways to combine local context with location-based questions.

Access is enabled service by service through macOS permission dialogs. The README says iMCP does not collect or retain user data, but explicitly warns that connected clients can transmit retrieved information off the device during tool use. Message access uses a separately selected local database file because Apple does not provide a public messages API. These permissions and client trust prompts are an essential part of the workflow, not just optional setup details.

The app bundles an imcp-server executable that communicates with MCP clients over stdio. The command-line bridge and app discover each other through Bonjour and relay requests locally. Tool results use JSON-LD with Schema.org vocabularies. Installation is available as an app download or Homebrew cask and requires macOS 15.3 or later. The app can configure Claude Desktop while preserving existing entries, and the README also provides connections for Claude Code and Amp. Only a contact-fetching tool is named explicitly in the supplied text; other capabilities are described by service.

Install & configure

Requirements

  • macOS 15.3 or later
  • iMCP app installed and open
  • Permissions granted for the chosen services
  • An MCP-compatible client
Documented launch / install command
/Applications/iMCP.app/Contents/MacOS/imcp-server

The executable path appears in the README's Claude Code and Amp commands. Install the app from its download page or with brew install --cask mattt/tap/iMCP. Activate services in the app and approve the connecting client.

Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Desktop configuration
{
  "mcpServers": {
    "iMCP": {
      "command": "/Applications/iMCP.app/Contents/MacOS/imcp-server",
      "args": [],
      "env": {}
    }
  }
}

Read the Claude Desktop setup guide

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.

Cursor configuration
{
  "mcpServers": {
    "iMCP": {
      "command": "/Applications/iMCP.app/Contents/MacOS/imcp-server",
      "args": [],
      "env": {}
    }
  }
}

Read the Cursor setup guide

Config file · Workspace: .vscode/mcp.json

For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.

VS Code configuration
{
  "servers": {
    "iMCP": {
      "type": "stdio",
      "command": "/Applications/iMCP.app/Contents/MacOS/imcp-server",
      "args": [],
      "env": {}
    }
  }
}

Read the VS Code setup guide

Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json

Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json

Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.

Windsurf configuration
{
  "mcpServers": {
    "iMCP": {
      "command": "/Applications/iMCP.app/Contents/MacOS/imcp-server",
      "args": [],
      "env": {}
    }
  }
}

Read the Windsurf setup guide

Config file · Project scope: .mcp.json at the repository root

The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Code configuration
{
  "mcpServers": {
    "iMCP": {
      "type": "stdio",
      "command": "/Applications/iMCP.app/Contents/MacOS/imcp-server",
      "args": [],
      "env": {}
    }
  }
}

Read the Claude Code setup guide

Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.

Tools

Source: repository README. Tool descriptions are a documented snapshot, not a live capability check.

ToolWhat it does
fetchContactsRetrieve contact records through Apple's Contacts framework as JSON-LD.

Names, permissions, and defaults can change. Check the current upstream documentation before granting access.

Use cases

  • Ask an assistant to inspect calendar events or create a reminder.
  • Find a contact using a name, email address, or phone number.
  • Read message history for selected participants and dates.
  • Combine current location with weather or route questions.

Strengths

  • Uses macOS permissions to enable services individually.
  • Bundles the stdio bridge with the application.
  • Provides structured JSON-LD results.
  • Can update Claude Desktop configuration without replacing other servers.

Limitations

  • Requires macOS 15.3 or newer.
  • Connected AI clients may send retrieved personal data off device.
  • Message access needs explicit selection of the local message database.

Frequently asked questions

The app download instructions require macOS 15.3 or later.

No. Services start inactive and are enabled individually after the relevant permission prompt.

No. The README warns that clients such as Claude Desktop send tool data off device, even though iMCP itself does not collect or store it.

The bundled imcp-server process uses stdio with the client and relays requests to the app through local Bonjour discovery.

Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.

Related MCP servers

Desktop Commander MCP

Mobile & Desktop Automation

Desktop Commander MCP gives assistants local file, document, terminal, and process-management tools. It supports interactive and long-running commands alongside search, focused edits, and workflows involving spreadsheets, PDFs, and Word files.

Mobile Next Mobile MCP

Mobile & Desktop Automation

Mobile Next Mobile MCP lets agents interact with iOS and Android apps on simulators, emulators, and real devices. It uses accessibility data where available and screenshot-based coordinates when needed.

Windows-MCP

Mobile & Desktop Automation

Let an AI assistant interact with Windows applications, windows, and input controls. Windows-MCP supports native UI automation, optional browser DOM inspection, and local or network transports.

iOS Simulator MCP Server

Mobile & Desktop Automation

Let an MCP assistant inspect and operate an iOS simulator on macOS. Tools cover accessibility inspection, gestures, app lifecycle actions, screenshots, and video capture for development and QA.

Home Assistant MCP Server

Mobile & Desktop Automation

Home Assistant MCP Server connects assistants to smart-home controls, state monitoring, and administration. It documents HTTP APIs, live events, automation management, and optional HACS and Supervisor operations.

Android MCP Server

Mobile & Desktop Automation

Android MCP Server exposes ADB-based device operations to MCP clients. Developers can inspect installed packages, capture screenshots, examine clickable UI elements, and run device commands.