How to Connect Jan AI to Your Mac Apps
Jan runs AI models locally on your Mac. LMCP gives Jan 230+ local tools — Mail, Calendar, Messages, Files, Teams and more. Model and tools both on-device: nothing leaves your Mac.
A fully local AI stack
Jan is an open-source desktop app that runs LLMs locally on your Mac (via llama.cpp / MLX). LMCP is a local MCP server that gives an AI access to your real Mac apps. Put them together and you get something rare: the model AND the tools both run on your machine — your email, calendar, messages and files never leave the Mac, and no API keys or cloud accounts are involved.
Ask Jan things like:
- “Summarize my unread email from this week.”
- “What’s on my calendar tomorrow?”
- “Find the iMessage where Marco sent the address.”
Step 1: Install LMCP
Download and open the free installer (macOS 12+, Apple Silicon & Intel):
curl -fsSL 'https://local-mcp.com/install?ref=guide-jan-ai-mac' | bashOr download the app and open it. LMCP starts in your menu bar. It exposes a standard MCP server that Jan launches over stdio.
Step 2: Add LMCP to Jan
Important: Jan is a bit different from most MCP clients. It stores each server by name, so it wants the config without the outer mcpServers wrapper that Claude Desktop and Cursor use. Pasting the wrapped snippet gives a “Failed to extract command args from config for mcpServers” error. Use one of these:
Option A — the form (Settings → MCP Servers → + Add MCP Server):
- Server Name:
local-mcp - Transport Type: STDIO
- Command:
npx - Arguments: add two —
-yandlocal-mcp@latest
Option B — JSON (the {···} button), paste this — note there is no mcpServers wrapper:
{
"local-mcp": {
"command": "npx",
"args": ["-y", "local-mcp@latest"]
}
}Jan uses npx to launch the server, so you need Node.js installed.
Step 3: Enable it and try it
Save, then make sure the local-mcp server is toggled on (Jan starts new servers disabled). The status should turn active. Start a new chat and ask:
List my email accountsJan calls the tool on your Mac and returns the result. That’s it — you now have a local AI with access to your real apps.
Troubleshooting
“Failed to extract command args from config for mcpServers” — you pasted the wrapped format. Remove the mcpServers wrapper and paste just the inner object (Option B above).
“Invalid package name” / EINVALIDPACKAGENAME — the arguments picked up stray quotes. In the form, type local-mcp@latest with no surrounding quotes.
The server won’t start — make sure the Local MCP app is running (menu-bar icon) and that npx is on your PATH (install Node.js). Then toggle the server off and on in Jan.