@kembec/gcal-mcp-linux-x64 0.1.0 → 0.1.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 (2) hide show
  1. package/README.md +56 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,56 @@
1
+ # gcal-mcp
2
+
3
+ An MCP server that exposes Google Calendar as tools for any model that speaks the Model Context Protocol.
4
+
5
+ The binary talks JSON-RPC 2.0 over stdio, the same way language servers and other MCP servers do. It handles the Google OAuth2 PKCE flow itself — point it at a downloaded OAuth client JSON, run it once, and tokens are cached under `~/.config/kembec/gcal-mcp/tokens/`. The server stays small (a single Rust binary, no daemon) and reuses one refresh token per account.
6
+
7
+ ## Install
8
+
9
+ ```sh
10
+ npm install -g @kembec/gcal-mcp
11
+ ```
12
+
13
+ The umbrella package only ships a thin Node launcher; the actual binary comes from the matching `@kembec/gcal-mcp-<platform>` optional dependency that npm picks at install time. Supported targets: `darwin-arm64`, `darwin-x64`, `linux-x64`, `win32-x64`.
14
+
15
+ You can also build from source:
16
+
17
+ ```sh
18
+ git clone <this-repo>
19
+ cd gcal-mcp
20
+ cargo build --release
21
+ # binary at target/release/gcal-mcp
22
+ ```
23
+
24
+ ## Configure
25
+
26
+ 1. Create an OAuth client in the Google Cloud Console. Choose "Desktop app". Download the resulting JSON.
27
+ 2. Point the server at it:
28
+
29
+ ```sh
30
+ export GOOGLE_OAUTH_CREDENTIALS=/path/to/client_secret.json
31
+ ```
32
+
33
+ 3. On the first tool call that needs the API, the server opens a browser, waits for the callback on `http://127.0.0.1:8080/callback`, and writes a token file. Subsequent runs refresh silently.
34
+
35
+ The Calendar scope used is `https://www.googleapis.com/auth/calendar`.
36
+
37
+ ## Use from an MCP client
38
+
39
+ Add the binary to your client config (Claude Desktop, OpenClaw, etc.) as a stdio MCP server:
40
+
41
+ ```json
42
+ {
43
+ "command": "gcal-mcp",
44
+ "env": {
45
+ "GOOGLE_OAUTH_CREDENTIALS": "/path/to/client_secret.json"
46
+ }
47
+ }
48
+ ```
49
+
50
+ The server advertises 11 tools: `list-calendars`, `list-events`, `search-events`, `get-event`, `create-event`, `update-event`, `delete-event`, `respond-to-event`, `get-freebusy`, `get-current-time`, and `manage-accounts`. Each one takes a JSON `arguments` object; required fields are validated up front and reported as `-32602` errors. `manage-accounts` is the entry point for adding or removing additional Google accounts — most other tools accept an optional `account` field to pick which stored token to use.
51
+
52
+ Datetimes are RFC3339 (e.g. `2026-05-14T10:00:00-05:00`). Pass `YYYY-MM-DD` to `start`/`end` of `create-event` to make an all-day event. Pass an IANA `timezone` to attach a `timeZone` to dated events.
53
+
54
+ ## License
55
+
56
+ MIT.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kembec/gcal-mcp-linux-x64",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "gcal-mcp binary for linux x64",
5
5
  "os": ["linux"],
6
6
  "cpu": ["x64"],