mcpField
P
privateGPT MCP Server

privateGPT MCP Server

本地服务
github.com/Fujitsu-AIAI 与智能体641 周前更新

关于 privateGPT MCP Server

privateGPT MCP Server 是一组网关,用于将 PGPT API 接入本地、远程及传统系统。除 TCP API 服务外,还提供 MCP 传输方式,并共用工具与安全配置。

主要功能

  1. 01STDIO 和 Streamable-HTTP MCP 服务
  2. 02面向传统系统的 TCP API 网关
  3. 03调用 PGPT API 的 23 项功能
  4. 04通过 pgpt.env.json 集中配置
  5. 05TLS 与 RSA 加密请求头

适用场景

  1. 01让本地 AI 环境连接 PGPT
  2. 02通过 HTTP 和 SSE 提供远程访问
  3. 03通过 TCP 集成传统软件

MCP 相关

套件包含 STDIO 和 Streamable-HTTP MCP 服务,可向 MCP 客户端提供 PGPT API 功能。另有 TCP API 服务,可供不支持 MCP 的系统使用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

privateGPT MCP 服务

Fsas Technologies AI Team:MCP 和 TCP 多传输服务与 Agent 套件(v1.5)

欢迎使用 Fsas Technologies AI Team 的服务套件。本代码仓库提供一系列高度专业化的网关服务,经过优化,可将 PGPT API 集成到任何 IT 环境中——从成熟的遗留系统到尖端的 AI Agent 架构。


🚀 我们连接能力的三大支柱

此软件包中的每个服务都是针对特定用例开发的,以确保最佳性能和稳定性。

1. 支持 TCP 的 API 服务

遗留系统的桥梁。 此服务非常适合尚未原生支持 Model Context Protocol(MCP)的环境。

  • 用途:通过经典、高性能的 TCP 连接,让较旧的应用程序能够使用先进的 AI 逻辑。
  • 优势:兼容性高,无需承担复杂 Web 协议带来的开销。非常适合依赖成熟套接字通信的工业控制或专有软件解决方案。
2. 支持 STDIO 的 MCP 服务

本地集成的标准。 此服务通过标准输入/输出通道实现 Model Context Protocol。

  • 用途:直接集成到 Claude Desktop、VS Code 或 IDE 插件等本地 AI 环境中的首选方案。
  • 优势:通信速度极快,延迟极低。由于无需开放网络端口,此服务可为直接在开发者计算机上运行的本地工作流提供出色的安全性。
  • ⚠️ 要求:此服务需要运行 PGPT Instance Version 1.5,以确保完整的 API 兼容性。
3. 支持 Streamable-HTTP 的 MCP 服务(SSE)

远程和 Web 架构的强大动力。 此服务利用 Server-Sent Events(SSE),通过 HTTP 实现稳定的双向连接。

  • 用途:专为分布式系统和网络访问设计,是 MCP Inspector 或基于 Web 的仪表板的首选方案。
  • 优势:得益于内置的 Stream-Fix 和 Auto-Session-Recovery,此服务能够很好地应对不稳定的网络连接或 SSH 隧道。它让 AI 工具即使远距离使用也可靠易用。
  • ⚠️ 要求:此服务需要运行 PGPT Instance Version 1.5,以确保完整的 API 兼容性。

🛠 核心通用功能(v1.5 完整版)

此套件中的所有服务都基于 Fsas Technologies AI Team 开发的同一套强化逻辑引擎:

  • 完整的工具覆盖范围:可访问 PGPT API 的全部 23 个功能(聊天、RAG 来源、场景、用户管理)。
  • 智能配置:通过 pgpt.env.json 集中管理,灵活性极高。
  • 企业级安全性:支持 RSA 加密标头、TLS 加密和安全的 SSH 密钥身份验证。
  • 针对 Node.js 20+ 优化:充分利用现代 ESM 模块和异步运行时,提升效率。

📂 目录结构

.
├── API-Server-with-TCP-Support             # Legacy & Custom TCP Gateway
├── MCP-Server-with-STDIO-Support           # Local Agent Integration (Standard)
└── MCP-Server-with-Streamable-HTTP-Support # Remote & Web Gateway (SSE)

🏃‍♂️ 快速开始

  1. 克隆代码仓库:
    git clone https://github.com/Fujitsu-AI/MCP-Server-for-MAS-Developments.git
    cd MCP-Server-for-MAS-Developments
    
  2. 选择所需的服务
  • **API-Server-with-TCP-Support:**最适合遗留应用集成和自定义 TCP 网关解决方案
  • **MCP-Server-with-STDIO-Support:**本地 Agent 集成(标准)
  • **MCP-Server-with-Streamable-HTTP-Support:**远程和 Web 网关(SSE)
  1. 准备配置: 在相应的服务目录中创建 pgpt.env.json,并填入 PGPT API 凭据。

  2. 安装并启动: 选择服务类型,然后按照本地 INSTALL.md 中的说明操作,或使用提供的安装脚本,例如:

    ./Install-MPC-Server.sh
    

安全性

我们实现了以下安全功能,以保护数据安全并确保客户端应用与服务器之间的通信安全。这些功能涵盖加密、解密、密钥管理和传输安全。


1. 传输层安全性(TLS)

  • 为保护客户端与服务器之间的通信,可以启用 TLS。客户端与服务器之间传输的所有数据都会使用 TLS(最低版本为 1.2)加密。

为什么应该在客户端与服务器之间启用 TLS?

a. 通信加密
  • TLS(传输层安全性)可确保客户端与服务器之间传输的所有数据均经过加密。这可以保护密码、信用卡信息和个人数据等敏感信息,避免其受到窃听攻击(中间人攻击)。
b. 数据完整性
  • TLS 可确保传输的数据保持原样、不被篡改。完整性检查可确保收到的数据与发送的数据完全一致。
c. 身份验证
  • TLS 可通过数字证书对服务器(以及可选的客户端)进行安全身份验证。这可以防止用户遭受假冒网站的网络钓鱼攻击。
d. 防范中间人攻击
  • TLS 会加密连接,使攻击者几乎无法拦截或篡改流量。若未启用 TLS,攻击者就可能捕获并修改数据包。
e. 符合安全标准和法规
  • 许多法规要求(例如 GDPR、PCI-DSS)都规定必须安全传输数据。TLS 是满足这些安全要求的基本组成部分。
f. 防止降级攻击和重放攻击
  • TLS 可防范试图将连接降级到不安全版本的攻击(降级攻击),以及重放先前有效请求的攻击(重放攻击)。

结论

在客户端与服务器之间启用 TLS,对于确保数据隐私、安全性和通信完整性至关重要。它不仅可以保护敏感信息,还有助于满足合规要求并提升用户信任。


2. 密码加密

可以使用 RSA(Rivest–Shamir–Adleman)公钥加密对密码进行加密。这样可确保用户密码等敏感数据不会以明文形式传输。

方法
  • 使用公钥加密,密钥长度最高可达 4096 位。
  • 填充方式:RSA_PKCS1_PADDING,以增强安全性并防范已知的填充攻击。
流程
  1. 服务器管理员使用服务器的公钥(id_rsa_public.pem)加密客户端密码,方法是执行 node security/generate_encrypted_password.js ~/.ssh/id_rsa_public.pem,然后将加密后的密码交给客户端。
  2. 或者:客户端使用 keygen 功能,通过服务器的公钥(id_rsa_public.pem)加密密码。因此,必须在服务器配置(privateGPT.env.json)中启用该功能。重要提示:使用此功能也意味着要通过网络传输数据。因此,请确保数据流量安全且无法被拦截。
  3. 最后,加密后的密码会发送到服务器,并使用服务器的私钥进行解密。
优势
  • 非对称加密确保只有服务器才能解密密码。
  • 即使通信通道遭到入侵,加密数据仍然安全。

3. 密钥管理

为确保数据通信和加密流程的安全,我们遵循以下密钥管理原则:

公钥
  • 安全地存储在服务器上(id_rsa.pub)。
  • 仅用于加密,即使泄露也不会带来安全风险。
PEM 密钥
  • 安全地存储在服务器上(id_rsa_public.pem)。
  • 必须使用公钥证书创建(参见:服务器配置)
私钥
  • 安全地存储在服务端(id_rsa)。
  • 通过适当的文件权限限制访问(chmod 600)。
  • 仅用于解密操作。
密钥轮换
  • 可定期轮换密钥,也可在检测到安全事件时轮换。重要提示:如果重新颁发密钥,客户端或 AI Agent 将立即失去对 MCP 服务的访问权限,并需要新的 RSA 密钥(加密后的密码)!
  • 安全地使旧密钥失效。

4. 服务端解密

解密仅使用私钥在服务端执行:

流程
  1. 服务端接收来自客户端的加密密码。
  2. 私钥解密密码,以获取原始明文。
  3. 解密后的密码仅在内部使用(例如用于身份验证),绝不会以明文形式存储。
安全处理
  • 解密后的密码仅在处理期间保留于内存中。
  • 通过安全的内存管理实践,确保敏感数据在使用后立即清除。
证书验证
  • 双方都会验证证书,以确保服务端和客户端的真实性。
  • 可选择启用双向 TLS 来增强安全性。

5. 授权令牌

令牌用于验证请求,并确保只有授权用户才能访问系统:

令牌管理
  • 成功登录后生成令牌。
  • 令牌有效期较短,并会在预设时间后自动过期。
  • 令牌使用 HMAC 或 RSA 签名,确保无法被篡改。

许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。