MCP Knowledge Base

MCP Knowledge Base

site icon
2025.04.22 0
Python知识库查询LLM 集成开发效率
MCP Knowledge Base 是一个简单的 MCP 客户端-服务器应用,旨在通过 LLM(大型语言模型)能力提供知识库查询和工具调用功能。它结合了 OpenAI API 的强大语言理解能力,可以回答关于 MCP 的问题,并支持自定义工具扩展。
View on GitHub

Overview

基本能力

产品定位

MCP Knowledge Base 是一个结合了 MCP 协议和 LLM 能力的知识库查询系统,旨在为开发者提供高效的 MCP 相关问答和工具调用服务。

核心功能

  1. MCP 服务器实现:提供基于 MCP 协议的服务器功能,支持工具调用。
  2. LLM 客户端:通过 OpenAI API 实现自然语言查询解析和工具调用。
  3. 知识库查询:内置 MCP 相关的问答知识库,可扩展和修改。
  4. 工具扩展:支持开发者自定义工具,通过装饰器轻松添加新功能。

适用场景

  1. MCP 相关问答:快速查询 MCP 协议、技术细节等。
  2. 开发辅助:在开发过程中通过自然语言调用工具或获取帮助。
  3. 知识库扩展:作为基础框架,可扩展为其他领域的知识库系统。

工具列表

  1. 知识库查询工具:回答关于 MCP 的问题。
  2. 自定义工具:开发者可根据需求添加任意功能工具。

常见问题解答

  1. 如何添加新工具?:在 server.py 中使用 @mcp.tool() 装饰器创建新函数。
  2. 如何修改知识库?:更新 data/kb.json 文件。
  3. 如何更换 OpenAI 模型?:修改 MCPClient 类中的 model 参数。

使用教程

使用依赖

  1. Python 3.9 或更高版本
  2. Poetry 依赖管理工具
  3. OpenAI API key

安装教程

  1. 使用 Poetry 安装依赖: bash poetry install
  2. 在项目根目录或父目录创建 .env 文件,添加 OpenAI API key: OPENAI_API_KEY=your_api_key_here

运行应用

  1. 启动服务器: bash poetry run python server.py
  2. 在另一个终端运行客户端: bash poetry run python client-sse.py

调试方式

  1. 直接工具调用模式
  2. 取消 client-sse.pyasyncio.run(test_direct_tool_calls()) 的注释
  3. 直接调用工具而不使用 LLM
  4. LLM 交互模式(默认)
  5. 使用 OpenAI 解析查询并调用适当工具
  6. 可提问如 "What is MCP?" 或 "What is the difference between stdio and SSE transports?"

许可证

该项目遵循 None 开源许可条款。