使用说明
项目简介
MCP-Server-for-MAS-Developments 仓库提供了一个基于 Model Context Protocol (MCP) 的服务器实现,它充当 MCP 客户端和 privateGPT API 之间的桥梁。该服务器允许您通过 MCP 客户端与 privateGPT 进行交互,利用 privateGPT 的能力处理公共和私有知识库的聊天、知识源管理和用户权限控制等任务。它旨在为 LLM 应用提供安全、模块化和可扩展的上下文服务框架。
主要功能点
- MCP 协议支持: 实现了 Model Context Protocol,能够处理符合 MCP 协议的客户端请求。
- privateGPT 集成: 作为 privateGPT API 的 MCP 接口,允许 MCP 客户端利用 privateGPT 的强大功能。
- 资源管理: 提供知识源 (Sources) 的创建、编辑、删除和检索功能,支持知识库的有效管理。
- 用户和群组管理: 支持用户和群组的创建、编辑和删除,实现基于群组的权限控制和多用户协作。
- 会话管理: 支持聊天会话的开始、继续和信息检索,方便构建对话式应用。
- 安全特性: 包含传输层安全 (TLS)、密码加密、密钥管理、访问令牌和基于角色的访问控制等多种安全机制,保障数据安全。
- 灵活配置: 通过 '.env' 配置文件可以灵活地激活或停用服务器功能,并支持多语言系统消息和 SSL 验证配置。
- 多种客户端支持: 仓库提供 C#, C++, Go, Java, JavaScript, PHP, Python 等多种语言的客户端示例,方便开发者快速集成。
安装步骤
-
克隆仓库:
git clone https://github.com/Fujitsu-AI/MCP-Server-for-MAS-Developments.git cd MCP-Server-for-MAS-Developments -
选择安装方式: 手动或自动安装,推荐自动安装以简化流程。
-
自动安装 (Linux):
sudo chmod +x InstallMPCServer.sh ./InstallMPCServer.sh -
手动安装:
sudo apt install npm # 如果没有 npm npm install npm run build
-
-
配置服务器:
复制 'privateGPT.env.json.example' 为 'privateGPT.env.json' 并编辑配置文件:
cp privateGPT.env.json.example privateGPT.env.json vim privateGPT.env.json根据您的 privateGPT 服务地址、端口、密钥和安全需求修改 'privateGPT.env.json' 文件。
关键配置项:
- 'privateGPT_Url.PRIVATE_GPT_API_URL': privateGPT API 的 URL 地址。
- 'Server_Config.PORT': MCP 服务器监听的端口号,默认为 '5000'。
- 'Server_Config.LANGUAGE': 服务器系统消息的语言,例如 '"en"' 或 '"de"'。
- 'Server_Config.ENABLE_TLS': 是否启用 TLS 加密通信,建议生产环境启用 '"true"'。
- 'Server_Config.SSL_KEY_PATH', 'Server_Config.SSL_CERT_PATH': TLS 证书和密钥文件路径,如果启用 TLS 则必须配置。
- 'Functions': 用于激活或停用服务器功能的详细配置,例如 'ENABLE_CHAT', 'ENABLE_STORE_GROUP' 等。
-
生成证书 (可选,如果启用 TLS):
如果需要启用 TLS 加密,您需要生成 SSL/TLS 证书 'server.crt' 和密钥 'server.key'。可以使用 'openssl' 生成自签名证书用于测试:
openssl req -x509 -newkey rsa:2048 -nodes -keyout server.key -out server.crt -days 365 -subj "/CN=localhost"并将证书和密钥文件路径配置到 'privateGPT.env.json' 中。
-
启动服务器:
node dist/index.js服务器将会在配置的端口上启动并监听 MCP 客户端的连接。
服务器配置 (MCP 客户端配置)
MCP 客户端需要配置连接到 MCP 服务器的信息。以下是一个 JSON 格式的配置示例,您需要根据实际情况修改 'command' 和 'args' 字段:
{ "servers": [ { "server_name": "privateGPT-MCP-Server", // 服务器名称,可自定义 "command": "node", // 启动服务器的命令,这里使用 node.js 运行 "args": [ "dist/index.js" // 服务器入口文件路径,相对于客户端的路径 ], "protocol": "stdio", // 通信协议,通常为 stdio "port": 5000, // MCP 服务器监听的端口,与 privateGPT.env.json 中配置的 PORT 一致 "host": "127.0.0.1", // MCP 服务器 IP 地址,如果客户端和服务端在同一机器,可以使用 127.0.0.1 "capabilities": [ // 声明客户端支持的 MCP 能力 "chat", "list_groups", "store_group", "delete_group", "create_source", "get_source", "list_sources", "edit_source", "delete_source", "store_user", "edit_user", "delete_user", "reactivate_user", "login", "logout", "continue_chat", "get_chat_info", "delete_chat", "delete_all_chats", "keygen" ], "transports": [ // 声明客户端支持的传输协议 "stdio", "websocket", "sse" ] } ] }
基本使用方法
- 确保 privateGPT 服务已启动并可访问。
- 启动 MCP 服务器 ('node dist/index.js')。
- 配置您的 MCP 客户端,使其连接到 MCP 服务器的地址和端口(例如 '127.0.0.1:5000')。
- 使用 MCP 客户端发送符合 MCP 协议的请求,例如登录、聊天、管理知识源等。
- 服务器会将请求转发到 privateGPT API,并将响应返回给 MCP 客户端。
更多详细用法和 API 文档请参考仓库 README.md 文件和客户端示例代码。
信息
分类
AI与计算