Gemini Embedding 2 MCP Server
Allows connection to Windsurf (Cascade) for searching and retrieving local multimodal documents.
Uses Google's Gemini Embedding 2 model for multimodal embedding and search.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Gemini Embedding 2 MCP Serverfind PDF pages about design tokens"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Connect your local documents, code, PDFs, images, audio, and video directly to Claude, Cursor, or VS Code using Google's gemini-embedding-2-preview model and a strictly local ChromaDB vector database.
Unlike text-only local RAG tools, this server keeps one local memory layer across text, visual PDF pages, images, audio, and video, then returns exact file paths and page or chunk context back to your agent.
Why This Is Different
One embedding space across modalities: Search code, PDFs, images, audio, and video from the same memory layer.
Local-first persistence: Your index stays in
~/.gemini_mcp_db, not in a hosted vector database.Agent-friendly retrieval: Search results include exact paths, types, modalities, and page-aware context.
Zero-config by default: The server uses built-in guardrails and sensible indexing defaults so most users do not need a config file.
Related MCP server: Mnemos
What You Can Ask
Find the PDF page that explains our design tokens.Search my image library for screenshots of dashboards with dark sidebars.Find the audio or video clip where we talked about pricing changes.Search only my work docs folder for onboarding notes about incident response.Give me the surrounding context for result 2 so I can cite the original file correctly.
โจ Key Features
Feature | Description |
๐ง Unified Multimodal Search | Stores text, visual PDF pages, images, audio, and video in one local semantic memory so a single query can retrieve across modalities. |
๐ Visual PDF Retrieval | Renders PDFs page-by-page as images for Gemini Embedding 2 while retaining extracted text for agent-readable citations and context. |
๐ฏ Precision Retrieval Controls | Supports compact filters for scope, path prefix, type, extension, and modality so agents can search precisely without heavy configuration. |
๐ Preview Before Indexing |
|
๐งพ Context-Aware Results |
|
๐ก๏ธ Local Privacy + Guardrails | Uses a local ChromaDB store, skips junk folders by default, blocks dangerous root scans, and handles deduplication and ghost-file cleanup automatically. |
๐ Installation & Setup
We support two ways to run this server: Zero-Install (Recommended) or Local Developer Clone.
Make sure you have uv installed on your machine (pip install uv).
Method 1: Zero-Install (Recommended)
You can point your AI assistant to run the server directly from GitHub without ever cloning the repository locally. uvx acts like npx for Python, downloading and caching the server in a secure ephemeral environment automatically.
PyPI is configured as the long-term stable distribution channel for tagged releases. Until the first PyPI publish completes, use the pinned Git release-tag install below.
For a stable install, pin to a release tag:
uvx --from git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@<release-tag> gemini-embedding-2-mcpExample:
uvx --from git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1 gemini-embedding-2-mcpFor an edge install, omit the tag and track the latest main branch state.
Once PyPI publishing is live, the stable install command becomes:
uvx gemini-embedding-2-mcp-server๐ Getting your Gemini API Key
To power the embedding model, you need a free API key from Google.
Go to Google AI Studio.
Click Create API key.
Copy the key and use it in your client configurations below as
GEMINI_API_KEY.
๐ Client Connection Guides
๐ค Claude Code (CLI)
You can attach this server to the Claude Code CLI natively. Run the following command in your terminal:
claude mcp add gemini-embedding-2-mcp \
--env GEMINI_API_KEY="your-api-key-here" \
-- uvx --from git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1 gemini-embedding-2-mcp๐ฆ Claude Desktop
Open your Claude Desktop config file (usually ~/Library/Application Support/Claude/claude_desktop_config.json on macOS) and add:
{
"mcpServers": {
"gemini-embedding-2-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1",
"gemini-embedding-2-mcp"
],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}๐ป Cursor IDE
Go to Settings > Features > MCP
Click + Add new MCP server
Choose command as the type.
Name:
gemini-embeddingCommand:
GEMINI_API_KEY="your-api-key" uvx --from git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1 gemini-embedding-2-mcp
๐โโ๏ธ Windsurf (Cascade)
Open your ~/.codeium/windsurf/mcp_config.json file and add:
{
"mcpServers": {
"gemini-embedding-2-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1",
"gemini-embedding-2-mcp"
],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}โก Zed Editor
Open your ~/.config/zed/settings.json and append the MCP server block:
{
"experimental.mcp": {
"gemini-embedding-2-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1",
"gemini-embedding-2-mcp"
],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}๐ป VS Code (with Cline / RooCode)
Open ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json and append:
{
"mcpServers": {
"gemini-embedding": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git@v1.2.1",
"gemini-embedding-2-mcp"
],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}Method 2: Local Developer Clone
If you want to modify the source code:
# 1. Clone the repository
git clone https://github.com/AlaeddineMessadi/gemini-embedding-2-mcp-server.git
cd gemini-embedding-2-mcp-server
# 2. Install dependencies
uv sync(If you use this method, you can add it directly to Claude Code CLI locally by running:)
claude mcp add gemini-embedding-local --env GEMINI_API_KEY="your-api-key" -- uv --directory "$(pwd)" run gemini-embedding-2-mcpMethod 3: Docker
If you need a containerized MCP server for registry validation or deployment, build and run the included image:
docker build -t gemini-embedding-2-mcp-server .
docker run --rm -i \
-e GEMINI_API_KEY="your-api-key-here" \
-v "$HOME/.gemini_mcp_db:/root/.gemini_mcp_db" \
gemini-embedding-2-mcp-serverThe container communicates over standard I/O like any other local MCP server and persists ChromaDB data in the mounted volume.
๐ ๏ธ Exposed MCP Capabilities
Once connected, your AI assistant instantly gains the following tools:
โ๏ธ Tools
index_directory(path: str, ignore: list = None): Scan and formally embed a completely new local folder into the DB. Safely supports wildcardignorepatterns.preview_directory(path: str, ignore: list = None): Dry-run a scan and see what would be indexed, grouped by modality and skip reason.search_my_documents(query: str, limit: int, scope: str = None, types: list[str] = None, path_prefix: str = None, extensions: list[str] = None, modalities: list[str] = None): Run semantic search with compact retrieval filters.get_result_context(source: str, locator: str = None, window: int = 1): Fetch nearby chunk or page context for a previously indexed result.list_indexed_directories(): See which directory roots the AI already knows about.sync_indexed_directories(): Automatically forces the DB to find new, updated, or recently deleted (ghost) files and cleans up vectors.remove_directory_from_index(path: str): Clears a specific trajectory of vectors.
๐ Precision Filters
The main search tool stays simple by default, but supports a few high-value filters when you need exactness:
scope: Limit matches to a broad directory scope such as/Users/me/workpath_prefix: Limit matches to a more exact path prefixtypes: Restrict by stored item type such astextorpdf_visual_pageextensions: Restrict by file extension such as.pdfor.mdmodalities: Restrict by modality such astext,pdf,image,audio, orvideo
๐ Resources
gemini://database-stats: Real-time observability! Exposes the exact scale of the vector segments inside ChromaDB directly to the assistant's context.
๐ Technical Documentation
๐ License
MIT ยฉ Alaeddine Messadi
Available Tools
7 toolsget_result_contextC
Returns nearby chunks or pages for a previously indexed result.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | ||
| locator | No | ||
| window | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool 'returns' data, implying read-only, but does not disclose any behavioral traits such as performance, error handling, or what happens if the result is not found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise but missing critical details. It is not verbose, but the conciseness comes at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (3 parameters, 1 required) and presence of an output schema, the description is insufficient. It fails to explain how to use the parameters or when this tool is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the three parameters (source, locator, window). The agent gets no additional meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns nearby chunks or pages for a previously indexed result, using a specific verb and resource. It distinguishes from sibling tools like index_directory or search_my_documents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like search_my_documents or preview_directory. There is no indication of prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
index_directoryB
Scans a local directory, extracts text from files (PDF, DOCX, TXT, MD) AND raw video/audio/image bytes, generates semantic embeddings using Gemini 2 and stores them for searching.
Args: directory_path: Absolute path to the directory. ignore: Optional list of glob patterns to ignore (e.g., [".log", "drafts", "temp"]).
| Name | Required | Description | Default |
|---|---|---|---|
| directory_path | Yes | ||
| ignore | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description has high burden. It discloses the core actions (scan, extract, embed, store) but omits behavioral details like whether indexing is incremental or full, if overwrites existing data, handling of unchanged files, required permissions, or side effects on system resources.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two well-structured sentences for the main purpose, plus a terse Args list. Every sentence is informative without redundancy. Excellent front-loading of the tool's primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (file scanning, embedding generation) and presence of an output schema, the description is partially complete. It covers input parameters and common file types but omits recursion behavior, handling of unsupported files, return value, and potential performance impact. The output schema may fill some gaps, but the description could still be more thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description adds needed meaning by clarifying directory_path as absolute path and ignore as optional glob patterns with examples. However, it does not specify pattern syntax or that ignore works on basenames versus full paths, leaving some ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool scans a local directory, extracts text from specific file types and raw bytes from media files, generates embeddings using Gemini 2, and stores them for searching. This precise verb+resource combination distinguishes it from siblings like list_indexed_directories and search_my_documents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like sync_indexed_directories or remove_directory_from_index. It does not mention prerequisites, when to re-index, or when indexing is not appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_indexed_directoriesA
Lists indexed parent directories known to the database.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description indicates a read-only operation but does not explicitly state safety, side effects, or permissions. For a simple listing, it is adequate but could be more explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one clear sentence with no extraneous information. It is front-loaded and efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no parameters and an output schema present. The description covers the basic function. Some additional context about what 'indexed parent directories' entails could improve completeness, but it is sufficient for a list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description does not need to add parameter details. Baseline 4 is appropriate as there is no omission.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists indexed parent directories known to the database. The verb 'lists' and resource 'indexed parent directories' are specific, and the tool is distinct from siblings like index_directory or remove_directory_from_index.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention context, prerequisites, or conditions that would help an agent decide to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_directoryB
Summarizes what would be indexed before the server performs a full scan.
| Name | Required | Description | Default |
|---|---|---|---|
| directory_path | Yes | ||
| ignore | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It suggests a read-only preview but does not confirm that the operation is non-destructive, require permissions, or handle large directories. Minimal behavioral context is given.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (one sentence), which is efficient, but it omits important details that could be included without much bloat. Still, it is front-loaded and free of redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (unknown content) and no parameter descriptions, the description is too sparse. It does not explain what 'summarizes' entails (e.g., file count, sizes), how `ignore` works, or edge cases. For a preview tool, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both parameters (`directory_path` and `ignore`). The description does not add any meaning or constraints beyond the schema, leaving the agent uninformed about parameter format, default behavior, or usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: previewing what would be indexed before a full scan. It uses a specific verb ('summarizes') and resource ('what would be indexed'), and effectively distinguishes it from siblings like `index_directory` which performs the actual scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before a full scan, but it does not provide explicit guidance on when to use this tool versus alternatives like `index_directory` or `search_my_documents`. It lacks 'when not to use' or prerequisite information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_directory_from_indexB
Removes all documents and images belonging to a specific directory path from the index.
| Name | Required | Description | Default |
|---|---|---|---|
| directory_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full burden. It only mentions 'removes' without clarifying reversibility, scope (index vs files), error conditions, or side effects, leaving significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that communicates the core purpose efficiently, with no extraneous information. It is front-loaded and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no annotations, but with an output schema not detailed), the description is minimally adequate but lacks details on return values, success/failure indications, or any side effects, leaving gaps for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning beyond the parameter name 'directory_path'. It does not specify format, constraints, or examples, so the agent cannot infer valid input beyond the minimal type information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Removes') and the resource ('all documents and images belonging to a specific directory path from the index'), effectively distinguishing it from sibling tools like index_directory (adds) and list_indexed_directories (lists).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives, no prerequisites, and no exclusions. Given sibling tools like index_directory and sync_indexed_directories, the agent lacks information to choose correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_my_documentsC
Performs a semantic search over your previously indexed local documents AND images using the Gemini 2 Embedding model.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit | No | ||
| scope | No | ||
| types | No | ||
| path_prefix | No | ||
| extensions | No | ||
| modalities | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears full burden. It mentions semantic search and the model but fails to disclose read-only nature, rate limits, authentication needs, or behavior on no results. Minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that gets to the point quickly. It is front-loaded with the key action, though it sacrifices completeness for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters with no schema descriptions and no annotations, the description is too brief. It does not cover filtering options or return type, leaving significant gaps despite the presence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description adds no parameter explanations. It only mentions 'documents AND images' but does not detail query, limit, scope, types, path_prefix, extensions, or modalities, leaving the agent to infer from names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs semantic search over previously indexed documents and images using Gemini 2 Embedding. It uses a specific verb and resource, distinguishing it from siblings like index_directory or list_indexed_directories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description implies it's for search but doesn't mention when to choose it over siblings like get_result_context or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_indexed_directoriesA
Auto-updates existing folders. It finds all unique parent directories of currently indexed files and re-indexes them to capture new or modified files.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears full burden. It explains the process (finding parent directories and re-indexing) but omits details like handling deleted files, potential performance impact, or whether it is safe to run concurrently.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The structure is clear and front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and an existing output schema, the description provides sufficient operational context. It could mention that the action is system-wide and may take time, but is otherwise adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist; schema coverage is trivially 100%. The description does not need to add parameter info, achieving the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool auto-updates existing folders by re-indexing parent directories of indexed files, distinguishing it from sibling tools like index_directory which handles initial indexing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for updating existing indexes, but does not explicitly state when not to use it or provide alternatives. However, the context of sibling tools aids in understanding.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
7 tool updates
v1.2.1- First observed
get_result_context - First observed
index_directory - First observed
list_indexed_directories - First observed
preview_directory - First observed
remove_directory_from_index - First observed
search_my_documents - First observed
sync_indexed_directories
TDQS
Each tool targets a distinct operation: indexing, previewing, listing, searching, context retrieval, removal, and syncing. No functional overlap exists.
All tool names follow a consistent verb_noun pattern in snake_case, e.g., index_directory, list_indexed_directories, search_my_documents. The pattern is uniform and predictable.
With 7 tools, the server covers the essential workflows for local embedding and retrieval without excess or deficiency. The count fits well with the domain scope.
Provides a full lifecycle: create (index_directory), read (search, get_result_context, list), update (sync_indexed_directories), delete (remove_directory_from_index), plus a dry-run preview. No obvious gaps.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP memory server. One memory your agents share โ across models, devices and apps.
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Persistent personal memory for AI assistants โ save, search, and recall across every MCP client.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Related MCP Servers
- AlicenseAqualityCmaintenanceA local, fully-offline MCP memory server that enables persistent storage and retrieval of information using SQLite with both keyword and semantic vector search capabilities.102312MIT
- AlicenseNot gradedqualityDmaintenanceA self-hosted, multi-context memory server that enables AI agents to search and retrieve information from local documents and crawled websites via MCP tools. It runs fully offline using Postgres and Ollama to provide secure, private knowledge management and retrieval-augmented generation.2MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server for managing persistent AI memory using hybrid search (keyword + semantic vector) with SQLite storage and offline-first local embeddings.-
- AlicenseNot gradedqualityBmaintenanceA lightweight, local-first MCP memory server for LLM agents that enables storing, searching, and retrieving agent memories with zero external dependencies.1MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AlaeddineMessadi/gemini-embedding-2-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server