Local FAISS

Provides local FAISS-based vector storage and semantic search for MCP clients.
  • python

15

GitHub Stars

python

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "nonatofabio-local_faiss_mcp": {
      "command": "local-faiss-mcp",
      "args": [
        "--index-dir",
        ".vector_store"
      ]
    }
  }
}

You run a Local FAISS MCP Server to store and query document embeddings locally, enabling fast semantic search for retrieval-augmented generation without relying on external services. It uses FAISS for on-disk vector storage and can ingest a variety of document formats, then expose MCP-compatible endpoints to ingest, search, and rerank results.

How to use

Use this server with an MCP client to ingest documents, build a local FAISS index, and perform semantic search across your stored content. You can choose a local command or a Python module to run the server, and you can enable optional re-ranking and custom embedding models to tailor results to your data. The server exposes two core actions you will perform through MCP calls: ingest documents into the vector store and query the store for relevant chunks.

Key usage patterns

  • Ingest documents you want to search later. The server chunks content into manageable pieces, embeds them, and stores both the index and metadata on disk.

  • Query the store with natural language to retrieve relevant document chunks. You can enable a re-ranking step that re-sorts retrieved chunks using a cross-encoder model for higher relevance.

  • Use the built-in prompts to extract answers or summarize content from the retrieved chunks, providing structured, citation-backed results.

What you can customize

Choose a Hugging Face embedding model to control how textual content is converted into vector representations. The default model is all-MiniLM-L6-v2, but you can switch to models like all-mpnet-base-v2 or multilingual variants for improved quality or multilingual support.

Enable re-ranking to reorder results with a cross-encoder model. This two-stage approach improves relevance by first retrieving candidates and then scoring them against the query.

Decide where to store the index and metadata. The server persists the FAISS index and metadata to disk so you can reload and continue indexing or querying later.

Available actions

Ingest documents using ingest_document to add new content to the vector store. You can pass a file path or raw text, and the system will auto-detect formats (PDF/TXT/MD natively; DOCX/HTML/EPUB via pandoc if installed).

Query the store with query_rag_store to retrieve relevant chunks for a given question. You can specify how many results to return with top_k.

Prompts for extraction and summarization

Use the extract-answer prompt to produce a well-formed answer with citations from retrieved chunks. Then optionally use the summarize-documents prompt to generate a concise summary focused on a topic.

Available tools

ingest_document

Ingest a document into the vector store by providing the document content or a file path; automatically handles supported formats and extracts text for embedding.

query_rag_store

Query the vector store to retrieve relevant document chunks for a given query, with an optional top_k setting.

extract-answer

Prompt to extract a precise answer from retrieved chunks with citations.

summarize-documents

Prompt to generate a concise summary from multiple retrieved chunks focused on a topic.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational