Token导航 LogoToken导航TokenDH.com
MCP Get Started logo
数据服务stdio官方级别未说明来源级核验

MCP Get Started

MCP Server

一个基于MCP协议和OpenAI API的知识库问答助手,能够通过自然语言查询公司政策信息。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
知识管理问答系统Python自然语言处理OpenAI集成

安装说明

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

作者 / 组织

kofiadom

提供方

kofiadom

最后核验

2026/5/17 20:22

运行时

Python

快速接入

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

命令预览

python -m venv venv

详细介绍

MCP知识库助理

模型上下文协议(MCP)的演示,该协议将OpenAI驱动的客户端连接到知识库服务器。该项目展示了如何构建一个简单但功能强大的人工智能助手,通过MCP访问知识库来回答有关公司政策的问题。

📋 概述

该项目展示了:

  1. 如何构建一个将知识库作为工具公开的MCP服务器
  2. 如何创建连接到服务器的MCP客户端
  3. 如何集成OpenAI的API创建自然语言界面
  4. 如何使用Docker容器化服务器组件

该系统允许用户用自然语言询问有关公司政策的问题,人工智能将从知识库中检索相关信息以提供准确的答案。

🏗️ 建筑

该项目遵循MCP客户端-主机-服务器架构:

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│                 │     │                 │     │                 │
│  OpenAI Model   │◄────┤  MCP Client     │◄────┤  MCP Server     │
│  (GPT-4o)       │     │  (client.py)    │     │  (server.py)    │
│                 │     │                 │     │                 │
└─────────────────┘     └─────────────────┘     └─────────────────┘
                                                        │
                                                        ▼
                                               ┌─────────────────┐
                                               │                 │
                                               │  Knowledge Base │
                                               │  (kb.json)      │
                                               │                 │
                                               └─────────────────┘
  • MCP服务器:将知识库作为可查询的工具公开
  • MCP客户端:连接到服务器并与OpenAI的API集成
  • OpenAI模型:处理自然语言查询并生成响应
  • 知识库:包含有关公司政策的问答对的JSON文件

🚀 入门指南

先决条件

  • Python 3.11或更高版本
  • Docker(可选,用于容器化服务器)
  • OpenAI API密钥

安装

  1. 克隆存储库:
   git clone 
   cd MCP-Get-Started
  1. 创建虚拟环境并安装依赖项:
   python -m venv venv

   # On Windows
   venv\Scripts\activate

   # On macOS/Linux
   source venv/bin/activate

   pip install -r requirements.txt
  1. 创建一个 .env 使用您的OpenAI API密钥在项目根目录中创建文件:
   OPENAI_API_KEY=your_openai_api_key_here

运行服务器

选项1:直接用Python运行

python server.py

选项2:使用Docker运行

# Build the Docker image
docker build -t mcp-server .

# Run the container
docker run -p 8050:8050 mcp-server

运行客户端

在服务器运行的情况下,打开一个新的终端并运行:

python client.py

📝 用法

客户端将连接到服务器,并询问有关公司平等机会政策的示例问题。您可以在中修改查询 client.py 询问有关公司政策的不同问题。

输出示例:

Connected to server with tools:
  - get_knowledge_base: Retrieve the entire knowledge base as a formatted string.

Query: What is the company's equal opportunity policy?

Response: The company's equal opportunity policy is as follows: The company is an equal opportunity employer and prohibits discrimination based on race, gender, age, religion, disability, or any other protected characteristic.

🔧 项目结构

  • server.py:公开知识库的MCP服务器实现
  • client.py:连接到服务器并与OpenAI集成的MCP客户端
  • data/kb.json:包含公司政策问答对的知识库
  • Dockerfile:服务器容器化配置
  • requirements.txt:Python依赖关系

🧩 运作原理

MCP服务器(Server.py)

服务器公开了一个名为 get_knowledge_base 从知识库文件中检索信息(data/kb.json).它使用端口8050上的SSE(服务器发送事件)传输运行。

MCP客户端(Client.py)

客户:

  1. 使用SSE传输连接到MCP服务器
  2. 检索可用工具列表
  3. 从用户处获取自然语言查询
  4. 将查询与可用工具一起发送到OpenAI
  5. 如果OpenAI决定使用工具,客户端将执行工具调用
  6. 向用户返回最终响应

知识库(data/kb.json)

知识库是一个简单的JSON文件,其中包含有关公司政策的问答对。这可以根据需要通过其他政策或信息进行扩展。

🔄 生命周期管理

客户端使用Python的异步上下文管理器实现了适当的生命周期管理:

async with MCPOpenAIClient() as client:
    await client.connect_to_server()
    response = await client.process_query("What is the policy?")
# Resources are automatically cleaned up when exiting the context

这确保了所有资源都按照MCP最佳实践正确初始化和清理。

🛠️ 定制

添加更多知识

要扩展知识库,只需在 data/kb.json 文件。

添加更多工具

您可以通过定义附加功能向服务器添加更多工具 @mcp.tool() 室内装饰师 server.py.

更改模型

要使用不同的OpenAI模型,请修改 model 参数在 MCPOpenAIClient 类在 client.py.

📚 了解有关MCP的更多信息

模型上下文协议(MCP)是LLM与外部工具和服务交互的标准化方式。它提供:

  • 可重复使用性:只需构建一个服务器,即可与任何兼容MCP的客户端一起使用
  • 可组合性:组合多个服务器以创建复杂的功能
  • 生态系统增长:受益于他人创建的服务器

有关更多信息,请访问 MCP文件.

📄 许可证

MIT许可证

目录标签

目录标签

知识管理问答系统Python自然语言处理OpenAI集成知识库本地部署MCP协议

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP