apple-numbers-mcp 0.6.0 → 0.6.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/README.md CHANGED
@@ -6,6 +6,10 @@ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server that e
6
6
  [![CI](https://github.com/sweetrb/apple-numbers-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/sweetrb/apple-numbers-mcp/actions/workflows/ci.yml)
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
8
 
9
+ <p align="center">
10
+ <img src="codex/assets/screenshot.png" alt="Apple Numbers MCP — read, write, search, and format spreadsheets from Codex, Claude, and other AI assistants" width="680">
11
+ </p>
12
+
9
13
  ## What is This?
10
14
 
11
15
  This server acts as a bridge between AI assistants and Apple Numbers spreadsheets. Once configured, you can ask Claude (or any MCP-compatible AI) to:
@@ -43,6 +47,25 @@ Install as a Claude Code plugin for automatic configuration and enhanced AI beha
43
47
 
44
48
  This method also installs a **skill** that teaches Claude when and how to use Apple Numbers effectively.
45
49
 
50
+ ### Using the Codex Marketplace
51
+
52
+ Install the same public marketplace in Codex:
53
+
54
+ ```bash
55
+ codex plugin marketplace add sweetrb/apple-numbers-mcp
56
+ codex plugin add apple-numbers@apple-numbers-mcp
57
+ ```
58
+
59
+ The Codex package registers the `apple-numbers` MCP server through
60
+ `npx -y apple-numbers-mcp` — the same published-package invocation documented for
61
+ Claude Desktop below — and bundles the Apple Numbers skill guidance. As with every
62
+ install path, the `numbers-parser` Python sidecar must be available (`pip3 install
63
+ numbers-parser`); see [Requirements](#requirements).
64
+
65
+ ### Other Hosts (Hermes, Antigravity)
66
+
67
+ Plugin packaging for the Hermes and Antigravity hosts is also included (`.hermes-plugin/` and `.antigravity-plugin/`). Each registers the same `apple-numbers` MCP server (launched via `npx -y apple-numbers-mcp`) and bundles the Apple Numbers skill, so behavior matches the Claude Code and Codex plugins. As with every install path, the `numbers-parser` Python sidecar must be available (`pip3 install numbers-parser`); see [Requirements](#requirements). Install them through each host's plugin/marketplace mechanism pointed at this repository.
68
+
46
69
  ### Manual Installation
47
70
 
48
71
  **1. Install the server:**
@@ -263,6 +286,8 @@ Export a table to CSV, TSV, or JSON.
263
286
 
264
287
  Create a new `.numbers` file with one sheet and table.
265
288
 
289
+ **⚠️ Safety:** Overwrites the file at `path` if it already exists — confirm the destination first.
290
+
266
291
  | Parameter | Type | Required | Description |
267
292
  |-----------|------|----------|-------------|
268
293
  | `path` | string | Yes | Path for the new file |
@@ -277,6 +302,8 @@ Create a new `.numbers` file with one sheet and table.
277
302
 
278
303
  Write a value to a single cell.
279
304
 
305
+ **⚠️ Safety:** Overwrites the existing cell value in place in the `.numbers` file.
306
+
280
307
  | Parameter | Type | Required | Description |
281
308
  |-----------|------|----------|-------------|
282
309
  | `path` | string | Yes | Path to the `.numbers` file |
@@ -293,6 +320,8 @@ Write a value to a single cell.
293
320
 
294
321
  Write multiple cells in a single operation. Much more efficient than multiple `set-cell` calls.
295
322
 
323
+ **⚠️ Safety:** Overwrites the existing cell values in place in the `.numbers` file.
324
+
296
325
  | Parameter | Type | Required | Description |
297
326
  |-----------|------|----------|-------------|
298
327
  | `path` | string | Yes | Path to the `.numbers` file |
@@ -319,6 +348,8 @@ Append rows of data after the last existing row.
319
348
 
320
349
  Write full rows by index. Each update is a complete row replacement.
321
350
 
351
+ **⚠️ Safety:** Overwrites the existing row data in place in the `.numbers` file.
352
+
322
353
  | Parameter | Type | Required | Description |
323
354
  |-----------|------|----------|-------------|
324
355
  | `path` | string | Yes | Path to the `.numbers` file |
@@ -332,6 +363,8 @@ Write full rows by index. Each update is a complete row replacement.
332
363
 
333
364
  Delete a range of rows by 0-based inclusive indices.
334
365
 
366
+ **⚠️ Safety:** Destructive and not undoable — requires explicit user confirmation. Modifies the `.numbers` file in place; verify the row range first.
367
+
335
368
  | Parameter | Type | Required | Description |
336
369
  |-----------|------|----------|-------------|
337
370
  | `path` | string | Yes | Path to the `.numbers` file |
@@ -476,6 +509,8 @@ Merge a rectangular range of cells, or undo a merge.
476
509
 
477
510
  Import a CSV, TSV, or JSON file into a new `.numbers` spreadsheet. Auto-detects format from extension, or pass `format` explicitly.
478
511
 
512
+ **⚠️ Safety:** Overwrites the file at `outputPath` if it already exists — confirm the destination first.
513
+
479
514
  | Parameter | Type | Required | Description |
480
515
  |-----------|------|----------|-------------|
481
516
  | `inputPath` | string | Yes | Path to the CSV/TSV/JSON input |
@@ -709,3 +744,7 @@ Part of a family of macOS MCP servers:
709
744
  - [apple-notes-mcp](https://github.com/sweetrb/apple-notes-mcp) — MCP server for Apple Notes (create, search, update, and export notes)
710
745
  - [apple-photos-mcp](https://github.com/sweetrb/apple-photos-mcp) — MCP server for Apple Photos (query metadata and export originals)
711
746
  - [numbers-parser](https://pypi.org/project/numbers-parser/) — The Python library that powers this server
747
+
748
+ ## Recurring macOS permission prompts
749
+
750
+ If macOS keeps re-prompting for Full Disk Access or Automation for `node` (often after a `brew upgrade`), see [docs/NODE-RUNTIME-AND-TCC-PERMISSIONS.md](docs/NODE-RUNTIME-AND-TCC-PERMISSIONS.md) — the fix is to run this server under the official, Developer-ID-signed Node so the grant survives Node updates.
package/build/index.js CHANGED
@@ -28,21 +28,25 @@ const server = new McpServer({
28
28
  "update cells, and append rows.",
29
29
  });
30
30
  // health-check
31
- server.tool("health-check", "Check that Python 3 and numbers-parser are installed and available", {}, withErrorHandling(() => {
31
+ server.tool("health-check", "Use when: you want a quick check that the Python 3 read sidecar (numbers-parser) is installed and reports its version.\n" +
32
+ "Returns: ok/not-ok plus the numbers-parser version string.\n" +
33
+ "Do not use when: you need a full setup diagnostic including Numbers.app and Automation permission — use doctor instead.", {}, withErrorHandling(() => {
32
34
  const result = manager.healthCheck();
33
35
  return successResponse(result.ok ? `✓ ${result.message}` : `✗ ${result.message}`, {
34
36
  ...result,
35
37
  });
36
38
  }, "health-check"));
37
39
  // doctor
38
- server.tool("doctor", "Run a full setup diagnostic: numbers-parser (read sidecar), Numbers.app (needed " +
39
- "for writes), and Automation permission — each reported as ok/warn/fail with " +
40
- "actionable advice. Use this when a tool returns a permission or setup error.", {}, withErrorHandling(() => {
40
+ server.tool("doctor", "Use when: a tool returns a permission or setup error, or you want the full setup diagnostic before writing/formatting.\n" +
41
+ "Returns: three checks — numbers-parser (read sidecar), Numbers.app (needed for writes), and Automation permission — each as ok/warn/fail with actionable advice.\n" +
42
+ "Do not use when: you only need the lightweight read-sidecar version check — use health-check instead.", {}, withErrorHandling(() => {
41
43
  const report = runDoctor(manager);
42
44
  return successResponse(formatDoctorReport(report), { ...report });
43
45
  }, "doctor"));
44
46
  // get-file-info
45
- server.tool("get-file-info", "Get the structure of a .numbers file: sheets, tables, dimensions, and header rows", {
47
+ server.tool("get-file-info", "Use when: you need to discover the structure of a .numbers file before reading or writing — the exact sheet and table names, their dimensions, and header rows. Call this first when sheet/table names are unknown.\n" +
48
+ "Returns: each sheet with its tables, per-table row×col counts, and the header row (row 0) cells.\n" +
49
+ "Do not use when: you want the actual cell data — use read-table; or a single cell — use get-cell.", {
46
50
  path: z.string().describe("Absolute or ~-relative path to the .numbers file"),
47
51
  }, withErrorHandling(({ path }) => {
48
52
  const info = manager.getFileInfo(path);
@@ -57,9 +61,9 @@ server.tool("get-file-info", "Get the structure of a .numbers file: sheets, tabl
57
61
  return successResponse(`File: ${info.path}\nDefault sheet: "${info.defaultSheet}"\n\n${summary}`, { ...info });
58
62
  }, "get-file-info"));
59
63
  // read-table
60
- server.tool("read-table", "Read data from a table in a .numbers file. Returns headers and rows. " +
61
- "Supports optional row range and column filtering. " +
62
- "Defaults to first sheet and first table if not specified.", {
64
+ server.tool("read-table", "Use when: you want the data from a table — headers plus rows, optionally limited to a row range (0-based inclusive indices; header is row 0, so data starts at row 1) and/or a subset of columns. Defaults to the first sheet and first table if sheet/table are omitted.\n" +
65
+ "Returns: sheet name, table name, dimensions, headers, and the selected rows.\n" +
66
+ "Do not use when: you only need one cell — use get-cell; you need the file's structure/names — use get-file-info; or you want to find a value's location — use search.", {
63
67
  path: z.string().describe("Path to the .numbers file"),
64
68
  sheet: z.string().optional().describe("Sheet name (default: first sheet)"),
65
69
  table: z.string().optional().describe("Table name (default: first table)"),
@@ -91,8 +95,9 @@ server.tool("read-table", "Read data from a table in a .numbers file. Returns he
91
95
  `${headerLine}\n${separator}\n${dataRows}`, { ...data });
92
96
  }, "read-table"));
93
97
  // search
94
- server.tool("search", "Search for a text value across all cells in a .numbers file. " +
95
- "Case-insensitive partial match.", {
98
+ server.tool("search", "Use when: you need to locate where a text value appears across every cell in a .numbers file (case-insensitive partial match), optionally limited to one sheet.\n" +
99
+ "Returns: a match count and each match's sheet, table, row, column header, and value.\n" +
100
+ "Do not use when: you already know the cell's coordinates — use get-cell; or you want a whole table's contents — use read-table.", {
96
101
  path: z.string().describe("Path to the .numbers file"),
97
102
  query: z.string().describe("Text to search for (case-insensitive)"),
98
103
  sheet: z.string().optional().describe("Limit search to this sheet"),
@@ -108,7 +113,9 @@ server.tool("search", "Search for a text value across all cells in a .numbers fi
108
113
  });
109
114
  }, "search"));
110
115
  // export-table
111
- server.tool("export-table", "Export a table from a .numbers file to CSV, TSV, or JSON format.", {
116
+ server.tool("export-table", "Use when: you want to write a table's data out to a CSV, TSV, or JSON file on disk. Defaults to the first sheet and first table if sheet/table are omitted.\n" +
117
+ "Returns: the exported row count, format, and output path.\n" +
118
+ "Do not use when: you want the data inline in the response rather than a file — use read-table; or you want to build a new .numbers file from a CSV/TSV/JSON source — use import-csv.", {
112
119
  path: z.string().describe("Path to the .numbers file"),
113
120
  format: z.enum(["csv", "tsv", "json"]).describe("Output format"),
114
121
  outputPath: z.string().describe("Path for the output file"),
@@ -120,8 +127,9 @@ server.tool("export-table", "Export a table from a .numbers file to CSV, TSV, or
120
127
  `to ${result.format.toUpperCase()}: ${result.outputPath}`, { ...result });
121
128
  }, "export-table"));
122
129
  // get-cell
123
- server.tool("get-cell", "Read a single cell value by row and column index (0-based). " +
124
- "Set verbose=true to include formula, formatted value, and merge info.", {
130
+ server.tool("get-cell", "Use when: you need a single cell's value by 0-based row and column index (header is row 0). Set verbose=true to also get the formula, formatted value, and merge info.\n" +
131
+ "Returns: the cell's value and type, plus formula/formatted-value/merge details when verbose.\n" +
132
+ "Do not use when: you want many cells or whole rows — use read-table; or you don't know the coordinates — use search.", {
125
133
  path: z.string().describe("Path to the .numbers file"),
126
134
  sheet: z.string().describe("Sheet name"),
127
135
  table: z.string().describe("Table name"),
@@ -142,8 +150,10 @@ server.tool("get-cell", "Read a single cell value by row and column index (0-bas
142
150
  return successResponse(text, { ...cell });
143
151
  }, "get-cell"));
144
152
  // create-spreadsheet
145
- server.tool("create-spreadsheet", "Create a new .numbers file with a single sheet and table. " +
146
- "Provide headers and optionally initial data rows.", {
153
+ server.tool("create-spreadsheet", "Use when: you want to create a brand-new .numbers file with a single sheet and table from a list of headers, optionally with initial data rows.\n" +
154
+ "Returns: the file path, sheet name, table name, header count, and data-row count.\n" +
155
+ "Do not use when: you want to build the file from an existing CSV/TSV/JSON source — use import-csv; or you want to add to a file that already exists — use add-sheet / add-table / add-rows.\n" +
156
+ "Safety: writes a .numbers file via the numbers-parser sidecar (does not require Numbers.app). The target path is written unconditionally — if a file already exists at that path it is OVERWRITTEN in place; choose a fresh path or confirm overwrite first.", {
147
157
  path: z.string().describe("Path for the new .numbers file"),
148
158
  headers: z.array(z.string()).min(1).describe("Column header names"),
149
159
  rows: z
@@ -159,8 +169,10 @@ server.tool("create-spreadsheet", "Create a new .numbers file with a single shee
159
169
  `${result.numHeaders} columns, ${result.numRows} data rows`, { ...result });
160
170
  }, "create-spreadsheet"));
161
171
  // set-cell
162
- server.tool("set-cell", "Write a value to a single cell in an existing .numbers file. " +
163
- "Row and column are 0-based indices.", {
172
+ server.tool("set-cell", "Use when: you need to write a computed value to one cell in an existing .numbers file, addressed by 0-based row and column (header is row 0). Defaults to the first sheet/table if omitted.\n" +
173
+ "Returns: the written coordinates, value, and the sheet/table affected.\n" +
174
+ 'Do not use when: you\'re writing many cells — use set-cells-batch; replacing whole rows — use update-rows; or writing a live formula — use set-formula (passing "=SUM(...)" here writes literal text, not a formula).\n' +
175
+ "Safety: modifies the .numbers file in place and OVERWRITES any existing data in the target cell.", {
164
176
  path: z.string().describe("Path to the .numbers file"),
165
177
  row: z.number().int().min(0).describe("Row index (0-based)"),
166
178
  col: z.number().int().min(0).describe("Column index (0-based)"),
@@ -177,8 +189,10 @@ server.tool("set-cell", "Write a value to a single cell in an existing .numbers
177
189
  `in "${result.sheetName}/${result.tableName}"`, { ...result });
178
190
  }, "set-cell"));
179
191
  // set-cells-batch
180
- server.tool("set-cells-batch", "Write values to multiple cells in a single operation. " +
181
- "More efficient than multiple set-cell calls for bulk updates.", {
192
+ server.tool("set-cells-batch", "Use when: you need to write computed values to multiple cells at once (each with 0-based row/col); more efficient than many set-cell calls. Defaults to the first sheet/table if omitted.\n" +
193
+ "Returns: the number of cells written and the sheet/table affected.\n" +
194
+ "Do not use when: replacing whole rows by index — use update-rows; appending new rows — use add-rows; or writing live formulas — use set-formulas-batch.\n" +
195
+ "Safety: modifies the .numbers file in place and OVERWRITES any existing data in the targeted cells.", {
182
196
  path: z.string().describe("Path to the .numbers file"),
183
197
  updates: z
184
198
  .array(z.object({
@@ -201,8 +215,10 @@ server.tool("set-cells-batch", "Write values to multiple cells in a single opera
201
215
  return successResponse(`Updated ${result.cellsWritten} cells in "${result.sheetName}/${result.tableName}"`, { ...result });
202
216
  }, "set-cells-batch"));
203
217
  // add-rows
204
- server.tool("add-rows", "Append rows of data to an existing table in a .numbers file. " +
205
- "New rows are added after the last existing row.", {
218
+ server.tool("add-rows", "Use when: you want to append new rows of data to the end of an existing table; rows are added after the last existing row. Defaults to the first sheet/table if omitted.\n" +
219
+ "Returns: the number of rows added, the starting row index, and the new total row count.\n" +
220
+ "Do not use when: overwriting existing rows by index — use update-rows; setting individual cells — use set-cell / set-cells-batch.\n" +
221
+ "Safety: modifies the .numbers file in place. Additive (appends rows) and does not overwrite existing data, but still mutates the file.", {
206
222
  path: z.string().describe("Path to the .numbers file"),
207
223
  rows: z
208
224
  .array(z.array(z.union([z.string(), z.number(), z.boolean(), z.null()])))
@@ -216,8 +232,10 @@ server.tool("add-rows", "Append rows of data to an existing table in a .numbers
216
232
  `(starting at row ${result.startRow}, new total: ${result.newTotalRows})`, { ...result });
217
233
  }, "add-rows"));
218
234
  // delete-rows
219
- server.tool("delete-rows", "Delete a range of rows from a table in a .numbers file. " +
220
- "Both start and end are 0-based inclusive indices.", {
235
+ server.tool("delete-rows", "Use when: you need to permanently remove a contiguous range of rows from a table; both startRow and endRow are 0-based inclusive indices (header is row 0). Defaults to the first sheet/table if omitted.\n" +
236
+ "Returns: the number of rows deleted and the new total row count.\n" +
237
+ "Do not use when: you only want to clear values while keeping the rows — use set-cells-batch with empty values; or overwrite rows in place — use update-rows.\n" +
238
+ "Safety: DESTRUCTIVE — requires explicit user confirmation; not undoable; the .numbers file is modified in place and the deleted rows cannot be recovered. Double-check the 0-based inclusive range before calling.", {
221
239
  path: z.string().describe("Path to the .numbers file"),
222
240
  startRow: z.number().int().min(0).describe("First row to delete (0-based, inclusive)"),
223
241
  endRow: z.number().int().min(0).describe("Last row to delete (0-based, inclusive)"),
@@ -229,8 +247,10 @@ server.tool("delete-rows", "Delete a range of rows from a table in a .numbers fi
229
247
  `(new total: ${result.newTotalRows})`, { ...result });
230
248
  }, "delete-rows"));
231
249
  // add-sheet
232
- server.tool("add-sheet", "Add a new sheet to an existing .numbers file. " +
233
- "Optionally provide headers for the default table.", {
250
+ server.tool("add-sheet", "Use when: you want to add a new sheet to an existing .numbers file, optionally naming its default table and providing its headers.\n" +
251
+ "Returns: the new sheet name, its default table name, and the table's dimensions.\n" +
252
+ "Do not use when: adding a table to an existing sheet — use add-table; or creating a whole new file — use create-spreadsheet.\n" +
253
+ "Safety: modifies the .numbers file in place. Additive (adds a new sheet) and does not overwrite existing data, but still mutates the file.", {
234
254
  path: z.string().describe("Path to the .numbers file"),
235
255
  sheetName: z.string().describe("Name for the new sheet"),
236
256
  tableName: z.string().optional().describe("Name for the default table"),
@@ -241,7 +261,10 @@ server.tool("add-sheet", "Add a new sheet to an existing .numbers file. " +
241
261
  `(${result.numRows}×${result.numCols})`, { ...result });
242
262
  }, "add-sheet"));
243
263
  // add-table
244
- server.tool("add-table", "Add a new table to an existing sheet in a .numbers file.", {
264
+ server.tool("add-table", "Use when: you want to add a new table to an existing sheet, optionally naming it and providing its headers. Defaults to the first sheet if omitted.\n" +
265
+ "Returns: the new table name, the sheet it was added to, and the table's dimensions.\n" +
266
+ "Do not use when: adding a whole new sheet — use add-sheet; or creating a new file — use create-spreadsheet.\n" +
267
+ "Safety: modifies the .numbers file in place. Additive (adds a new table) and does not overwrite existing data, but still mutates the file.", {
245
268
  path: z.string().describe("Path to the .numbers file"),
246
269
  sheet: z.string().optional().describe("Sheet name (default: first sheet)"),
247
270
  tableName: z.string().optional().describe("Name for the new table"),
@@ -252,8 +275,10 @@ server.tool("add-table", "Add a new table to an existing sheet in a .numbers fil
252
275
  `(${result.numRows}×${result.numCols})`, { ...result });
253
276
  }, "add-table"));
254
277
  // import-csv
255
- server.tool("import-csv", "Import a CSV, TSV, or JSON file into a new .numbers spreadsheet. " +
256
- "Auto-detects format from file extension, or specify explicitly.", {
278
+ server.tool("import-csv", "Use when: you want to convert an existing CSV, TSV, or JSON file into a new .numbers spreadsheet. Format is auto-detected from the input file extension unless you specify it explicitly.\n" +
279
+ "Returns: the imported row and column counts, detected format, and the input/output paths plus sheet/table names.\n" +
280
+ "Do not use when: building a file from headers/rows you already have in hand — use create-spreadsheet; or exporting a .numbers table out to CSV/TSV/JSON — use export-table.\n" +
281
+ "Safety: writes the output .numbers file via the numbers-parser sidecar (does not require Numbers.app). The output path is written unconditionally — if a file already exists there it is OVERWRITTEN in place; choose a fresh output path or confirm overwrite first.", {
257
282
  inputPath: z.string().describe("Path to the CSV/TSV/JSON input file"),
258
283
  outputPath: z.string().describe("Path for the output .numbers file"),
259
284
  format: z
@@ -269,8 +294,10 @@ server.tool("import-csv", "Import a CSV, TSV, or JSON file into a new .numbers s
269
294
  `Sheet: "${result.sheetName}" | Table: "${result.tableName}"`, { ...result });
270
295
  }, "import-csv"));
271
296
  // update-rows
272
- server.tool("update-rows", "Write full rows by index in an existing .numbers file. " +
273
- "Each update specifies a row index and a complete array of column values.", {
297
+ server.tool("update-rows", "Use when: you need to replace whole rows by 0-based index in an existing file; each update carries a row index and a complete array of column values. Carrying multiple {row, values} entries is more efficient than per-row writes. Defaults to the first sheet/table if omitted.\n" +
298
+ "Returns: the number of rows updated and the sheet/table affected.\n" +
299
+ "Do not use when: appending new rows — use add-rows; writing individual cells — use set-cell / set-cells-batch; or writing live formulas — use set-formulas-batch.\n" +
300
+ "Safety: modifies the .numbers file in place and OVERWRITES the entire contents of each targeted row.", {
274
301
  path: z.string().describe("Path to the .numbers file"),
275
302
  updates: z
276
303
  .array(z.object({
@@ -288,7 +315,10 @@ server.tool("update-rows", "Write full rows by index in an existing .numbers fil
288
315
  return successResponse(`Updated ${result.rowsUpdated} rows in "${result.sheetName}/${result.tableName}"`, { ...result });
289
316
  }, "update-rows"));
290
317
  // rename-sheet
291
- server.tool("rename-sheet", "Rename a sheet in a .numbers file.", {
318
+ server.tool("rename-sheet", "Use when: you want to change a sheet's name in a .numbers file. Defaults to the first sheet if the current name is omitted.\n" +
319
+ "Returns: the old and new sheet names.\n" +
320
+ "Do not use when: renaming a table — use rename-table.\n" +
321
+ "Safety: modifies the .numbers file in place via the numbers-parser sidecar (does not require Numbers.app).", {
292
322
  path: z.string().describe("Path to the .numbers file"),
293
323
  newName: z.string().describe("New name for the sheet"),
294
324
  sheet: z.string().optional().describe("Current sheet name (default: first sheet)"),
@@ -299,7 +329,10 @@ server.tool("rename-sheet", "Rename a sheet in a .numbers file.", {
299
329
  });
300
330
  }, "rename-sheet"));
301
331
  // rename-table
302
- server.tool("rename-table", "Rename a table in a .numbers file.", {
332
+ server.tool("rename-table", "Use when: you want to change a table's name in a .numbers file. Defaults to the first sheet/table if omitted.\n" +
333
+ "Returns: the old and new table names and the sheet it belongs to.\n" +
334
+ "Do not use when: renaming a sheet — use rename-sheet.\n" +
335
+ "Safety: modifies the .numbers file in place via the numbers-parser sidecar (does not require Numbers.app).", {
303
336
  path: z.string().describe("Path to the .numbers file"),
304
337
  newName: z.string().describe("New name for the table"),
305
338
  sheet: z.string().optional().describe("Sheet name (default: first sheet)"),
@@ -309,9 +342,10 @@ server.tool("rename-table", "Rename a table in a .numbers file.", {
309
342
  return successResponse(`Renamed table "${result.oldName}" → "${result.newName}" in sheet "${result.sheetName}"`, { ...result });
310
343
  }, "rename-table"));
311
344
  // set-formula
312
- server.tool("set-formula", "Set a formula on a cell in a .numbers file using AppleScript. " +
313
- "Requires Numbers.app to be running. The file will be opened if not already open, " +
314
- "and saved after the formula is set. Row and column are 0-based indices.", {
345
+ server.tool("set-formula", 'Use when: you need to write a live formula (e.g. "=SUM(A2:A10)") into a cell so it computes in Numbers, addressed by 0-based row/col. Requires explicit sheet and table.\n' +
346
+ "Returns: the cell, the formula set, and its computed value.\n" +
347
+ "Do not use when: writing a plain computed value — use set-cell (this tool is for live formulas); or setting many formulas — use set-formulas-batch.\n" +
348
+ "Safety: drives Numbers.app via AppleScript and requires Numbers.app to be running plus Automation permission. The file is opened if not already open, the formula OVERWRITES any existing content in the target cell, and the file is saved in place.", {
315
349
  path: z.string().describe("Path to the .numbers file"),
316
350
  sheet: z.string().describe("Sheet name"),
317
351
  table: z.string().describe("Table name"),
@@ -324,8 +358,10 @@ server.tool("set-formula", "Set a formula on a cell in a .numbers file using App
324
358
  `Formula: ${result.formula}\nComputed value: ${result.computedValue}`, { ...result });
325
359
  }, "set-formula"));
326
360
  // set-formulas-batch
327
- server.tool("set-formulas-batch", "Set formulas on multiple cells in a single operation using AppleScript. " +
328
- "Requires Numbers.app to be running. More efficient than multiple set-formula calls.", {
361
+ server.tool("set-formulas-batch", "Use when: you need to write live formulas to multiple cells at once (each with 0-based row/col); more efficient than many set-formula calls. Requires explicit sheet and table.\n" +
362
+ "Returns: the number of formulas set and the sheet/table affected.\n" +
363
+ "Do not use when: writing plain computed values — use set-cells-batch; or setting a single formula — use set-formula.\n" +
364
+ "Safety: drives Numbers.app via AppleScript and requires Numbers.app to be running plus Automation permission. Modifies the file in place and OVERWRITES any existing content in the targeted cells.", {
329
365
  path: z.string().describe("Path to the .numbers file"),
330
366
  sheet: z.string().describe("Sheet name"),
331
367
  table: z.string().describe("Table name"),
@@ -376,8 +412,10 @@ const cellStyleSchema = z.object({
376
412
  textWrap: z.boolean().optional().describe("Enable text wrapping"),
377
413
  });
378
414
  // set-cell-style
379
- server.tool("set-cell-style", "Set formatting on a cell: font, color, alignment, number format, etc. " +
380
- "Requires Numbers.app to be running.", {
415
+ server.tool("set-cell-style", "Use when: you need to format one cell — font, text/background color, number format, alignment, text wrap — addressed by 0-based row/col. Requires explicit sheet and table.\n" +
416
+ "Returns: the styled cell and the sheet/table affected.\n" +
417
+ "Do not use when: styling many cells — use set-cells-style-batch; or writing a value/formula rather than formatting — use set-cell / set-formula.\n" +
418
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission.", {
381
419
  path: z.string().describe("Path to the .numbers file"),
382
420
  sheet: z.string().describe("Sheet name"),
383
421
  table: z.string().describe("Table name"),
@@ -389,7 +427,10 @@ server.tool("set-cell-style", "Set formatting on a cell: font, color, alignment,
389
427
  return successResponse(`Styled cell ${result.cell} in "${result.sheetName}/${result.tableName}"`, { ...result });
390
428
  }, "set-cell-style"));
391
429
  // set-cells-style-batch
392
- server.tool("set-cells-style-batch", "Set formatting on multiple cells in one operation. " + "Requires Numbers.app to be running.", {
430
+ server.tool("set-cells-style-batch", "Use when: you need to format multiple cells at once (each with 0-based row/col); more efficient than many set-cell-style calls. Requires explicit sheet and table.\n" +
431
+ "Returns: the number of cells styled and the sheet/table affected.\n" +
432
+ "Do not use when: styling a single cell — use set-cell-style; or writing values/formulas rather than formatting — use set-cells-batch / set-formulas-batch.\n" +
433
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission.", {
393
434
  path: z.string().describe("Path to the .numbers file"),
394
435
  sheet: z.string().describe("Sheet name"),
395
436
  table: z.string().describe("Table name"),
@@ -406,7 +447,10 @@ server.tool("set-cells-style-batch", "Set formatting on multiple cells in one op
406
447
  return successResponse(`Styled ${result.cellsStyled} cells in "${result.sheetName}/${result.tableName}"`, { ...result });
407
448
  }, "set-cells-style-batch"));
408
449
  // set-column-width
409
- server.tool("set-column-width", "Set the width of a column in pixels. Requires Numbers.app to be running.", {
450
+ server.tool("set-column-width", "Use when: you need to set a column's width in pixels, addressed by 0-based column index. Requires explicit sheet and table.\n" +
451
+ "Returns: the column index and the width applied.\n" +
452
+ "Do not use when: setting a row's height — use set-row-height.\n" +
453
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission.", {
410
454
  path: z.string().describe("Path to the .numbers file"),
411
455
  sheet: z.string().describe("Sheet name"),
412
456
  table: z.string().describe("Table name"),
@@ -423,7 +467,10 @@ server.tool("set-column-width", "Set the width of a column in pixels. Requires N
423
467
  });
424
468
  }, "set-column-width"));
425
469
  // set-row-height
426
- server.tool("set-row-height", "Set the height of a row in pixels. Requires Numbers.app to be running.", {
470
+ server.tool("set-row-height", "Use when: you need to set a row's height in pixels, addressed by 0-based row index. Requires explicit sheet and table.\n" +
471
+ "Returns: the row index and the height applied.\n" +
472
+ "Do not use when: setting a column's width — use set-column-width.\n" +
473
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission.", {
427
474
  path: z.string().describe("Path to the .numbers file"),
428
475
  sheet: z.string().describe("Sheet name"),
429
476
  table: z.string().describe("Table name"),
@@ -440,7 +487,10 @@ server.tool("set-row-height", "Set the height of a row in pixels. Requires Numbe
440
487
  });
441
488
  }, "set-row-height"));
442
489
  // merge-cells
443
- server.tool("merge-cells", "Merge a range of cells. Requires Numbers.app to be running.", {
490
+ server.tool("merge-cells", "Use when: you need to merge a rectangular range of cells into one, given 0-based inclusive top-left and bottom-right coordinates. Requires explicit sheet and table.\n" +
491
+ "Returns: the merged range and the sheet/table affected.\n" +
492
+ "Do not use when: undoing a merge — use unmerge-cells.\n" +
493
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission. Merging keeps only the top-left cell's content and can DROP the values in the other cells of the range.", {
444
494
  path: z.string().describe("Path to the .numbers file"),
445
495
  sheet: z.string().describe("Sheet name"),
446
496
  table: z.string().describe("Table name"),
@@ -455,7 +505,10 @@ server.tool("merge-cells", "Merge a range of cells. Requires Numbers.app to be r
455
505
  });
456
506
  }, "merge-cells"));
457
507
  // unmerge-cells
458
- server.tool("unmerge-cells", "Unmerge a previously merged range of cells. Requires Numbers.app to be running.", {
508
+ server.tool("unmerge-cells", "Use when: you need to split a previously merged range back into individual cells, given 0-based inclusive top-left and bottom-right coordinates. Requires explicit sheet and table.\n" +
509
+ "Returns: the unmerged range and the sheet/table affected.\n" +
510
+ "Do not use when: creating a merge — use merge-cells.\n" +
511
+ "Safety: drives Numbers.app via AppleScript — modifies the file in place and requires Numbers.app to be running plus Automation permission. Previously merged cells stay empty (the original non-top-left values are not restored).", {
459
512
  path: z.string().describe("Path to the .numbers file"),
460
513
  sheet: z.string().describe("Sheet name"),
461
514
  table: z.string().describe("Table name"),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "apple-numbers-mcp",
3
- "version": "0.6.0",
4
- "description": "MCP server for reading and writing Apple Numbers (.numbers) spreadsheet files",
3
+ "version": "0.6.1",
4
+ "description": "MCP server for Apple Numbers - read, write, search, and format .numbers spreadsheets via Claude and other AI assistants",
5
5
  "type": "module",
6
6
  "main": "build/index.js",
7
7
  "types": "build/index.d.ts",
@@ -31,17 +31,18 @@
31
31
  "test:integration": "vitest run --config vitest.integration.config.ts",
32
32
  "test:all": "vitest run && vitest run --config vitest.integration.config.ts",
33
33
  "test:watch": "vitest",
34
- "version": "node scripts/sync-plugin-version.mjs && git add .claude-plugin/plugin.json .claude-plugin/marketplace.json",
34
+ "version": "node scripts/sync-plugin-version.mjs && git add .claude-plugin .agents/plugins codex .hermes-plugin .antigravity-plugin",
35
35
  "prepublishOnly": "npm run lint && npm run test && npm run build",
36
36
  "prepare": "husky; npm run build"
37
37
  },
38
38
  "volta": {
39
- "node": "22.13.1"
39
+ "node": "24.17.0"
40
40
  },
41
41
  "keywords": [
42
42
  "mcp",
43
43
  "apple-numbers",
44
44
  "claude",
45
+ "codex",
45
46
  "ai",
46
47
  "spreadsheet",
47
48
  "macos",