apple-notes-mcp 2.15.7 → 2.15.8
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 +24 -0
- package/build/index.js +46 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -153,6 +153,30 @@ In the IDE, open **MCP Servers → Manage MCP Servers → View raw config**. Mer
|
|
|
153
153
|
|
|
154
154
|
The repository's `.antigravity-plugin/mcp_config.json` supplies an unpinned stdio server entry; the JSON above pins the audited release. Use `command` and `args`; this package does not provide a remote `serverUrl`.
|
|
155
155
|
|
|
156
|
+
#### Gemini Spark (macOS Local MCP)
|
|
157
|
+
|
|
158
|
+
In Gemini macOS builds that offer **Local MCP**, open **Connected Apps**, click **+ Custom**, and select **Local MCP** in "Set up a custom connected app". Fill in the form with:
|
|
159
|
+
|
|
160
|
+
| Field | Value |
|
|
161
|
+
|-------|-------|
|
|
162
|
+
| Server Name | Apple Notes |
|
|
163
|
+
| Description | Read, search, create, edit, organize, and export Apple Notes on this Mac. |
|
|
164
|
+
| Command | `npx -y apple-notes-mcp@2.15.1` |
|
|
165
|
+
|
|
166
|
+
You can print these instructions from the installed server:
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
npx -y apple-notes-mcp setup --gemini-spark
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
The command only prints the guide. It exits before loading server configuration, checking Notes, or running the other setup commands, and it doesn't register the app or change permissions. Exit 0 means the guide was printed, not that Gemini connected. Run it by itself; combining it with other setup options exits 2.
|
|
173
|
+
|
|
174
|
+
Keep **Sandbox settings** at **Default** initially, then click **Next** and review the discovered tools and permission requests before connecting. If Gemini can't launch the server, inspect **Show Logs** and check whether `npx` is available to the app. For a stable local installation, `npm install -g apple-notes-mcp` provides the `apple-notes-mcp` command; you can also use absolute paths to your Node executable and the installed `build/index.js` if the app can't find them. Keep that installation available, and update the command if you move it or replace Node.
|
|
175
|
+
|
|
176
|
+
Gemini's sandbox and macOS permissions are separate. Review any additional filesystem access the launcher needs; **Full Access** isn't a required setup step. Automation of Notes.app enables the AppleScript tools, while database tools need the runtime's [Full Disk Access](#full-disk-access). Shortcut operations need the packaged bridge setup above. After connecting, ask Gemini to run `get-capabilities` for tool availability, then `doctor` for Notes access diagnostics before attempting a write. A successful terminal check doesn't verify the permissions of Gemini's process.
|
|
177
|
+
|
|
178
|
+
This integration uses the Mac app's Local MCP command interface and the server's existing stdio transport. Availability depends on your Gemini build. Google's [custom apps documentation](https://support.google.com/gemini/answer/17209137) currently describes URL-based setup in the web app; it doesn't document this local form. **Cloud MCP**, Gemini web/mobile, and a hosted HTTP endpoint aren't supported by this server. These instructions apply to Gemini Spark, separately from Gemini CLI and Antigravity.
|
|
179
|
+
|
|
156
180
|
#### Other MCP clients and remote execution
|
|
157
181
|
|
|
158
182
|
A local MCP client can use the command `npx` with arguments `-y` and `apple-notes-mcp@2.15.1`. Follow that client's stdio configuration format: JSON `mcpServers`, TOML, and YAML are not interchangeable.
|
package/build/index.js
CHANGED
|
@@ -24535,8 +24535,9 @@ Targets (choose at most one; default: packaged Shortcuts):
|
|
|
24535
24535
|
--permissions-window Build and install the optional permission checklist window
|
|
24536
24536
|
--permissions Check permissions; does not grant them
|
|
24537
24537
|
--broker Build and install the opt-in permission broker
|
|
24538
|
+
--gemini-spark Print the macOS Local MCP guide; no setup effects
|
|
24538
24539
|
|
|
24539
|
-
Options for
|
|
24540
|
+
Options for installation and permission targets:
|
|
24540
24541
|
--check Inspect only; do not install or import anything
|
|
24541
24542
|
--help, -h Show this help without performing any checks
|
|
24542
24543
|
|
|
@@ -24547,6 +24548,9 @@ Options only with --permissions:
|
|
|
24547
24548
|
--window Show the checklist in the installed optional window
|
|
24548
24549
|
--probe-automation Send a read-only Apple event (may show a consent prompt)
|
|
24549
24550
|
|
|
24551
|
+
Options only with --gemini-spark:
|
|
24552
|
+
--help, -h Print the guide without connecting a client
|
|
24553
|
+
|
|
24550
24554
|
Options only with --broker:
|
|
24551
24555
|
--uninstall Remove the installed broker and LaunchAgent
|
|
24552
24556
|
--sign-identity <id> Select an existing signing identity
|
|
@@ -24560,7 +24564,8 @@ var SETUP_TARGETS = /* @__PURE__ */ new Map([
|
|
|
24560
24564
|
["--native-helper", "native-helper"],
|
|
24561
24565
|
["--permissions-window", "permissions-window"],
|
|
24562
24566
|
["--permissions", "permissions"],
|
|
24563
|
-
["--broker", "broker"]
|
|
24567
|
+
["--broker", "broker"],
|
|
24568
|
+
["--gemini-spark", "gemini-spark"]
|
|
24564
24569
|
]);
|
|
24565
24570
|
var PERMISSION_OPTIONS = /* @__PURE__ */ new Set([
|
|
24566
24571
|
"--once",
|
|
@@ -24590,6 +24595,13 @@ function parseSetupArgs(args) {
|
|
|
24590
24595
|
throw new Error(`Unknown setup option "${arg}".`);
|
|
24591
24596
|
}
|
|
24592
24597
|
}
|
|
24598
|
+
if (target === "gemini-spark") {
|
|
24599
|
+
if (args.filter((arg) => arg === "--gemini-spark").length !== 1 || args.some((arg) => !["--gemini-spark", "--help", "-h"].includes(arg)) || args.filter((arg) => arg === "--help" || arg === "-h").length > 1)
|
|
24600
|
+
throw new Error(
|
|
24601
|
+
"The Gemini Spark print-only guide cannot be combined with other setup options."
|
|
24602
|
+
);
|
|
24603
|
+
return { kind: "setup", target, args: [...args], checkOnly: false };
|
|
24604
|
+
}
|
|
24593
24605
|
if (args.some((arg) => arg === "--uninstall" || arg === "--sign-identity") && target !== "broker")
|
|
24594
24606
|
throw new Error("--uninstall and --sign-identity require setup --broker.");
|
|
24595
24607
|
for (const arg of args) {
|
|
@@ -24611,6 +24623,33 @@ function parseCliArgs(args) {
|
|
|
24611
24623
|
throw new Error(`Unknown command or option "${command2}".`);
|
|
24612
24624
|
}
|
|
24613
24625
|
|
|
24626
|
+
// src/setupGeminiSpark.ts
|
|
24627
|
+
var GEMINI_SPARK_LOCAL_MCP = {
|
|
24628
|
+
serverName: "Apple Notes",
|
|
24629
|
+
description: "Read, search, create, edit, organize, and export Apple Notes on this Mac.",
|
|
24630
|
+
command: "npx -y apple-notes-mcp"
|
|
24631
|
+
};
|
|
24632
|
+
function formatGeminiSparkSetup() {
|
|
24633
|
+
return [
|
|
24634
|
+
"Gemini Spark on macOS: Local MCP",
|
|
24635
|
+
"Requires a Gemini macOS build with Local MCP in Connected Apps > + Custom.",
|
|
24636
|
+
"Select Local MCP and enter:",
|
|
24637
|
+
"",
|
|
24638
|
+
`Server Name: ${GEMINI_SPARK_LOCAL_MCP.serverName}`,
|
|
24639
|
+
`Description: ${GEMINI_SPARK_LOCAL_MCP.description}`,
|
|
24640
|
+
`Command: ${GEMINI_SPARK_LOCAL_MCP.command}`,
|
|
24641
|
+
"",
|
|
24642
|
+
"Keep Sandbox settings at Default initially. If startup fails, inspect Show Logs",
|
|
24643
|
+
"and review the specific launcher or filesystem access it needs.",
|
|
24644
|
+
"Sandbox access and macOS Automation / Full Disk Access are separate permissions.",
|
|
24645
|
+
"Click Next, review the tools and permissions, and complete the connection yourself.",
|
|
24646
|
+
"Verify tool discovery with get-capabilities in Gemini; use doctor for Notes diagnostics.",
|
|
24647
|
+
"",
|
|
24648
|
+
"This command only prints instructions; a successful exit does not verify a connection.",
|
|
24649
|
+
"Cloud MCP needs a hosted MCP URL. This server provides local stdio only."
|
|
24650
|
+
].join("\n");
|
|
24651
|
+
}
|
|
24652
|
+
|
|
24614
24653
|
// src/cliEntry.ts
|
|
24615
24654
|
var parsed;
|
|
24616
24655
|
try {
|
|
@@ -24623,6 +24662,11 @@ ${usage}`);
|
|
|
24623
24662
|
process.exit(2);
|
|
24624
24663
|
}
|
|
24625
24664
|
var command = parsed;
|
|
24665
|
+
if (command.kind === "setup" && command.target === "gemini-spark") {
|
|
24666
|
+
process.stdout.write(`${formatGeminiSparkSetup()}
|
|
24667
|
+
`);
|
|
24668
|
+
process.exit(0);
|
|
24669
|
+
}
|
|
24626
24670
|
if (command.kind === "help") {
|
|
24627
24671
|
process.stdout.write(command.topic === "setup" ? SETUP_USAGE : CLI_USAGE);
|
|
24628
24672
|
process.exit(0);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apple-notes-mcp",
|
|
3
|
-
"version": "2.15.
|
|
3
|
+
"version": "2.15.8",
|
|
4
4
|
"description": "MCP server for Apple Notes - read, search, create, edit, organize, and export notes on macOS via Claude and other AI assistants",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "build/index.js",
|