apple-icloud-mcp 0.2.1 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +7 -5
- package/THIRD_PARTY_NOTICES.md +1169 -62
- package/dist/bundle.js +831 -291
- package/dist/dav/client.js +7 -0
- package/dist/mail/message.js +10 -1
- package/dist/mail/tools.js +81 -2
- package/dist/tools/_confirm.js +20 -7
- package/dist/version.js +1 -1
- package/mint.yaml +4 -3
- package/package.json +2 -2
- package/server.json +2 -2
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Unofficial Apple Music, iCloud Calendar/Contacts/Mail, Apple Maps and WeatherKit tools for Claude Code",
|
|
9
|
-
"version": "0.
|
|
9
|
+
"version": "0.3.1"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"displayName": "Apple iCloud",
|
|
15
15
|
"source": "./",
|
|
16
16
|
"description": "Apple Music playlists and library, iCloud Calendar, Contacts and Mail, Apple Maps, WeatherKit and iTunes search for Claude via MCP — runs anywhere, no Mac required. Unofficial; not affiliated with Apple.",
|
|
17
|
-
"version": "0.
|
|
17
|
+
"version": "0.3.1",
|
|
18
18
|
"author": {
|
|
19
19
|
"name": "Chris Chall"
|
|
20
20
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apple-icloud",
|
|
3
3
|
"displayName": "Apple iCloud",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.3.1",
|
|
5
5
|
"description": "Apple Music playlists and library, iCloud Calendar, Contacts and Mail, Apple Maps, WeatherKit and iTunes search for Claude via MCP — runs anywhere, no Mac required. Unofficial; not affiliated with Apple.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Chris Chall"
|
package/README.md
CHANGED
|
@@ -236,9 +236,10 @@ The package ships a [`mint.yaml`](mint.yaml) that mcp-host reads when you regist
|
|
|
236
236
|
|
|
237
237
|
Give it your time zone (`DISPLAY_TZ`): the runner is on UTC, and times you give without an offset ("3pm") are
|
|
238
238
|
read in `DISPLAY_TZ` — so are calendar events stored without a time zone of their own ("floating"), whatever
|
|
239
|
-
`timeZone` a call passes.
|
|
240
|
-
|
|
241
|
-
recorded on disk, so
|
|
239
|
+
`timeZone` a call passes. Confirmation tokens survive a restart on their own: mcp-host gives a child with a
|
|
240
|
+
`dataDir` a stable per-child key (`MCP_HOST_CONFIRM_SECRET`), so a preview approved after the child idled out
|
|
241
|
+
(or was redeployed) still works. Spent tokens are recorded on disk, so none can be replayed. An owner-set
|
|
242
|
+
`MCP_CONFIRM_SECRET` takes precedence over the host's key.
|
|
242
243
|
|
|
243
244
|
## Tools
|
|
244
245
|
|
|
@@ -312,6 +313,7 @@ recorded on disk, so a shared secret does not let one be replayed.
|
|
|
312
313
|
| `apple_mail_list_mailboxes` | List the iCloud Mail mailboxes (folders): path, name, special use (inbox, sent, drafts, trash, junk, archive) and, by default, message and unread counts. | read | |
|
|
313
314
|
| `apple_mail_search` | Search emails in one iCloud Mail mailbox (default INBOX) by sender, recipient, subject, full text, received date range, unread and flagged state. | read | |
|
|
314
315
|
| `apple_mail_get_message` | Read one iCloud Mail message by uid (from apple_mail_search): headers (from, to, cc, reply-to, date, subject, message-id), the body as plain text (HTML converted to readable text when there is no text part), a truncated flag, and attachm… | read | |
|
|
316
|
+
| `apple_mail_download_attachment` | Download one attachment as an embedded binary resource using its 1-based index from `apple_mail_get_message`; defaults to 10 MiB, max 20 MiB, and never marks the message read. | read | |
|
|
315
317
|
| `apple_mail_send` | Send a plain-text email from your iCloud Mail address (to/cc/bcc, subject, body; no attachments). | all | yes |
|
|
316
318
|
| `apple_mail_update_flags` | Mark iCloud Mail messages read or unread, and flag or unflag them, by uid (1–100 uids from apple_mail_search, one mailbox). | all | |
|
|
317
319
|
| `apple_mail_move` | Move iCloud Mail messages (1–100 uids from apple_mail_search, one mailbox) to another mailbox: a path from apple_mail_list_mailboxes or an alias (inbox, archive, trash, junk, sent, drafts). | all | |
|
|
@@ -369,7 +371,7 @@ target changed in between.
|
|
|
369
371
|
|---|---|
|
|
370
372
|
| `MCP_CONFIRM_MODE` | `ask-user` (default — the model must get your OK before repeating the call), `auto` (the model may confirm after reviewing the preview), `refuse` (never). Unknown values mean `refuse`. |
|
|
371
373
|
| `MCP_CONFIRM_TTL_SECONDS` | How long a token is valid (default 600). |
|
|
372
|
-
| `MCP_CONFIRM_SECRET` | Token signing key; random per process by default. Set it so a token survives a restart; spent tokens are recorded on disk (`confirm-spent.json`), so none can be replayed (unless `APPLE_STATE_CACHE=false` or the directory is unwritable — a warning says so). |
|
|
374
|
+
| `MCP_CONFIRM_SECRET` | Token signing key; random per process by default (on mcp-host, the host's per-child `MCP_HOST_CONFIRM_SECRET` beside an absolute `MCP_DATA_DIR` is used instead). Set it so a token survives a restart; spent tokens are recorded on disk (`confirm-spent.json`), so none can be replayed (unless `APPLE_STATE_CACHE=false` or the directory is unwritable — a warning says so). |
|
|
373
375
|
|
|
374
376
|
## Environment variables
|
|
375
377
|
|
|
@@ -444,7 +446,7 @@ All optional; each service activates when its credentials are present. Values th
|
|
|
444
446
|
Notes and Photos natively.
|
|
445
447
|
- **Playing music.** Apple's web APIs manage your library; playback happens in an Apple Music app.
|
|
446
448
|
- **Creating or deleting calendars** — iCloud's CalDAV server does not reliably support it.
|
|
447
|
-
- **Mail
|
|
449
|
+
- **Mail attachment sending** — outgoing mail is plain text. Incoming attachments can be downloaded with `apple_mail_download_attachment`.
|
|
448
450
|
|
|
449
451
|
## Troubleshooting
|
|
450
452
|
|