Token导航 LogoToken导航TokenDH.com
RAG Using MCP And Langchain logo
搜索检索stdio官方级别未说明来源级核验

RAG Using MCP And Langchain

MCP Server

一个基于LangChain的代理服务,通过FastMCP服务器连接PostgreSQL和pgvector知识库,利用Gemini嵌入和向量搜索工具实现问答功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
RAG问答系统Python向量数据库

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

vanshj11

提供方

vanshj11

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run python main.py --init # optional: create tables + sample docs

详细介绍

MCP-DB RAG堆栈

LangChain代理与FastMCP服务器通信,暴露PostgreSQL+pgvector 知识库。FastMCP侧处理摄入、嵌入(Gemini)和 矢量搜索工具;LangChain一方通过 langchain-mcp-adapters 客户与RAG一起回答问题。

仓库布局

  • server/ –封装PostgreSQL、pgvector和Gemini的FastMCP服务器

嵌入。管理方式 uv.

  • client/ –调用MCP工具的LangChain代理。使用标准Python

虚拟环境。

先决条件

  • Python 3.11+(该项目针对即将发布的3.14版本;任何最新版本

支持pgvector+psycopg2的CPython工作)

  • uv 用于同步FastMCP环境
  • PostgreSQL与 pgvector 扩展已安装且可访问
  • Google Gemini API密钥(GOOGLE_API_KEY)
  • (Windows)PowerShell或(macOS/Linux)任何POSIX shell

环境变量

创建一个 .env 文件在两个 server/client/ (或将它们导出到您的 外壳)至少具有:

POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DB=rag_db
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres

GOOGLE_API_KEY=your_gemini_key

您可以添加摄取所需的任何额外元数据字段;两个应用程序都加载 这些值通过 python-dotenv.

FastMCP服务器设置(uv)

cd server
uv sync                     # install deps from pyproject.toml / uv.lock
uv run python main.py --init   # optional: create tables + sample docs
uv run python main.py          # starts the HTTP MCP server on :8000
使用 uv run python main.py --ingest docs.txt 加载您自己的文本文件或 uv run python main.py --stats 检查数据库。服务器暴露 三种工具: vector_search, rag_query,以及 get_document_count.

保持服务器进程运行;LangChain代理通过以下方式连接到它 http://127.0.0.1:8000/mcp.

LangChain代理设置(venv+pip)

cd client
python -m venv .venv
.venv\Scripts\activate      # or source .venv/bin/activate on macOS/Linux
pip install -r requirements.txt
python main.py -i           # interactive mode

其他入口点:

  • python main.py -d –运行内置演示问题
  • python main.py -q "Your question" –单次查询

代理人将致电 vector_search/rag_query 首先是工具,然后是工艺 回答: gemini-2.5-flash。确保FastMCP服务器已在运行 否则代理将退出并出现连接错误。

数据流

  1. server/main.py --init 初始化PostgreSQL(启用 vector,创建

documents 表格和种子样本文档)。自定义摄取使用相同的 嵌入管道 google-generativeai.

  1. MCP服务器通过FastMCP公开HTTP端点(streamable-http

运输)。工具响应包括检索到的文档、相似性 例如文本、分数和格式化的上下文。

  1. client/main.py 加载所有工具 MultiServerMCPClient,把它们包起来

进入LangChain代理,并强制执行每个问题都必须处理的工作流程 在回答之前通过语义搜索。

故障排除

  • 验证PostgreSQL是否接受来自服务器进程的连接,以及

vector 已安装扩展(CREATE EXTENSION vector;).

  • 确保 GOOGLE_API_KEY 可以访问这两个 text-embedding-004

gemini-2.5-flash.

  • 如果 pgvector 索引失败 --init,确认您正在使用PostgreSQL

版本≥14,已安装扩展程序。

  • 在Windows上,首次安装时以管理员身份运行PowerShell uv

因此,它可以将垫片放置在您的路径上。

一旦这两个过程都运行,将您的问题指向LangChain代理并观看 它从MCP支持的知识库中提取上下文。

目录标签

目录标签

RAG问答系统Python向量数据库本地部署LangChainGemini

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP