Skip to main content
Glama
DuckDB-RAG-MCP-Sample

DuckDB-RAG-MCP-Sample

by nananaman

DuckDB RAG MCP 示例

这是一个嵌入和矢量化 markdown 文档的示例,以便可以使用 MCP 和 RAG 进行解释。

我们使用Plamo-Embedding-1B进行矢量化。

功能

  • 从 markdown 文件中提取并矢量化文本

  • 使用 DuckDB 进行向量搜索

  • 使用 Parquet 文件保存矢量数据

  • 从 MCP 搜索向量

Related MCP server: RAG-MCP

如何使用

矢量数据生成

首先,将要搜索的markdown文件放在特定的目录中,然后使用以下命令将其转换为Parquet文件。

uv run main.py --directory ~/path/to/markdown/files --parquet vectors.parquet

配置 MCP

建造

以下命令将在dist/server中生成单个二进制文件。

uv run pyinstaller --clean --strip --noconfirm --onefile server.py

MCP 客户端配置

请根据您要使用的客户端进行设置。

对于 Claude Desktop 来说它看起来像这样:

对于 VECTOR_PARQUET,指定刚刚转换的文件。

uv run mcp install server.py -v VECTOR_PARQUET=/path/to/vectors.parquet

设置如下:

{
  "mcpServers": {
    "DuckDB-RAG-MCP-Sample": {
      "command": "/path/to/dist/server",
      "env": {
        "VECTOR_PARQUET": "/path/to/vectors.parquet"
      }
    }
  }
}

启动开发服务器

uv run mcp dev server.py

执照

DuckDB RAG MCP 示例根据 Apache 许可证 2.0 版提供。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that indexes documents and serves relevant context to LLMs via Retrieval Augmented Generation (RAG).
    29 npm
    36
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A Retrieval Augmented Generation MCP server that ingests documents into a local vector database and enables semantic search queries.
    9
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP RAG Server is a Python MCP server that indexes documents in multiple formats (Markdown, text, PowerPoint, PDF) using multilingual-e5-large embeddings and enables vector search for retrieval-augmented generation.
    MIT