imessage-mcp
imessage-mcp
Локальный MCP-сервер, который предоставляет данные iMessage вашего Mac для Claude Desktop / Claude Code. Два интерфейса:
ОТПРАВКА через AppleScript →
Messages.appЧТЕНИЕ через прямой доступ только для чтения к SQLite-базе
~/Library/Messages/chat.db
Всё работает локально. Никаких API-ключей, никаких сетевых вызовов.
Установка
# 1. Clone / copy into ~/mcp-servers/imessage-mcp
cd ~/mcp-servers/imessage-mcp
# 2. Create a Python 3.11+ venv and install deps
python3.12 -m venv .venv
.venv/bin/pip install -e .Related MCP server: imessage-mcp
Разрешения (обязательно)
Полный доступ к диску — чтобы мы могли читать chat.db
Системные настройки → Конфиденциальность и безопасность → Полный доступ к диску → включите для:
вашего терминала (например, Terminal, iTerm2, Ghostty), И
Claude.app(если используете Claude Desktop)
Автоматизация — чтобы мы могли управлять Messages.app
Системные настройки → Конфиденциальность и безопасность → Автоматизация → разверните ваш терминал / Claude.app
и переключите Messages в положение ВКЛ.
Приложение Messages.app должно быть запущено и выполнено под вашей учетной записью iMessage.
Если какой-то шаг с разрешениями пропущен, сервер выдаст ошибку с точным путем к настройкам, которые нужно открыть.
Конфигурация Claude Desktop
Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"imessage": {
"command": "/Users/YOUR_USERNAME/mcp-servers/imessage-mcp/.venv/bin/python",
"args": ["-m", "imessage_mcp.server"]
}
}
}(Абсолютный путь к python в venv — самый надежный вариант, он позволяет избежать неоднозначности PATH. Замените YOUR_USERNAME.)
Инструменты
Инструмент | Назначение |
| Отправка через Messages.app. |
| Чаты от новых к старым с предпросмотром последнего сообщения и количеством непрочитанных. |
| Сообщения чата; укажите |
| Поиск по тексту сообщений (регистронезависимый LIKE). |
| Собственные идентификаторы + метаданные БД. |
Даты передаются в формате ISO8601. Внутри Apple хранит message.date как
количество наносекунд с 2001-01-01 UTC; сервер выполняет преобразование в обе стороны.
Инварианты безопасности
chat.dbоткрывается с помощьюsqlite3.connect("file:...chat.db?mode=ro", uri=True). Любая попытка записи вызываетsqlite3.OperationalError: attempt to write a readonly database.send_imessageпередает получателя / текст / сервис как отдельные аргументы osascript — никакой интерполяции оболочки, никакой инъекции.Вложения возвращают только метаданные (имя файла, mime_type, размер в байтах). Бинарные данные (blobs) никогда не считываются.
Ограничения
Запланированная / отложенная отправка не поддерживается.
Текст сообщений с ответами или сложным форматированием может храниться в
attributedBody(NSKeyedArchive). Мы стараемся извлечь встроенный NSString; сообщения с более экзотическими данными (изображения, реакции, Apple Pay) будут отображать пустое полеbody, но корректные метаданные.Подтверждение доставки:
send_imessageсообщает об успехе на основе кода выхода osascript. Чтобы убедиться, что сообщение действительно доставлено, вызовитеsearch_imessagesилиget_chat_messagesчерез несколько секунд.Это решение работает только на macOS и не будет работать в приложениях из App Store, работающих в «песочнице».
Локальная разработка
.venv/bin/pytest -qMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceA local server that enables Claude Desktop to interact with your macOS Contacts and Messages apps, allowing you to search contacts and send iMessages through natural language commands.21928MIT
- Alicense-qualityCmaintenanceA read-only MCP server for macOS that enables users to search through iMessage history and analyze conversation patterns using AI-powered tools. It provides detailed statistics on messaging habits, streaks, and contact analytics while keeping all data private and local.1041
- AlicenseAqualityCmaintenanceEnables full-text search of macOS iMessages including link preview metadata. Works as an MCP server for Claude Desktop to search your messages locally.1MIT
- FlicenseAqualityCmaintenanceA read-only MCP server that exposes your iMessage data to Claude Code and Claude Desktop, with automatic contact name resolution.3
Related MCP Connectors
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/camfortin/imessage-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server