本示例项目可将 Markdown 文档进行嵌入向量化,并通过 RAG 方法使用 MCP 对其进行解释。向量化采用 Plamo-Embedding-1B 模型。
首先,把作为搜索目标的 Markdown 文件放置于特定目录,接着运行以下命令将其转换为 Parquet 文件:
uv run main.py --directory ~/path/to/markdown/files --parquet vectors.parquet
使用以下命令生成单个可执行文件 dist/server:
uv run pyinstaller --clean --strip --noconfirm --onefile server.py
依据所需使用的客户端进行相应设置。 例如,针对 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 License, Version 2.0 提供。