From 9c5aff1febe3eaf44dfe59bc3e3b70a35cde4c8a Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sat, 16 May 2026 11:59:40 -0500 Subject: feat(mcp): add google-keep server Adds google-keep to mcp/servers.json using feuerdev/keep-mcp via uvx; env-var auth (GOOGLE_KEEP_EMAIL, GOOGLE_KEEP_MASTER_TOKEN) stored in mcp/secrets.env.gpg. Master token retrieved through Google's EmbeddedSetup browser flow plus gpsoauth.exchange_token, since password-based gpsoauth.perform_master_login is restricted now. Invocation gotcha: keep-mcp declares an =mcp= entry-point script, but its dependency on the official =mcp= SDK ships a same-named script that wins resolution under uvx. The =uvx --from keep-mcp mcp= form from the README launches the SDK CLI instead of keep-mcp's server. Workaround: =uvx --from keep-mcp python -m server.cli= invokes keep-mcp's actual entry point directly, bypassing the collision. --- mcp/secrets.env.gpg | Bin 999 -> 1268 bytes mcp/servers.json | 9 +++++++++ 2 files changed, 9 insertions(+) (limited to 'mcp') diff --git a/mcp/secrets.env.gpg b/mcp/secrets.env.gpg index 2041539..88f809f 100644 Binary files a/mcp/secrets.env.gpg and b/mcp/secrets.env.gpg differ diff --git a/mcp/servers.json b/mcp/servers.json index 84050cb..f4a5b43 100644 --- a/mcp/servers.json +++ b/mcp/servers.json @@ -50,5 +50,14 @@ "slack-deepsat": { "type": "sse", "url": "http://127.0.0.1:13080/sse" + }, + "google-keep": { + "type": "stdio", + "command": "uvx", + "args": ["--from", "keep-mcp", "python", "-m", "server.cli"], + "env": { + "GOOGLE_EMAIL": "${GOOGLE_KEEP_EMAIL}", + "GOOGLE_MASTER_TOKEN": "${GOOGLE_KEEP_MASTER_TOKEN}" + } } } -- cgit v1.2.3