KnowFlow MCP 是一个基于 Model Context Protocol (MCP) 构建的知识检索工具。它允许兼容 MCP 的大型语言模型 (LLM) 通过调用标准化的工具接口,从外部知识库中获取上下文信息和领域知识,以生成更精确、更具上下文感知的回答。该项目模拟了简化的检索增强生成 (RAG) 流程,为 LLM 提供了访问外部数据的能力。
主要功能点
- 响应 LLM 的知识检索请求,遵循 MCP 协议标准。
- 根据 LLM 提供的查询,在配置的知识源中执行高效搜索。
- 返回包含内容片段和结构化元数据(如原始文件名、修改日期、相关性评分)的搜索结果,方便 LLM 使用和引用。
- 提供灵活的插件系统,允许轻松集成不同的知识来源(例如:文档文件、任务管理系统、Confluence 等)。
- 通过 Stdio 协议与 MCP 客户端进行通信。
安装步骤
- 准备环境: 确保您的系统已安装 Node.js (版本 16.x 或更高) 和 npm 或 yarn 包管理器。
- 克隆仓库: 打开终端,执行以下命令克隆项目仓库:
git clone https://github.com/esurovtsev/know-flow-mcp.git - 进入项目目录: 切换到克隆下来的仓库目录:
cd know-flow-mcp - 安装依赖: 使用 npm 或 yarn 安装项目所需的依赖库:
npm install # 或者使用 yarn yarn install - 配置知识目录: 在项目根目录创建 '.env' 文件,并指定知识文件的存放路径(目前支持 '.txt' 和 '.md' 文件)。
请确保 './knowledge' 目录存在,并在其中放入您的知识文件。KNOWLEDGE_DIR=./knowledge
服务器配置 (供 MCP 客户端参考)
要将 KnowFlow MCP 服务器与兼容 MCP 的 LLM 客户端(如 Claude, GPT-4, Gemini 等)集成,客户端需要知道如何启动和连接到此服务器。这通常通过一个 JSON 格式的 MCP 配置来指定。
以下是一个典型的 JSON 配置示例,您可以将其提供给您的 MCP 客户端:
{ "mcpServers": { "knowflow": { // 服务器的唯一标识符 "command": "node", // 启动服务器的命令 "args": ["dist/index.js"] // 命令的参数,指向服务器的入口文件 } } }
这个配置指示 MCP 客户端通过执行 'node dist/index.js' 命令来启动 KnowFlow 服务器,并使用默认的 Stdio 协议进行通信。具体的配置方式请参考您使用的 MCP 客户端(LLM 应用)的文档。
基本使用方法
- 构建项目: 在项目根目录执行构建命令,将 TypeScript 代码编译为 JavaScript:
npm run build # 或者使用 yarn yarn build - 启动服务器: 编译完成后,执行以下命令启动 KnowFlow MCP 服务器:
npm start # 或者使用 yarn yarn start - 服务器启动后,会监听标准输入 (Stdio),等待 MCP 客户端(如配置好的 LLM 应用或 MCP Inspector 工具)发送的请求。当收到请求(例如调用 'search_knowledge' 工具)时,服务器会执行相应的逻辑并返回响应。
- (可选) 使用 MCP Inspector 测试: 您可以使用官方的 MCP Inspector 工具来独立测试服务器功能:
这将在本地启动一个网页界面,允许您查看服务器暴露的工具并手动发送请求进行测试。npx @modelcontextprotocol/inspector node dist/index.js
信息
分类
AI与计算