Skip to content
Agentmart
Submit a tool

Apple Messages

Search and read Apple Messages — chats and decoded text, sending off by default

Connector by mgcrea · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 5
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/mgcrea-mcp-apple-messages

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Search and read Apple Messages — chats and decoded text, sending off by default

Use cases: team-chat

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
7 read · 1 write · 1 delete
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 9

Read from the source code; the running server may list different tools.

Read 7 · Look things up without changing anything.

  • apple_messages_count_messages
  • apple_messages_diagnostics
  • apple_messages_find_codes
  • apple_messages_get_message
  • apple_messages_list_chats
  • apple_messages_list_messages
  • apple_messages_search_messages

Write 1 · Create, change, send or run things.

  • apple_messages_save_attachment

Delete 1 · Delete, drop, revoke or wipe things.

  • apple_messages_send_message

Secrets and settings it asks for

Other settings (environment variables or headers).

  • APPLE_MESSAGES_ALLOW_CODES
  • APPLE_MESSAGES_ALLOW_FILE_SEND
  • APPLE_MESSAGES_ALLOW_WRITES

Network hosts it talks to 2

  • cupertino.mgcrea.io · found in code
  • github.com · found in code

Files it touches

  • Your home directory (~)
  • Any path the agent passes to its tools

Tools (9)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • apple_messages_count_messagesread-only

    Count messages without reading them. Answers 'how many', 'how many did I send', 'who do I message most' and 'which month was busiest' as arithmetic the store does, rather than a page of conversations you tally by hand. Every result splits `sent` and `received`. `groupBy` counts per day, month, chat, handle or direction, over EVERY match rather than the first `limit` of them — `limit` caps how many groups come back. Grouping by handle is the one to reach for when a person has several conversations, since apple_messages_list_chats already gives you per-CHAT totals. Counts metadata only: there …

  • apple_messages_diagnosticsread-only

    Report whether the Messages store could be opened, how much is in it, whether names are being resolved, and what this server cannot do. Start here when a read returns nothing.

  • apple_messages_find_codesread-only

    Description is built at runtime.

  • apple_messages_get_messageread-only

    One message in full, with its tapbacks and attachments. Reactions are reported here rather than mixed into the conversation, which is the whole reason list_messages filters them out.

  • apple_messages_list_chatsread-only

    List conversations, most recently active first, with their participants and message counts. Names come from Contacts where they resolve; where they do not, the raw phone number or email is shown and `resolution` says why. Use the returned ref to read one conversation with apple_messages_list_messages.

  • apple_messages_list_messagesread-only

    Read messages, newest first — the whole store, or one conversation, or a date window. Tapbacks are excluded by default because they are rows in the same table and would otherwise read as messages nobody typed. Every message carries `from.name` where Contacts resolves it and `from.handle` always. `from.resolution` is worth reading: `unknown` is COMMON AND NOT AN ERROR — measured on a real store, about one in six of even the busiest correspondents has no contact card.

  • apple_messages_save_attachment

    Save one attachment from a conversation to disk — a photo, a video, a PDF, a voice memo. Take the `id` from an attachment on apple_messages_get_message. Needs Full Disk Access, like every read here. It can only write into APPLE_MESSAGES_ATTACHMENT_DIR (default ~/Downloads) and will not overwrite an existing file unless you ask it to. Write-gated because it puts a file on the user's disk, even though it changes nothing in Messages. An attachment iCloud has offloaded has no bytes on this Mac and is refused with that reason — open the conversation in Messages to pull it down first.

  • apple_messages_search_messagesread-only

    Search message text across every conversation. Matches are substring and case-insensitive. This searches ALL messages, including the roughly 3% whose text lives only in an archived blob rather than in a plain column — those are invisible to any SQL query and are decoded here. `textSource` on each result says which produced it.

  • apple_messages_send_messagecan change or delete data

    Description is built at runtime.

Signals

Stars
5
Forks
0
Open issues
2
Weekly downloads
319
Last commit (this folder)
Oct 22, 2026 (7 days ago)
Last release
Oct 25, 2026 (4 days ago)
Last package publish
Oct 22, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.mgcrea/mcp-apple-messages
Version
1.31.0
Auth
No auth
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 26, 2026

More from mgcrea

Cite this page

Apple Messages MCP server. Agent Mart. https://agentmart.dev/connectors/mgcrea-mcp-apple-messages (last updated 2026-10-26)