Data as of

iMCP for VS Code: Setup & Config

VS Code: 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.

What you can do with iMCP in VS Code

Choose it for permission-controlled access to macOS personal services through an MCP assistant.

  • Ask an assistant to inspect calendar events or create a reminder.
  • Read message history for selected participants and dates.

Before you start: iMCP in VS Code

  • macOS 15.3 or later
  • iMCP app installed and open
  • Permissions granted for the chosen services
  • An MCP-compatible client

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.

iMCP VS Code configuration

  1. Choose VS Code configuration scope

    For iMCP, open Workspace: .vscode/mcp.json. Merge into servers; preserve existing inputs.

  2. Add iMCP to VS Code

    Use the iMCP entry below in servers. Keep iMCP's documented stdio connection fields and your other VS Code entries.

  3. Check iMCP in VS Code

    iMCP: Start in VS Code’s MCP controls; inspect output and trust prompts.

Config file · Workspace: .vscode/mcp.json

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

iMCP tools available to VS Code

iMCP's stored tool list documents 1 tool; compare it with VS Code's connected tool list, because the stored list is not a live check.

fetchContacts

Look for fetchContacts among VS Code's agent-mode tools after starting iMCP through the MCP controls.

Retrieve contact records through Apple's Contacts framework as JSON-LD.

iMCP: full stored tool descriptions

Troubleshooting iMCP in VS Code

  • Make imcp-server available in the workspace, container, or remote environment hosting iMCP. Start through VS Code's MCP controls; inspect output and trust prompts.
  • iMCP uses stdio here: VS Code must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Requires macOS 15.3 or newer.
  • Known limitation: Connected AI clients may send retrieved personal data off device.
  • Known limitation: Message access needs explicit selection of the local message database.
  • General VS Code troubleshooting lives in the /clients/vscode guide.

iMCP — details. VS Code guide

Frequently asked questions

For iMCP, edit workspace .vscode/mcp.json. VS Code requires servers rather than mcpServers; preserve the displayed type on each entry.

VS Code's iMCP example uses stdio.

iMCP's VS Code configuration invokes imcp-server.

iMCP's stored list contains 1 tool, including fetchContacts. Compare those names with VS Code's connected tool list; the stored list is not a live check.

The app download instructions require macOS 15.3 or later.

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.