apple-notes-mcp 2.9.7 → 2.9.9

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 +37 -0
  2. package/build/index.js +2432 -292
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -1873,6 +1873,14 @@ fetched attachment bytes with the source before reporting success.
1873
1873
  that exact name. A mismatch is a warning (`filenameWarning`), not a failure,
1874
1874
  because the attachment and its bytes are already verified.
1875
1875
 
1876
+ On macOS 27, Notes' AppleScript does not list PDF attachments, so it cannot see
1877
+ a PDF this tool just added. When that happens and the server has Full Disk
1878
+ Access, it verifies through the read-only NoteStore database instead: success
1879
+ requires exactly one new attachment row on the note whose media file matches
1880
+ the source bytes, and the result carries `verifiedBy: "database"`. Without Full
1881
+ Disk Access a PDF attach reports "insertion outcome uncertain"; read the note
1882
+ before retrying, because the attachment was probably created.
1883
+
1876
1884
  ---
1877
1885
 
1878
1886
  #### `create-note-with-attachment`
@@ -1979,6 +1987,35 @@ Saves Notes' rendered image of one Paper drawing or classic drawing to a new fil
1979
1987
 
1980
1988
  ---
1981
1989
 
1990
+ #### `analyze-svg`
1991
+
1992
+ Analyzes one local SVG file and reports whether it can be represented as editable monoline strokes (a list of strokes, each a solid color, a width, and a polyline) and what that conversion would approximate or drop. It is a standalone preflight: it reads only the file, opens no Notes data, and makes no network request.
1993
+
1994
+ | Parameter | Type | Required | Description |
1995
+ |-----------|------|----------|-------------|
1996
+ | `path` | string | Yes | Absolute path of one `.svg` file: a regular file, not a symbolic link, at most 1 MiB of UTF-8, in home, temp, or `/Volumes` |
1997
+ | `includeDrawing` | boolean | No | Also return the normalized drawing. Off by default because it can be large |
1998
+
1999
+ **Returns:** `classification`, `importable`, `defaultWriteAllowed`, `requiredLosses`, `issues` (each with a `code`, the `loss` it causes or `null`, an element `location` such as `svg/g[2]/path[1]#id`, and a message), `viewport`, `counts` (elements, references, path segments, output strokes and points, and the `geometryWork`, `dashWork`, and `scanWork` budgets as `{used, max}`), `source` (`sha256`, `bytes`), `drawingBytes`, and `analysisDigest`.
2000
+
2001
+ | Classification | Meaning |
2002
+ |---|---|
2003
+ | `safe` | The output needs no reported approximation or omission. `defaultWriteAllowed` is true |
2004
+ | `lossy` | The output needs `geometry-approximation` or `paint-approximation` |
2005
+ | `unsupported` | Visible content would be dropped (`drop-content`), or nothing drawable remains (`importable: false`) |
2006
+
2007
+ The loss modes:
2008
+
2009
+ - `geometry-approximation`: non-round caps or joins are drawn round, a non-uniformly scaled stroke gets one width, or centerlines are clipped at a viewport. Curves are flattened to within 0.25 px, which is not reported as a loss.
2010
+ - `paint-approximation`: solid fills become overlapping strokes, group opacity is applied to each stroke, and blend modes or a non-default paint order are ignored.
2011
+ - `drop-content`: text, images, gradient and pattern paint, filters, masks, clip paths, markers, `<switch>`, and unknown elements are omitted.
2012
+
2013
+ Supported input: `path`, `rect`, `circle`, `ellipse`, `line`, `polyline`, `polygon`; `g`, `a`, nested `svg`; local `defs`, `symbol`, and `use`; transforms; `viewBox` and `preserveAspectRatio`; solid named, hex, `rgb()`/`rgba()`, and `hsl()` colors, `currentColor`, opacity, fill rules, and dashes, from attributes or the `style` attribute. `analysisDigest` is a SHA-256 over the canonical analysis and normalized drawing, so equal digests mean the same result.
2014
+
2015
+ **⚠️ Safety:** Read-only. Active or unsafe input is refused as an error with `code: "validation_error"` and an `svgCode`: `svg_unsafe` for scripts, event-handler attributes, `<style>` elements, animation, embedded objects, DOCTYPE or entity declarations, processing instructions, and any external reference (only local `#id` references and embedded raster images are allowed); `svg_invalid` for malformed XML; `svg_reference_invalid` for cyclic or duplicate-id references; `svg_complexity_limit` or `svg_geometry_invalid` when a limit is exceeded (16,384 elements, 100,000 path segments, 4,096 output strokes, 100,000 points, 5,000,000 fill scan checks); `svg_file_invalid` for a path or file that cannot be read.
2016
+
2017
+ ---
2018
+
1982
2019
  #### `export-attachments`
1983
2020
 
1984
2021
  Copies a note's attachment files into a directory without opening Notes.app.