icloud-mcp 1.4.0 → 1.4.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.
Files changed (3) hide show
  1. package/README.md +10 -3
  2. package/index.js +1 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -13,6 +13,7 @@ A Model Context Protocol (MCP) server that connects Claude Desktop to your iClou
13
13
  - ✅ Mark emails as read/unread, flag/unflag in bulk or individually
14
14
  - 🗂️ List, create, rename, and delete mailboxes
15
15
  - 🔄 Dry run mode for bulk operations — preview before committing
16
+ - 🔐 Safe move — emails are fingerprinted and verified in the destination before being removed from the source
16
17
  - 📝 Session logging — Claude tracks progress across long multi-step operations
17
18
 
18
19
  ## Prerequisites
@@ -120,6 +121,8 @@ Fully quit Claude Desktop (Cmd+Q) and reopen it. You should now be able to manag
120
121
  | `rename_mailbox` | Rename an existing folder |
121
122
  | `delete_mailbox` | Delete a folder (must be empty first) |
122
123
  | `empty_trash` | Permanently delete all emails in Deleted Messages |
124
+ | `get_move_status` | Check the status of the current or most recent bulk move operation |
125
+ | `abandon_move` | Abandon an in-progress move operation so a new one can start |
123
126
  | `log_write` | Write a step to the session log |
124
127
  | `log_read` | Read the session log to see what has been done so far |
125
128
  | `log_clear` | Clear the session log and start fresh |
@@ -141,13 +144,17 @@ Fully quit Claude Desktop (Cmd+Q) and reopen it. You should now be able to manag
141
144
  | `smaller` | number | Only emails smaller than this size in KB |
142
145
  | `hasAttachment` | boolean | Only emails with attachments |
143
146
 
144
- ### Dry Run Mode
147
+ ## Dry Run Mode
145
148
 
146
149
  Pass `dryRun: true` to `bulk_move` or `bulk_delete` to preview how many emails would be affected without making any changes:
147
150
 
148
151
  > *"How many emails would be deleted if I removed everything from linkedin.com before 2022?"*
149
152
 
150
- ### Session Log
153
+ ## Safe Move
154
+
155
+ All bulk move operations use a copy-verify-delete approach. Emails are fingerprinted before copying, confirmed present in the destination, and only then removed from the source. A persistent manifest at `~/.icloud-mcp-move-manifest.json` tracks progress across chunks so that a crash or connection drop mid-operation never results in data loss. Use `get_move_status` to inspect any operation and `abandon_move` to clear a stuck one.
156
+
157
+ ## Session Log
151
158
 
152
159
  The session log persists to `~/.icloud-mcp-session.json` on your Mac — outside Claude's context window — so progress is never lost during long operations. Claude can write its plan at the start, log each completed step, and read the log back at any point to reorient itself.
153
160
 
@@ -174,4 +181,4 @@ Once configured, you can ask Claude things like:
174
181
 
175
182
  ## License
176
183
 
177
- MIT
184
+ MIT
package/index.js CHANGED
@@ -977,7 +977,7 @@ function logClear() {
977
977
 
978
978
  async function main() {
979
979
  const server = new Server(
980
- { name: 'icloud-mail', version: '1.6.0' },
980
+ { name: 'icloud-mail', version: '1.4.1' },
981
981
  { capabilities: { tools: {} } }
982
982
  );
983
983
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "icloud-mcp",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "A Model Context Protocol (MCP) server for iCloud Mail",
5
5
  "main": "index.js",
6
6
  "bin": {