iMCP
iMCP — это приложение macOS для соединения вашей цифровой жизни с ИИ. Оно работает с Claude Desktop и растущим списком клиентов , которые поддерживают Model Context Protocol (MCP) .
Возможности
[!TIP] Есть предложение по новой возможности? Свяжитесь с нами по адресу imcp@loopwork.com
Related MCP server: contacts-mcp
Начиная
Загрузите и откройте приложение
Сначала загрузите приложение iMCP (требуется macOS 15.3 или более поздняя версия).
Открыв приложение, вы увидите значок в строке меню.
Нажатие на этот значок открывает меню iMCP, в котором отображаются все доступные службы. Изначально все службы будут отображаться серым цветом, что означает, что они неактивны.
Синий переключатель вверху указывает на то, что сервер MCP запущен и готов к подключению к клиентам, совместимым с MCP.
Активировать услуги
Чтобы активировать службу, щелкните по ее значку. Система предложит вам диалоговое окно с разрешением. Например, при активации доступа к календарю вы увидите диалоговое окно с вопросом "iMCP" Would Like Full Access to Your Calendar . Щелкните Разрешить полный доступ, чтобы продолжить.
[!ВАЖНО] iMCP не собирает и не хранит ваши данные. Клиенты, такие как Claude Desktop, отправляют ваши данные с устройства как часть вызовов инструментов.
После активации значки каждой службы меняют цвет с серого на свой собственный: красный для календаря, зеленый для сообщений, синий для местоположения и т. д.
Повторите этот процесс для всех возможностей, которые вы хотите включить. Эти разрешения соответствуют стандартной модели безопасности Apple, предоставляя вам полный контроль над тем, к какой информации iMCP может получить доступ.
Подключиться к Claude Desktop
Если у вас не установлен Claude Desktop, вы можете скачать его здесь .
Откройте Claude Desktop и перейдите в «Настройки... (⌘,)». Нажмите «Разработчик» на боковой панели панели настроек, а затем нажмите «Изменить конфигурацию». Это создаст файл конфигурации в ~/Library/Application Support/Claude/claude_desktop_config.json .
Чтобы подключить iMCP к Claude Desktop, нажмите > «Настроить Claude Desktop».
Это добавит или обновит конфигурацию сервера MCP для использования исполняемого файла imcp-server включенного в приложение. Другие конфигурации сервера MCP в файле будут сохранены.
Нажмите > «Копировать команду сервера в буфер обмена». Затем откройте claude_desktop_config.json в вашем редакторе и введите следующее:
{
"mcpServers" : {
"iMCP" : {
"command" : "{paste iMCP server command}"
}
}
}Вызов инструментов iMCP из Claude Desktop
Выйдите и снова откройте приложение Claude Desktop. Вам будет предложено одобрить подключение.
[!ПРИМЕЧАНИЕ] Вы можете увидеть это диалоговое окно дважды; нажмите «Одобрить» оба раза.
После одобрения подключения вы должны увидеть 🔨12 в правом нижнем углу окна чата. Нажмите на него, чтобы увидеть список всех инструментов, доступных Клоду iMCP.
Теперь вы можете задавать Клоду вопросы, требующие доступа к вашим персональным данным, например:
«Какая погода там, где я нахожусь?»
Клод будет использовать соответствующие инструменты для извлечения этой информации, предоставляя вам точные персонализированные ответы, не требуя от вас вручную предоставлять эти данные во время разговора.
Технические подробности
Приложение и CLI
iMCP — это приложение для macOS, которое объединяет исполняемый файл командной строки imcp-server .
iMCP.appпредоставляет пользовательский интерфейс для настройки служб и, что самое важное, средства взаимодействия с системными разрешениями macOS, чтобы иметь доступ к контактам, календарю и другой информации.imcp-serverпредоставляет сервер MCP, который использует стандартный ввод/вывод для связи ( транспорт stdio ).
Приложение и CLI взаимодействуют друг с другом в локальной сети, используя Bonjour для автоматического обнаружения. Оба объявляют службу с типом "_mcp._tcp" и доменом "local". Запросы от клиентов MCP считываются CLI из stdin и передаются в приложение; ответы от приложения принимаются CLI и записываются в stdout . Подробности реализации см. в StdioProxy .
Для этого проекта мы создали mcp-swift-sdk : Swift SDK для серверов и клиентов Model Context Protocol. Приложение использует этот пакет для обработки прокси-запросов от клиентов MCP.
Доступ к базе данных iMessage
Apple не предоставляет публичных API для доступа к вашим сообщениям. Однако приложение Messages на macOS хранит данные в базе данных SQLite, расположенной по адресу ~/Library/Messages/chat.db .
iMCP работает в App Sandbox , что ограничивает его доступ к пользовательским данным и системным ресурсам. Когда вы включаете службу сообщений, вам будет предложено открыть файл chat.db через стандартный выбор файлов. Когда вы это сделаете, macOS добавит этот файл в песочницу приложения. NSOpenPanel — это магия, как эта.
Но открыть базу данных iMessage — это только полдела. За последние несколько лет Apple отошла от хранения сообщений в виде простого текста и перешла на собственный формат typedstream .
Для этого проекта мы создали Madrid : пакет Swift для чтения вашей базы данных iMessage. Он включает реализацию Swift для декодирования формата typedstream Apple, адаптированную из проекта imessage-exporter Кристофера Сарденьи и записи в блоге о реверс-инжиниринге typedstream .
JSON-LD для результатов инструмента
Инструменты, предоставляемые iMCP, возвращают результаты в виде документов JSON-LD . Например, инструмент fetchContacts использует фреймворк Contacts , который представляет людей и организации с типом CNContact . Вот как объект этого типа кодируется как JSON-LD:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Loopwork Limited",
"url": "https://loop.work"
}Schema.org предоставляет стандартные словари для людей, почтовых адресов, событий и многих других объектов, которые мы хотим представить. А JSON-LD — это удобный формат кодирования для людей, ИИ и обычного программного обеспечения.
Для этого проекта мы создали Ontology : пакет Swift для работы со структурированными данными. Он включает удобные инициализаторы для типов из фреймворков Apple, например, возвращаемых инструментами iMCP.
Отладка
Использование MCP-инспектора
Для отладки взаимодействия между iMCP и клиентами можно использовать инструмент инспектора (требуется Node.js):
Нажмите > «Копировать команду сервера в буфер обмена»
Откройте терминал и выполните следующие команды:
# Download and run inspector package on imcp-server npx @modelcontextprotocol/inspector [paste-copied-command] # Open inspector web app running locally open http://127.0.0.1:6274
Этот инструмент позволяет просматривать все запросы и ответы между клиентом и сервером iMCP, что полезно для понимания того, как работает протокол.
Благодарности
Джастину Спар-Саммерсу ( @jspahrsummers ), Дэвиду Сориа Парре ( @dsp-ant ) и Эшвину Бхату ( @ashwin-ant ) за их работу над MCP.
Кристоферу Сарденья ( @ReagentX ) за обратную разработку формата
typedstream, используемого приложением «Сообщения».
Лицензия
Данный проект лицензирован по лицензии Apache License версии 2.0.
Юридический
iMessage® является зарегистрированной торговой маркой Apple Inc.
Этот проект не связан, не одобрен и не спонсируется Apple Inc.
This server cannot be installed
Maintenance
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
- Alicense-qualityFmaintenanceA Model Context Protocol server for reading iMessage data from macOS.Last updated29MIT
- Alicense-qualityDmaintenanceLocal MCP server that exposes Apple Contacts data, enabling phone, email, and name lookups via a helper app.Last updated27MIT
- Alicense-qualityDmaintenanceEnables reading, sending, and managing iMessage conversations on macOS through MCP.Last updated1MIT
- Alicense-qualityBmaintenanceMCP server for reading and sending iMessages on macOS. Exposes iMessage history and send capabilities through tools like list_conversations and send_imessage.Last updated22MIT
Related MCP Connectors
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent
MCP server wrapping the Tesla Fleet API and TeslaMate API
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/mattt/iMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server