@pan-sec/notebooklm-mcp 1.8.0 → 1.9.0

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.
@@ -124,12 +124,177 @@ Use this when you started deep_research with wait_for_completion=false.
124
124
  required: ["interaction_id"],
125
125
  },
126
126
  };
127
+ // =============================================================================
128
+ // Document Tools (Files API) - v1.9.0
129
+ // =============================================================================
130
+ /**
131
+ * Upload Document tool - upload a document to Gemini for querying
132
+ */
133
+ const uploadDocumentTool = {
134
+ name: "upload_document",
135
+ description: `Upload a document (PDF, text, etc.) to Gemini for querying.
136
+
137
+ ## What This Does
138
+ - Uploads a local file to Gemini's Files API
139
+ - File is retained for 48 hours
140
+ - Returns a file ID for use with query_document
141
+
142
+ ## Supported File Types
143
+ - PDF (up to 50MB, 1000 pages)
144
+ - TXT, MD, HTML, CSV, JSON, XML
145
+ - DOCX, DOC
146
+ - Images (PNG, JPG, GIF, WebP)
147
+ - Audio (MP3, WAV)
148
+ - Video (MP4)
149
+
150
+ ## When to Use
151
+ - You have a local document to analyze
152
+ - You want fast, API-based document queries (no browser needed)
153
+ - For temporary analysis (48h retention)
154
+
155
+ ## For Permanent Storage
156
+ Use create_notebook instead for permanent document storage with NotebookLM.
157
+
158
+ ## Requirements
159
+ - GEMINI_API_KEY environment variable must be set`,
160
+ inputSchema: {
161
+ type: "object",
162
+ properties: {
163
+ file_path: {
164
+ type: "string",
165
+ description: "Absolute path to the file to upload",
166
+ },
167
+ display_name: {
168
+ type: "string",
169
+ description: "Optional friendly name for the file",
170
+ },
171
+ },
172
+ required: ["file_path"],
173
+ },
174
+ };
175
+ /**
176
+ * Query Document tool - ask questions about an uploaded document
177
+ */
178
+ const queryDocumentTool = {
179
+ name: "query_document",
180
+ description: `Ask questions about an uploaded document.
181
+
182
+ ## What This Does
183
+ - Queries a document previously uploaded with upload_document
184
+ - Uses Gemini's document understanding (text, images, charts, tables)
185
+ - Returns answers grounded in the document content
186
+
187
+ ## Features
188
+ - Full document understanding (not just text extraction)
189
+ - Can analyze charts, diagrams, and tables in PDFs
190
+ - Multi-document queries (pass additional file IDs)
191
+ - Fast API-based (no browser automation)
192
+
193
+ ## When to Use
194
+ - Quick document analysis without browser
195
+ - Comparing multiple documents
196
+ - Extracting specific information
197
+
198
+ ## Requirements
199
+ - GEMINI_API_KEY environment variable must be set
200
+ - Document must be uploaded first with upload_document`,
201
+ inputSchema: {
202
+ type: "object",
203
+ properties: {
204
+ file_name: {
205
+ type: "string",
206
+ description: "File name/ID returned from upload_document",
207
+ },
208
+ query: {
209
+ type: "string",
210
+ description: "Question to ask about the document",
211
+ },
212
+ model: {
213
+ type: "string",
214
+ enum: ["gemini-2.5-flash", "gemini-2.5-pro", "gemini-3-flash-preview"],
215
+ default: "gemini-2.5-flash",
216
+ description: "Model to use (flash is faster, pro is more capable)",
217
+ },
218
+ additional_files: {
219
+ type: "array",
220
+ items: { type: "string" },
221
+ description: "Additional file IDs to include in the query (for multi-document analysis)",
222
+ },
223
+ },
224
+ required: ["file_name", "query"],
225
+ },
226
+ };
227
+ /**
228
+ * List Documents tool - list all uploaded documents
229
+ */
230
+ const listDocumentsTool = {
231
+ name: "list_documents",
232
+ description: `List all documents uploaded to Gemini.
233
+
234
+ ## What This Does
235
+ - Shows all files currently stored in Gemini Files API
236
+ - Files expire 48 hours after upload
237
+ - Returns file names, sizes, and expiration times
238
+
239
+ ## Use Cases
240
+ - Check what documents are available for querying
241
+ - Find file IDs for query_document
242
+ - Monitor storage usage
243
+
244
+ ## Requirements
245
+ - GEMINI_API_KEY environment variable must be set`,
246
+ inputSchema: {
247
+ type: "object",
248
+ properties: {
249
+ page_size: {
250
+ type: "number",
251
+ default: 100,
252
+ description: "Maximum number of files to return",
253
+ },
254
+ },
255
+ },
256
+ };
257
+ /**
258
+ * Delete Document tool - delete an uploaded document
259
+ */
260
+ const deleteDocumentTool = {
261
+ name: "delete_document",
262
+ description: `Delete an uploaded document from Gemini.
263
+
264
+ ## What This Does
265
+ - Removes a file from Gemini Files API
266
+ - File will no longer be available for queries
267
+ - Frees up storage space
268
+
269
+ ## Notes
270
+ - Files auto-delete after 48 hours anyway
271
+ - Use this to immediately remove sensitive documents
272
+
273
+ ## Requirements
274
+ - GEMINI_API_KEY environment variable must be set`,
275
+ inputSchema: {
276
+ type: "object",
277
+ properties: {
278
+ file_name: {
279
+ type: "string",
280
+ description: "File name/ID to delete (from upload_document or list_documents)",
281
+ },
282
+ },
283
+ required: ["file_name"],
284
+ },
285
+ };
127
286
  /**
128
287
  * All Gemini tools
129
288
  */
130
289
  export const geminiTools = [
290
+ // Research tools
131
291
  deepResearchTool,
132
292
  geminiQueryTool,
133
293
  getResearchStatusTool,
294
+ // Document tools (v1.9.0)
295
+ uploadDocumentTool,
296
+ queryDocumentTool,
297
+ listDocumentsTool,
298
+ deleteDocumentTool,
134
299
  ];
135
300
  //# sourceMappingURL=gemini.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/tools/definitions/gemini.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,gBAAgB,GAAS;IAC7B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE;;;;;;;;;;;;;;;0DAe2C;IACxD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,mBAAmB,EAAE;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,qFAAqF;aACnG;YACD,gBAAgB,EAAE;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG;gBACZ,WAAW,EAAE,0DAA0D;aACxE;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,eAAe,GAAS;IAC5B,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE;;;;;;;;;;;;;;4CAc6B;IAC1C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wBAAwB;aACtC;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,wBAAwB,CAAC;gBACtE,OAAO,EAAE,kBAAkB;gBAC3B,WAAW,EAAE,qDAAqD;aACnE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,aAAa,CAAC;iBACzD;gBACD,WAAW,EAAE,wCAAwC;aACtD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,qDAAqD;aACnE;YACD,uBAAuB,EAAE;gBACvB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;aACjE;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,qBAAqB,GAAS;IAClC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE;;;;;;;mCAOoB;IACjC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;SACF;QACD,QAAQ,EAAE,CAAC,gBAAgB,CAAC;KAC7B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,gBAAgB;IAChB,eAAe;IACf,qBAAqB;CACtB,CAAC"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/tools/definitions/gemini.ts"],"names":[],"mappings":"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"}
@@ -462,6 +462,37 @@ export declare class ToolHandlers {
462
462
  handleGetResearchStatus(args: {
463
463
  interaction_id: string;
464
464
  }): Promise<ToolResult<GeminiInteraction>>;
465
+ /**
466
+ * Upload a document to Gemini Files API
467
+ */
468
+ handleUploadDocument(args: {
469
+ file_path: string;
470
+ display_name?: string;
471
+ }): Promise<ToolResult<import("../gemini/types.js").UploadDocumentResult>>;
472
+ /**
473
+ * Query an uploaded document
474
+ */
475
+ handleQueryDocument(args: {
476
+ file_name: string;
477
+ query: string;
478
+ model?: string;
479
+ additional_files?: string[];
480
+ }): Promise<ToolResult<import("../gemini/types.js").QueryDocumentResult>>;
481
+ /**
482
+ * List all uploaded documents
483
+ */
484
+ handleListDocuments(args: {
485
+ page_size?: number;
486
+ }): Promise<ToolResult<import("../gemini/types.js").ListDocumentsResult>>;
487
+ /**
488
+ * Delete an uploaded document
489
+ */
490
+ handleDeleteDocument(args: {
491
+ file_name: string;
492
+ }): Promise<ToolResult<{
493
+ deleted: boolean;
494
+ fileName: string;
495
+ }>>;
465
496
  /**
466
497
  * Cleanup all resources (called on server shutdown)
467
498
  */
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAA+B,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAerB,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAiB,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC9I,OAAO,EAAgB,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC3I,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC1G,OAAO,EAAwB,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGnG,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAK5B;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,YAAY,CAAe;gBAEvB,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe;IAU9F;;OAEG;IACG,iBAAiB,CACrB,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,cAAc,CAAC;KAClC,EACD,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAqOzC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CACjC,UAAU,CAAC;QACT,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,KAAK,CAAC;YACd,EAAE,EAAE,MAAM,CAAC;YACX,UAAU,EAAE,MAAM,CAAC;YACnB,aAAa,EAAE,MAAM,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,gBAAgB,EAAE,MAAM,CAAC;YACzB,aAAa,EAAE,MAAM,CAAC;YACtB,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC,CAAC;KACJ,CAAC,CACH;IA0CD;;OAEG;IACG,kBAAkB,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAC7D,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CACpE;IAqCD;;OAEG;IACG,kBAAkB,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAC7D,UAAU,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CACpE;IAuCD;;OAEG;IACG,eAAe,IAAI,OAAO,CAC9B,UAAU,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,OAAO,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,eAAe,EAAE,OAAO,CAAC;QACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC,CACH;IA8CD;;;;;OAKG;IACG,eAAe,CACnB,IAAI,EAAE;QACJ,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,cAAc,CAAC;KAClC,EACD,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CACR,UAAU,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,OAAO,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC,CACH;IAmFD;;;;;;;;;OASG;IACG,YAAY,CAChB,IAAI,EAAE;QACJ,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,cAAc,CAAC;KAClC,EACD,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CACR,UAAU,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,OAAO,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC,CACH;IAuFD;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAqBvF;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,UAAU,CAAC;QAAE,SAAS,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC,CAAC;IAoBtE;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IA6BrF;;OAEG;IACG,oBAAoB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAqBxF;;OAEG;IACG,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAqB7F;;OAEG;IACG,oBAAoB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAyCpH;;OAEG;IACG,qBAAqB,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,SAAS,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC,CAAC;IAqB/F;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAoBvD;;;;OAIG;IACG,mBAAmB,CAAC,IAAI,EAAE;QAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,OAAO,CAAC,UAAU,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IAwEH;;;;OAIG;IACG,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC;QAC/C,OAAO,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QACzE,YAAY,EAAE,MAAM,CAAC;QACrB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,gBAAgB,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;KACnF,CAAC,CAAC;IAiCH;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC;QACzC,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5D,OAAO,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAC3B,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAC1D,aAAa,EAAE,OAAO,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;IA8BH;;;;OAIG;IACG,kBAAkB,CAAC,IAAI,EAAE;QAC7B,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;KAChC,GAAG,OAAO,CAAC,UAAU,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,kBAAkB,EAAE,MAAM,CAAC;YAAC,aAAa,EAAE,MAAM,CAAA;SAAE,CAAC;QACjF,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAgCH;;;;OAIG;IACG,oBAAoB,CACxB,IAAI,EAAE,mBAAmB,EACzB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAkHvC;;;;OAIG;IACG,0BAA0B,CAC9B,IAAI,EAAE;QACJ,SAAS,EAAE,KAAK,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,KAAK,CAAC;gBAAE,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;gBAAC,KAAK,EAAE,MAAM,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;YACjF,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;SACnB,CAAC,CAAC;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,EACD,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,UAAU,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,OAAO,CAAC;YACjB,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;KACJ,CAAC,CAAC;IAuHH;;;;OAIG;IACG,iBAAiB,CACrB,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GACnD,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IA6ClC;;;;OAIG;IACG,iBAAiB,CACrB,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,GACrD,OAAO,CACR,UAAU,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE;YACR,UAAU,EAAE,KAAK,CAAC;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,WAAW,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,MAAM,EAAE,CAAC;gBAAC,UAAU,EAAE,MAAM,CAAC;gBAAC,QAAQ,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;YACjH,UAAU,EAAE,MAAM,CAAC;YACnB,cAAc,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,MAAM,CAAC,EAAE;YACP,YAAY,EAAE,MAAM,EAAE,CAAC;YACvB,WAAW,EAAE,MAAM,EAAE,CAAC;YACtB,cAAc,EAAE,MAAM,CAAC;YACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SACnE,CAAC;KACH,CAAC,CACH;IAuED;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE;QAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAiD1C;;;;OAIG;IACG,eAAe,CAAC,IAAI,EAAE;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,cAAc,CAAC;KACxB,GAAG,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAiExC;;;;OAIG;IACG,kBAAkB,CAAC,IAAI,EAAE;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IA6D3C;;;;OAIG;IACG,2BAA2B,CAAC,IAAI,EAAE;QACtC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAuD5C;;;;OAIG;IACG,oBAAoB,CAAC,IAAI,EAAE;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAkDpC;;;;OAIG;IACG,mBAAmB,CAAC,IAAI,EAAE;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAuD5C;;;;OAIG;IACG,sBAAsB,CAAC,IAAI,EAAE;QACjC,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;QACnD,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IA6CtC;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,UAAU,CAAC;QAC7C,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,YAAY,CAAC;KACrB,CAAC,CAAC;IAoBH;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAChE,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IA6BH;;;;OAIG;IACG,mBAAmB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAClE,OAAO,EAAE,OAAO,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC,CAAC;IA8BH;;;;OAIG;IACG,kBAAkB,CACtB,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,EACD,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAqE1C;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAuF1C;;;;OAIG;IACG,uBAAuB,CAAC,IAAI,EAAE;QAClC,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAoC1C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAK/B"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"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"}
@@ -1897,6 +1897,152 @@ export class ToolHandlers {
1897
1897
  return { success: false, error: errorMessage };
1898
1898
  }
1899
1899
  }
1900
+ // ==================== DOCUMENT TOOLS (v1.9.0) ====================
1901
+ /**
1902
+ * Upload a document to Gemini Files API
1903
+ */
1904
+ async handleUploadDocument(args) {
1905
+ const startTime = Date.now();
1906
+ log.info(`🔧 [TOOL] upload_document called`);
1907
+ log.info(` File: ${args.file_path}`);
1908
+ // Check if Gemini is available
1909
+ if (!this.geminiClient.isAvailable()) {
1910
+ log.error(`❌ [TOOL] upload_document failed: Gemini API key not configured`);
1911
+ return {
1912
+ success: false,
1913
+ error: "Gemini API key not configured. Set GEMINI_API_KEY environment variable.",
1914
+ };
1915
+ }
1916
+ try {
1917
+ // Validate file path
1918
+ if (!args.file_path || args.file_path.trim().length === 0) {
1919
+ throw new Error("File path cannot be empty");
1920
+ }
1921
+ const result = await this.geminiClient.uploadDocument({
1922
+ filePath: args.file_path,
1923
+ displayName: args.display_name,
1924
+ });
1925
+ const durationMs = Date.now() - startTime;
1926
+ await audit.tool("upload_document", { file: sanitizeForLogging(args.file_path) }, true, durationMs);
1927
+ log.success(`✅ [TOOL] upload_document completed in ${durationMs}ms`);
1928
+ return {
1929
+ success: true,
1930
+ data: result,
1931
+ };
1932
+ }
1933
+ catch (error) {
1934
+ const errorMessage = error instanceof Error ? error.message : String(error);
1935
+ const durationMs = Date.now() - startTime;
1936
+ await audit.tool("upload_document", { file: sanitizeForLogging(args.file_path) }, false, durationMs, errorMessage);
1937
+ log.error(`❌ [TOOL] upload_document failed: ${errorMessage}`);
1938
+ return { success: false, error: errorMessage };
1939
+ }
1940
+ }
1941
+ /**
1942
+ * Query an uploaded document
1943
+ */
1944
+ async handleQueryDocument(args) {
1945
+ const startTime = Date.now();
1946
+ log.info(`🔧 [TOOL] query_document called`);
1947
+ log.info(` File: ${args.file_name}`);
1948
+ log.info(` Query: ${args.query.substring(0, 50)}...`);
1949
+ // Check if Gemini is available
1950
+ if (!this.geminiClient.isAvailable()) {
1951
+ log.error(`❌ [TOOL] query_document failed: Gemini API key not configured`);
1952
+ return {
1953
+ success: false,
1954
+ error: "Gemini API key not configured. Set GEMINI_API_KEY environment variable.",
1955
+ };
1956
+ }
1957
+ try {
1958
+ // Validate inputs
1959
+ if (!args.file_name || args.file_name.trim().length === 0) {
1960
+ throw new Error("File name cannot be empty");
1961
+ }
1962
+ if (!args.query || args.query.trim().length === 0) {
1963
+ throw new Error("Query cannot be empty");
1964
+ }
1965
+ const result = await this.geminiClient.queryDocument({
1966
+ fileName: args.file_name,
1967
+ query: args.query,
1968
+ model: args.model,
1969
+ additionalFiles: args.additional_files,
1970
+ });
1971
+ const durationMs = Date.now() - startTime;
1972
+ await audit.tool("query_document", { file: args.file_name, query: sanitizeForLogging(args.query) }, true, durationMs);
1973
+ log.success(`✅ [TOOL] query_document completed in ${durationMs}ms`);
1974
+ return {
1975
+ success: true,
1976
+ data: result,
1977
+ };
1978
+ }
1979
+ catch (error) {
1980
+ const errorMessage = error instanceof Error ? error.message : String(error);
1981
+ const durationMs = Date.now() - startTime;
1982
+ await audit.tool("query_document", { file: args.file_name }, false, durationMs, errorMessage);
1983
+ log.error(`❌ [TOOL] query_document failed: ${errorMessage}`);
1984
+ return { success: false, error: errorMessage };
1985
+ }
1986
+ }
1987
+ /**
1988
+ * List all uploaded documents
1989
+ */
1990
+ async handleListDocuments(args) {
1991
+ log.info(`🔧 [TOOL] list_documents called`);
1992
+ // Check if Gemini is available
1993
+ if (!this.geminiClient.isAvailable()) {
1994
+ log.error(`❌ [TOOL] list_documents failed: Gemini API key not configured`);
1995
+ return {
1996
+ success: false,
1997
+ error: "Gemini API key not configured. Set GEMINI_API_KEY environment variable.",
1998
+ };
1999
+ }
2000
+ try {
2001
+ const result = await this.geminiClient.listFiles(args.page_size || 100);
2002
+ log.success(`✅ [TOOL] list_documents: ${result.totalCount} files`);
2003
+ return {
2004
+ success: true,
2005
+ data: result,
2006
+ };
2007
+ }
2008
+ catch (error) {
2009
+ const errorMessage = error instanceof Error ? error.message : String(error);
2010
+ log.error(`❌ [TOOL] list_documents failed: ${errorMessage}`);
2011
+ return { success: false, error: errorMessage };
2012
+ }
2013
+ }
2014
+ /**
2015
+ * Delete an uploaded document
2016
+ */
2017
+ async handleDeleteDocument(args) {
2018
+ log.info(`🔧 [TOOL] delete_document called`);
2019
+ log.info(` File: ${args.file_name}`);
2020
+ // Check if Gemini is available
2021
+ if (!this.geminiClient.isAvailable()) {
2022
+ log.error(`❌ [TOOL] delete_document failed: Gemini API key not configured`);
2023
+ return {
2024
+ success: false,
2025
+ error: "Gemini API key not configured. Set GEMINI_API_KEY environment variable.",
2026
+ };
2027
+ }
2028
+ try {
2029
+ // Validate file name
2030
+ if (!args.file_name || args.file_name.trim().length === 0) {
2031
+ throw new Error("File name cannot be empty");
2032
+ }
2033
+ await this.geminiClient.deleteFile(args.file_name);
2034
+ log.success(`✅ [TOOL] delete_document: ${args.file_name} deleted`);
2035
+ return {
2036
+ success: true,
2037
+ data: { deleted: true, fileName: args.file_name },
2038
+ };
2039
+ }
2040
+ catch (error) {
2041
+ const errorMessage = error instanceof Error ? error.message : String(error);
2042
+ log.error(`❌ [TOOL] delete_document failed: ${errorMessage}`);
2043
+ return { success: false, error: errorMessage };
2044
+ }
2045
+ }
1900
2046
  // ==================== CLEANUP ====================
1901
2047
  /**
1902
2048
  * Cleanup all resources (called on server shutdown)