mac-messages
Mac Messages Host
Ваш полный архив Apple Messages (iMessage/SMS) на Mac в режиме «только чтение» для ИИ‑агентов — один пакетный инструмент через REST/OpenAPI и потоковый HTTP MCP.
Один инструмент, пакетные запросы: один инструмент
messages(requests: str)принимает JSON-массив запросов и возвращает согласованный JSON-массив ответов — один вызов выполняет много независимых операций. Одинаково работает через REST (POST /api/messages) и MCP (/mcp/).Только чтение по построению: база данных открывается с SQLite
mode=ro; пути записи нет. Ничего нельзя отправить, изменить или удалить.Современное декодирование текста macOS: текст сообщений, хранящийся в typedstream-блоках
attributedBody(Ventura+), и история редактирования в plist-файлахmessage_summary_infoдекодируются прозрачно.Автогенерируемое описание инструмента: описание для ИИ генерируется из моделей Pydantic (~615 токенов gpt-4o, подсчитанных через
tiktokenи закреплённых тестом); снапшотtool_prompt.mdсинхронизируется drift-тестом.
Установка
Требуется Python 3.11+ на macOS.
pip install . # or: pip install -e . for development
mmhost info # permission check + database status
mmhost start # serve API + MCP on http://127.0.0.1:8761Разрешения macOS (важно)
~/Library/Messages/chat.db защищён macOS TCC. Процесс, который запускает mmhost, должен иметь полный доступ к диску:
Системные настройки → Конфиденциальность и безопасность → Полный доступ к диску → включите ваше приложение терминала (или то, что запускает сервер), затем перезапустите его.
mmhost info сразу показывает, доступна ли база данных для чтения.
Related MCP server: imessage-mcp
Эндпоинты
Эндпоинт | Назначение |
| Пакетный инструмент (REST) |
| Схема OpenAPI |
| Интерактивная документация |
| Проверка живости |
| Потоковый HTTP MCP-эндпоинт (один инструмент |
Авторизация
Authorization: Bearer <token>, когда настроен admin_token (сохранённый конфиг, MMHOST_ADMIN_TOKEN или --admin-token). Без настроенного токена доступ открыт — это безопасно, поскольку по умолчанию сервер слушает 127.0.0.1.
Типы запросов
get_info— состояние базы данных, количество записей, диапазон дат историиlist_chats— разговоры по недавней активности (сортировка, фильтрация)get_chat— транскрипт чата (постраничная загрузка более старых черезbefore)get_recent— последние сообщения во всех чатах (опрос черезsince)search_messages— поиск подстроки без учёта регистра по тексту сообщений
См. tool_prompt.md — точную документацию для ИИ (сгенерированную из моделей).
Пример
curl -s http://127.0.0.1:8761/api/messages \
-H 'Content-Type: application/json' \
-d '{"requests": "[{\"kind\":\"list_chats\",\"limit\":3}]"}'Конфигурация MCP-клиента
{
"mcpServers": {
"mac-messages": {
"type": "streamable-http",
"url": "http://127.0.0.1:8761/mcp/"
}
}
}Конфигурация
Хранится в системном каталоге конфигурации (~/Library/Application Support/mac_messages_host/config.json на macOS); расположение можно переопределить через MMHOST_CONFIG. Только настройки уровня сервера — см. example.env.
Разработка
pip install -e '.[dev]'
pytest
# after changing request models:
python -m tests.regenerate_tool_promptАрхитектура следует паттерну oWoHo AI Tool Server (чистая core-библиотека + производные интерфейсы FastAPI/FastMCP/CLI), как reddit_tool_server и obsidian_ai_miniserver.
Лицензия
MIT — см. LICENSE.md.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to read, search, and send iMessages with features like contact name resolution, session grouping, and attachment listing. It provides intent-aligned tools to efficiently navigate conversation history and manage messages through natural language queries.6MIT
- AlicenseNot gradedqualityDmaintenanceEnables reading and sending iMessages on macOS through MCP, with tools for managing chats, messages, and attachments via AI agents.MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI clients to read and search macOS Messages history through a read-only MCP interface.-
- AlicenseAqualityAmaintenanceEnables AI agents on macOS to securely read and search the local Messages database, catch up on missed messages via a persistent inbox, and send texts or files to allowlisted chats, with optional voice note transcription and text-to-speech.10353 npmMIT