← gemini-file-search-rag-mcp

gemini-file-search-rag-mcp 1.0.2

npm · @node2flow/gemini-file-search-rag-mcp · current release

12
Tools
1
Resources
0
Templates
2
Prompts

Observation

Observed 2026-08-22T23:26:35.285Z using mcpSecurity-inventory. Status: partial. Negotiated protocol: 2025-06-18.

Server capabilities
{
  "tools": {},
  "prompts": {},
  "resources": {}
}

Tools 12

ToolCategoryAnnotationsRisk
gemini_create_storeCreate a new Gemini File Search store for RAG documents. Returns the created store resource. Use this to create a knowledge base before uploading documents.
Input schema
{
  "type": "object",
  "properties": {
    "display_name": {
      "type": "string",
      "description": "Display name for the store (max 512 characters)"
    }
  },
  "required": [
    "display_name"
  ]
}
Annotations
{
  "title": "Create Store",
  "readOnlyHint": false,
  "destructiveHint": false,
  "openWorldHint": false
}
Writes · Non-destructive
gemini_delete_documentDelete a document from a File Search store. Use force=true to also delete associated chunks.
Input schema
{
  "type": "object",
  "properties": {
    "document_name": {
      "type": "string",
      "description": "Document resource name, e.g. \"fileSearchStores/abc123/documents/doc456\""
    },
    "force": {
      "type": "boolean",
      "description": "If true, also delete associated chunks"
    }
  },
  "required": [
    "document_name"
  ]
}
Annotations
{
  "title": "Delete Document",
  "readOnlyHint": false,
  "destructiveHint": true,
  "openWorldHint": false
}
Writes · Destructive
gemini_delete_storeDelete a Gemini File Search store. Use force=true to also delete all documents inside it.
Input schema
{
  "type": "object",
  "properties": {
    "store_name": {
      "type": "string",
      "description": "Store resource name, e.g. \"fileSearchStores/abc123\""
    },
    "force": {
      "type": "boolean",
      "description": "If true, cascade delete all documents in the store"
    }
  },
  "required": [
    "store_name"
  ]
}
Annotations
{
  "title": "Delete Store",
  "readOnlyHint": false,
  "destructiveHint": true,
  "openWorldHint": false
}
Writes · Destructive
gemini_get_documentGet details of a specific document in a File Search store, including state, size, and metadata.
Input schema
{
  "type": "object",
  "properties": {
    "document_name": {
      "type": "string",
      "description": "Document resource name, e.g. \"fileSearchStores/abc123/documents/doc456\""
    }
  },
  "required": [
    "document_name"
  ]
}
Annotations
{
  "title": "Get Document",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_get_operationCheck the status of a store operation (create, delete, import). Returns whether the operation is done and any error details.
Input schema
{
  "type": "object",
  "properties": {
    "operation_name": {
      "type": "string",
      "description": "Operation resource name, e.g. \"fileSearchStores/abc123/operations/op456\""
    }
  },
  "required": [
    "operation_name"
  ]
}
Annotations
{
  "title": "Get Operation Status",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_get_storeGet details of a specific Gemini File Search store by its resource name.
Input schema
{
  "type": "object",
  "properties": {
    "store_name": {
      "type": "string",
      "description": "Store resource name, e.g. \"fileSearchStores/abc123\""
    }
  },
  "required": [
    "store_name"
  ]
}
Annotations
{
  "title": "Get Store",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_get_upload_operationCheck the status of a file upload operation. Returns whether the upload is done and any error details.
Input schema
{
  "type": "object",
  "properties": {
    "operation_name": {
      "type": "string",
      "description": "Upload operation resource name, e.g. \"fileSearchStores/abc123/upload/operations/op789\""
    }
  },
  "required": [
    "operation_name"
  ]
}
Annotations
{
  "title": "Get Upload Operation Status",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_import_file_to_storeImport a file from the Gemini Files API into a File Search store. Use this for large files that were uploaded separately via the Files API. Returns an operation to track import progress.
Input schema
{
  "type": "object",
  "properties": {
    "store_name": {
      "type": "string",
      "description": "Store resource name, e.g. \"fileSearchStores/abc123\""
    },
    "file_name": {
      "type": "string",
      "description": "Gemini file resource name, e.g. \"files/abc-123\""
    },
    "custom_metadata": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "stringValue": {
            "type": "string"
          },
          "numericValue": {
            "type": "number"
          }
        },
        "required": [
          "key"
        ]
      },
      "description": "Custom metadata key-value pairs for filtering (max 20)"
    }
  },
  "required": [
    "store_name",
    "file_name"
  ]
}
Annotations
{
  "title": "Import File to Store",
  "readOnlyHint": false,
  "destructiveHint": false,
  "openWorldHint": false
}
Writes · Non-destructive
gemini_list_documentsList documents in a Gemini File Search store. Returns document names, display names, state, size, and MIME types.
Input schema
{
  "type": "object",
  "properties": {
    "store_name": {
      "type": "string",
      "description": "Store resource name, e.g. \"fileSearchStores/abc123\""
    },
    "page_size": {
      "type": "number",
      "description": "Number of documents to return per page (default 10, max 20)"
    },
    "page_token": {
      "type": "string",
      "description": "Token for next page from previous response"
    }
  },
  "required": [
    "store_name"
  ]
}
Annotations
{
  "title": "List Documents",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_list_storesList all Gemini File Search stores. Returns store names, display names, and timestamps. Use to see available knowledge bases.
Input schema
{
  "type": "object",
  "properties": {
    "page_size": {
      "type": "number",
      "description": "Number of stores to return per page (default 10, max 20)"
    },
    "page_token": {
      "type": "string",
      "description": "Token for next page from previous response"
    }
  }
}
Annotations
{
  "title": "List Stores",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_rag_queryQuery your documents using Gemini RAG. Sends a natural language query grounded in your File Search stores. Returns AI-generated answer with source citations from your documents.
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Natural language query to search your documents"
    },
    "store_names": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Array of store resource names to search, e.g. [\"fileSearchStores/abc123\"]"
    },
    "model": {
      "type": "string",
      "description": "Gemini model to use (default: \"gemini-2.5-flash-lite\"). Options: gemini-2.5-flash-lite, gemini-2.5-flash, gemini-2.5-pro"
    },
    "metadata_filter": {
      "type": "string",
      "description": "Optional metadata filter expression (Google AIP-160 syntax)"
    }
  },
  "required": [
    "query",
    "store_names"
  ]
}
Annotations
{
  "title": "RAG Query",
  "readOnlyHint": true,
  "destructiveHint": false,
  "openWorldHint": true
}
Read only · Non-destructive
gemini_upload_to_storeUpload content directly to a Gemini File Search store. Accepts text content or base64-encoded binary. For large files, use gemini_import_file_to_store instead. Returns an operation to track upload progress.
Input schema
{
  "type": "object",
  "properties": {
    "store_name": {
      "type": "string",
      "description": "Store resource name, e.g. \"fileSearchStores/abc123\""
    },
    "mime_type": {
      "type": "string",
      "description": "MIME type of the content, e.g. \"text/plain\", \"application/pdf\", \"text/markdown\""
    },
    "content": {
      "type": "string",
      "description": "The content to upload. Plain text by default, or base64-encoded if content_encoding is \"base64\""
    },
    "display_name": {
      "type": "string",
      "description": "Display name for the document (optional)"
    },
    "content_encoding": {
      "type": "string",
      "enum": [
        "text",
        "base64"
      ],
      "description": "How the content is encoded: \"text\" (default) or \"base64\" for binary files"
    },
    "custom_metadata": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "stringValue": {
            "type": "string"
          },
          "numericValue": {
            "type": "number"
          }
        },
        "required": [
          "key"
        ]
      },
      "description": "Custom metadata key-value pairs for filtering (max 20)"
    }
  },
  "required": [
    "store_name",
    "mime_type",
    "content"
  ]
}
Annotations
{
  "title": "Upload to Store",
  "readOnlyHint": false,
  "destructiveHint": false,
  "openWorldHint": false
}
Writes · Non-destructive

Resources 1

Resource templates 0

Prompts 2

Let’s talk about MCP security.

Share your details and our security team will contact you.