Token导航 LogoToken导航TokenDH.com
Cf MCP Client Motivational logo
文档知识未说明官方级别未说明来源级核验

Cf MCP Client Motivational

MCP Server

一个基于Spring Boot的AI聊天客户端,集成了Model Context Protocol (MCP)服务器和Cloud Foundry单点登录(CF-SSO)认证,支持多语言和文档处理。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
AI聊天Java文档处理Spring Boot

安装说明

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

作者 / 组织

0pens0

提供方

0pens0

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

CF MCP客户端与CF-SSO集成

一个Spring Boot应用程序,它提供了一个具有模型上下文协议(MCP)服务器集成的人工智能聊天客户端,具有Cloud Foundry单点登录(CF-SSO)身份验证功能。

🚀 特性

  • 🔐 CF-SSO身份验证:与Cloud Foundry单点登录无缝集成
  • 🤖 AI聊天界面:由Spring AI提供支持,支持多个LLM提供商
  • 🔌 MCP服务器集成:模型上下文协议服务器连接
  • 💾 内存管理:具有矢量存储的持久对话历史
  • 📄 文档处理:PDF文档分析和处理
  • 🌐 多语言支持:英语和希伯来语支持
  • 📱 响应式用户界面:现代、移动友好的界面

🏗️ 建筑

身份验证流程

User → Landing Page → CF-SSO Login → Welcome Page → Chat Interface

技术栈

  • 后端:Spring Boot 3.5.3、Spring Security、Spring AI
  • 前端:Angular、HTML5、CSS3、JavaScript
  • 认证:通过java cfenv使用CF-SSO的OAuth2/OIDC
  • 数据库:带有pgvector的PostgreSQL用于嵌入
  • 部署:使用java构建包的Cloud Foundry

📋 先决条件

  • Java 21+
  • Maven 3.6+
  • Node.js 18+(用于前端构建)
  • PostgreSQL数据库
  • Cloud Foundry命令行界面
  • CF-SSO服务实例

🛠️ 地方发展设置

1.克隆存储库

git clone https://github.com/0pens0/cf-mcp-client.git
cd cf-mcp-client
git checkout feature/landing-page-sso

2.数据库设置

创建PostgreSQL数据库:

CREATE DATABASE mydb;
CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

3.环境配置

创建 application-local.yaml:

spring:
  datasource:
    url: jdbc:postgresql://localhost:5432/mydb
    username: myuser
    password: mypassword
    driver-class-name: org.postgresql.Driver
  jpa:
    hibernate:
      ddl-auto: update

# Optional: GitHub OAuth2 for local development
spring:
  security:
    oauth2:
      client:
        registration:
          github:
            client-id: ${GITHUB_CLIENT_ID}
            client-secret: ${GITHUB_CLIENT_SECRET}
            scope: read:user, user:email
        provider:
          github:
            authorization-uri: https://github.com/login/oauth/authorize
            token-uri: https://github.com/login/oauth/access_token
            user-info-uri: https://api.github.com/user
            user-name-attribute: id

4.构建和运行

# Build the application
mvn clean package -DskipTests

# Run locally
java -jar target/cf-mcp-client-1.5.1.jar --spring.profiles.active=local

☁️ Cloud Foundry部署

1.先决条件

  • 您的Cloud Foundry空间中提供了CF-SSO服务实例
  • PostgreSQL服务实例(可选,可以使用外部数据库)

2.服务绑定

# Create CF-SSO service instance
cf create-service p-identity cf-sso-service

# Optional: Create PostgreSQL service
cf create-service postgresql-db shared postgres-service

3.部署应用程序

# Deploy to Cloud Foundry
cf push cf-mcp-client-sso -f manifest.yml

4.绑定服务

# Bind CF-SSO service
cf bind-service cf-mcp-client-sso cf-sso-service

# Optional: Bind PostgreSQL service
cf bind-service cf-mcp-client-sso postgres-service

# Restart application to pick up service bindings
cf restart cf-mcp-client-sso

🔧 配置

自动CF-SSO配置

应用程序使用 java-cfenv-boot-pivotal-sso 对于自动OAuth2配置:


    io.pivotal.cfenv
    java-cfenv-boot-pivotal-sso
    3.5.0

这将自动配置:

  • OAuth2客户端注册ID sso
  • 授权、令牌和用户信息URI
  • 服务绑定中的客户端ID和密钥
  • 正确的作用域和重定向URI

手动配置(如果需要)

如果自动配置不起作用,您可以在中手动配置OAuth2 application.yaml:

spring:
  security:
    oauth2:
      client:
        registration:
          cf-sso:
            client-id: ${CF_SSO_CLIENT_ID}
            client-secret: ${CF_SSO_CLIENT_SECRET}
            scope: openid, profile
            authorization-grant-type: authorization_code
            redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}"
        provider:
          cf-sso:
            authorization-uri: ${CF_SSO_AUTH_URI}
            token-uri: ${CF_SSO_TOKEN_URI}
            user-info-uri: ${CF_SSO_USER_INFO_URI}
            user-name-attribute: user_name
            jwk-set-uri: ${CF_SSO_JWK_SET_URI}

🌐 应用程序端点

公共端点

  • / -登录页面
  • /login.html -登录页面
  • /login -OAuth 2登录重定向
  • /auth/provider -获取活动身份验证提供程序
  • /auth/status -获取身份验证状态

受保护的端点

  • /welcome -登录后欢迎页面
  • /chat -聊天界面(如果已实现)
  • /document/** -文档处理端点

OAuth2端点

  • /oauth2/authorization/sso -CF-SSO授权
  • /oauth2/authorization/github -GitHub授权(回退)
  • /login/oauth2/code/sso -CF-SSO回拨
  • /login/oauth2/code/github -GitHub回调

🔍 故障排除

常见问题

1.“Id为cf sso的客户端注册无效”

问题:登录按钮使用了错误的注册ID\ 解决方案:更新登录按钮以使用 /oauth2/authorization/sso 而不是 /oauth2/authorization/cf-sso

2.“Jwk集格式错误-缺少必需的'keys'成员”

问题:CF-SSO JWK集URI返回无效数据\ 解决方案:使用javacfenv自动配置而不是手动配置

3.“模糊映射”错误

问题:多个控制器处理同一端点\ 解决方案:删除冲突的映射或使用不同的端点路径

4.启动时应用程序崩溃

问题:Bean冲突或缺少依赖项\ 解决方案:检查日志中的特定错误消息并解决冲突

调试

启用调试日志记录:

logging:
  level:
    org.springframework.security: DEBUG
    org.springframework.security.oauth2: DEBUG
    io.pivotal.cfenv: DEBUG

📚 关键组件

控制器

  • LoginController:处理OAuth2登录重定向和提供程序选择
  • WelcomeController:显示包含用户信息的登录后欢迎页面
  • AuthController:提供身份验证状态和提供程序信息
  • WebController:提供静态页面并处理根重定向

安全配置

  • SecurityConfig:使用OAuth2登录配置Spring Security
  • 自动配置:使用java cfenv进行CF-SSO集成
  • 动态提供商选择:支持CF-SSO和GitHub OAuth2

前端

  • login.html:具有动态提供商选择的登录页面
  • welcome.html:Thymeleaf欢迎页面模板
  • 角度组件:聊天界面和文档处理

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/new-feature
  3. 提交更改: git commit -am 'Add new feature'
  4. 推送到分支: git push origin feature/new-feature
  5. 创建拉取请求

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

  • Spring Boot和Spring Security团队提供卓越的OAuth2支持
  • CF-SSO服务的Cloud Foundry团队
  • 用于自动服务绑定配置的javacfenv项目
  • Spring AI团队具备AI集成能力

📞 支持

对于问题和疑问:

  • 在GitHub存储库中创建问题
  • 检查上面的故障排除部分
  • 审查Cloud Foundry和CF-SSO文档

______________________________________________________________________

内置于❤️ Cloud Foundry和Spring社区

目录标签

目录标签

AI聊天Java文档处理Spring Boot本地部署单点登录多语言支持SpringBoot

接入字段

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

未说明

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

oauth

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauth部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP