gogcli-mcp 1.0.6 → 1.0.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/dist/index.js CHANGED
@@ -30528,16 +30528,6 @@ function registerDocsTools(server2) {
30528
30528
  }, async ({ docId, account }) => {
30529
30529
  return runOrDiagnose(["docs", "structure", docId], { account });
30530
30530
  });
30531
- server2.registerTool("gog_docs_comments", {
30532
- description: 'Run a docs comments subcommand. Subcommands: list, get, add, reply, resolve, delete. Examples: subcommand="list", args=["<docId>"] | subcommand="add", args=["<docId>", "<text>", "--quoted=<passage>"] | subcommand="reply", args=["<docId>", "<commentId>", "<text>"]. For dedicated comment tools with full parameter validation, use the gogcli-mcp-docs package.',
30533
- inputSchema: {
30534
- subcommand: external_exports.string().describe("Comments subcommand: list, get, add, reply, resolve, delete"),
30535
- args: external_exports.array(external_exports.string()).describe("Positional args and flags for the subcommand"),
30536
- account: accountParam
30537
- }
30538
- }, async ({ subcommand, args, account }) => {
30539
- return runOrDiagnose(["docs", "comments", subcommand, ...args], { account });
30540
- });
30541
30531
  server2.registerTool("gog_docs_run", {
30542
30532
  description: "Run any gog docs subcommand not covered by the other tools. Run `gog docs --help` for the full list of subcommands, or `gog docs <subcommand> --help` for flags on a specific subcommand.",
30543
30533
  annotations: { destructiveHint: true },
@@ -30903,7 +30893,7 @@ function registerTasksTools(server2) {
30903
30893
  }
30904
30894
 
30905
30895
  // src/server.ts
30906
- var VERSION = true ? "1.0.6" : "0.0.0";
30896
+ var VERSION = true ? "1.0.8" : "0.0.0";
30907
30897
  function createBaseServer(options) {
30908
30898
  const server2 = new McpServer({
30909
30899
  name: options?.name ?? "gogcli",
package/dist/lib.js CHANGED
@@ -30435,16 +30435,6 @@ function registerDocsTools(server) {
30435
30435
  }, async ({ docId, account }) => {
30436
30436
  return runOrDiagnose(["docs", "structure", docId], { account });
30437
30437
  });
30438
- server.registerTool("gog_docs_comments", {
30439
- description: 'Run a docs comments subcommand. Subcommands: list, get, add, reply, resolve, delete. Examples: subcommand="list", args=["<docId>"] | subcommand="add", args=["<docId>", "<text>", "--quoted=<passage>"] | subcommand="reply", args=["<docId>", "<commentId>", "<text>"]. For dedicated comment tools with full parameter validation, use the gogcli-mcp-docs package.',
30440
- inputSchema: {
30441
- subcommand: external_exports3.string().describe("Comments subcommand: list, get, add, reply, resolve, delete"),
30442
- args: external_exports3.array(external_exports3.string()).describe("Positional args and flags for the subcommand"),
30443
- account: accountParam
30444
- }
30445
- }, async ({ subcommand, args, account }) => {
30446
- return runOrDiagnose(["docs", "comments", subcommand, ...args], { account });
30447
- });
30448
30438
  server.registerTool("gog_docs_run", {
30449
30439
  description: "Run any gog docs subcommand not covered by the other tools. Run `gog docs --help` for the full list of subcommands, or `gog docs <subcommand> --help` for flags on a specific subcommand.",
30450
30440
  annotations: { destructiveHint: true },
@@ -30810,7 +30800,7 @@ function registerTasksTools(server) {
30810
30800
  }
30811
30801
 
30812
30802
  // src/server.ts
30813
- var VERSION = true ? "1.0.6" : "0.0.0";
30803
+ var VERSION = true ? "1.0.8" : "0.0.0";
30814
30804
  function createBaseServer(options) {
30815
30805
  const server = new McpServer({
30816
30806
  name: options?.name ?? "gogcli",
package/manifest.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "manifest_version": "0.3",
4
4
  "name": "gogcli-mcp",
5
5
  "display_name": "gogcli",
6
- "version": "1.0.6",
6
+ "version": "1.0.8",
7
7
  "description": "Google Sheets (and more) for Claude via gogcli — read, write, and manage spreadsheets",
8
8
  "author": {
9
9
  "name": "Chris Hall",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gogcli-mcp",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "MCP server wrapping gogcli for Google service access",
5
5
  "repository": {
6
6
  "type": "git",
package/src/tools/docs.ts CHANGED
@@ -74,23 +74,6 @@ export function registerDocsTools(server: McpServer): void {
74
74
  return runOrDiagnose(['docs', 'structure', docId], { account });
75
75
  });
76
76
 
77
- // --- Comments (generic escape hatch — full comment tools are in gogcli-mcp-docs) ---
78
-
79
- server.registerTool('gog_docs_comments', {
80
- description:
81
- 'Run a docs comments subcommand. Subcommands: list, get, add, reply, resolve, delete. ' +
82
- 'Examples: subcommand="list", args=["<docId>"] | subcommand="add", args=["<docId>", "<text>", "--quoted=<passage>"] | ' +
83
- 'subcommand="reply", args=["<docId>", "<commentId>", "<text>"]. ' +
84
- 'For dedicated comment tools with full parameter validation, use the gogcli-mcp-docs package.',
85
- inputSchema: {
86
- subcommand: z.string().describe('Comments subcommand: list, get, add, reply, resolve, delete'),
87
- args: z.array(z.string()).describe('Positional args and flags for the subcommand'),
88
- account: accountParam,
89
- },
90
- }, async ({ subcommand, args, account }) => {
91
- return runOrDiagnose(['docs', 'comments', subcommand, ...args], { account });
92
- });
93
-
94
77
  server.registerTool('gog_docs_run', {
95
78
  description: 'Run any gog docs subcommand not covered by the other tools. Run `gog docs --help` for the full list of subcommands, or `gog docs <subcommand> --help` for flags on a specific subcommand.',
96
79
  annotations: { destructiveHint: true },
@@ -161,49 +161,6 @@ describe('gog_docs_structure', () => {
161
161
  });
162
162
  });
163
163
 
164
- // --- Comments (generic escape hatch) ---
165
-
166
- describe('gog_docs_comments', () => {
167
- it('passes subcommand and args to runner', async () => {
168
- vi.mocked(runner.run).mockResolvedValue('[{"id":"c1"}]');
169
- const handlers = setupHandlers();
170
- const result = await handlers.get('gog_docs_comments')!({ subcommand: 'list', args: ['abc'] });
171
- expect(runner.run).toHaveBeenCalledWith(['docs', 'comments', 'list', 'abc'], { account: undefined });
172
- expect(result.content[0].text).toContain('c1');
173
- });
174
-
175
- it('passes flags through args', async () => {
176
- vi.mocked(runner.run).mockResolvedValue('{}');
177
- const handlers = setupHandlers();
178
- await handlers.get('gog_docs_comments')!({
179
- subcommand: 'add', args: ['abc', 'Nice work', '--quoted=paragraph'],
180
- });
181
- expect(runner.run).toHaveBeenCalledWith(
182
- ['docs', 'comments', 'add', 'abc', 'Nice work', '--quoted=paragraph'],
183
- { account: undefined },
184
- );
185
- });
186
-
187
- it('forwards account override', async () => {
188
- vi.mocked(runner.run).mockResolvedValue('{}');
189
- const handlers = setupHandlers();
190
- await handlers.get('gog_docs_comments')!({
191
- subcommand: 'list', args: ['abc'], account: 'other@gmail.com',
192
- });
193
- expect(runner.run).toHaveBeenCalledWith(
194
- ['docs', 'comments', 'list', 'abc'],
195
- { account: 'other@gmail.com' },
196
- );
197
- });
198
-
199
- it('returns error text on failure', async () => {
200
- vi.mocked(runner.run).mockRejectedValue(new Error('Comments failed'));
201
- const handlers = setupHandlers();
202
- const result = await handlers.get('gog_docs_comments')!({ subcommand: 'list', args: ['bad'] });
203
- expect(result.content[0].text).toContain('Error: Comments failed');
204
- });
205
- });
206
-
207
164
  describe('gog_docs_run', () => {
208
165
  it('passes raw subcommand and args to runner', async () => {
209
166
  vi.mocked(runner.run).mockResolvedValue('{}');
package/dist/index.d.ts DELETED
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/lib.d.ts DELETED
@@ -1,6 +0,0 @@
1
- export { createBaseServer, VERSION } from './server.js';
2
- export { run } from './runner.js';
3
- export type { RunOptions, Spawner } from './runner.js';
4
- export { accountParam, runOrDiagnose, toText, toError } from './tools/utils.js';
5
- export type { ToolResult } from './tools/utils.js';
6
- //# sourceMappingURL=lib.d.ts.map
package/dist/lib.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChF,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/runner.d.ts DELETED
@@ -1,12 +0,0 @@
1
- import type { ChildProcess } from 'node:child_process';
2
- export type Spawner = (command: string, args: string[], options: {
3
- env: NodeJS.ProcessEnv;
4
- }) => ChildProcess;
5
- export interface RunOptions {
6
- account?: string;
7
- spawner?: Spawner;
8
- interactive?: boolean;
9
- timeout?: number;
10
- }
11
- export declare function run(args: string[], options?: RunOptions): Promise<string>;
12
- //# sourceMappingURL=runner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,MAAM,OAAO,GAAG,CACpB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,KAChC,YAAY,CAAC;AAElB,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAaD,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DnF"}
package/dist/server.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare const VERSION: string;
3
- export declare function createBaseServer(options?: {
4
- name?: string;
5
- version?: string;
6
- }): McpServer;
7
- //# sourceMappingURL=server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAYpE,eAAO,MAAM,OAAO,QAAmE,CAAC;AAExF,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAgBzF"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerAuthTools(server: McpServer): void;
3
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/tools/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwEzD"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerCalendarTools(server: McpServer): void;
3
- //# sourceMappingURL=calendar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/tools/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2H7D"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerContactsTools(server: McpServer): void;
3
- //# sourceMappingURL=contacts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/tools/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkE7D"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerDocsTools(server: McpServer): void;
3
- //# sourceMappingURL=docs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/tools/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoGzD"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerDriveTools(server: McpServer): void;
3
- //# sourceMappingURL=drive.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drive.d.ts","sourceRoot":"","sources":["../../src/tools/drive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgH1D"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerGmailTools(server: McpServer): void;
3
- //# sourceMappingURL=gmail.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gmail.d.ts","sourceRoot":"","sources":["../../src/tools/gmail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA8D1D"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerSheetsTools(server: McpServer): void;
3
- //# sourceMappingURL=sheets.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sheets.d.ts","sourceRoot":"","sources":["../../src/tools/sheets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuG3D"}
@@ -1,3 +0,0 @@
1
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- export declare function registerTasksTools(server: McpServer): void;
3
- //# sourceMappingURL=tasks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/tools/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsF1D"}
@@ -1,14 +0,0 @@
1
- import { z } from 'zod';
2
- export type ToolResult = {
3
- content: [{
4
- type: 'text';
5
- text: string;
6
- }];
7
- };
8
- export declare const accountParam: z.ZodOptional<z.ZodString>;
9
- export declare function toText(output: string): ToolResult;
10
- export declare function toError(err: unknown): ToolResult;
11
- export declare function runOrDiagnose(args: string[], options: {
12
- account?: string;
13
- }): Promise<ToolResult>;
14
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,EAAE,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AAEvE,eAAO,MAAM,YAAY,4BAExB,CAAC;AAEF,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAEjD;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAEhD;AAQD,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5B,OAAO,CAAC,UAAU,CAAC,CAerB"}