企业级 Spring 应用 MCP 化解决方案

简介: AI MCP Bridge 是一站式 Spring 应用 MCP 化治理平台,零代码将 REST Controller 升级为 MCP 服务,支持编译时元信息生成、多注册中心、动态服务发现与负载均衡,兼容 Spring Web 原生生态,助力传统应用无缝接入 AI 工具调用。

AI MCP Bridge 🌉

项目简介(https://github.com/xiaozhug/ai-mcp-bridge

AI MCP Bridge 是一个革命性的 MCP 服务治理平台,提供一站式 Spring 应用 MCP 化解决方案。它不仅能够将 Spring Web 项目中的 REST Controller 接口无缝升级为 MCP 服务,更提供完整的 MCP Tool 注册发现生态,让传统应用快速具备 AI 工具调用能力。

🎯 核心价值:零代码改造,让您的 Spring 应用瞬间拥抱 AI 时代!

核心功能

📄 编译时 MCP 元信息生成

  • 提前生成:在编译阶段自动分析 Spring Web 项目的 REST Controller 接口,生成对应的 MCP 元信息
  • 工具定义:自动生成 MCP 工具的方法签名、参数说明、返回值类型等元数据信息
  • 调用规范:为 AI 客户端提供标准的工具调用接口描述,确保调用的准确性和可靠性
  • 性能优化:减少运行时反射开销,提供更好的运行时性能

🛠️ REST Controller 无缝升级为 MCP 接口

  • 多版本 JDK 支持

    • 🟢 JDK 1.8:将基于 JDK 1.8 的 Spring Web 项目 REST 接口转换为 MCP 调用接口
    • 🟢 JDK 17:将基于 JDK 17 的 Spring Web 项目 REST 接口转换为 MCP 调用接口
  • 完整生命周期支持

    • 完全走原来 Spring Web 项目的调用生命周期
    • 支持拦截器、过滤器等
  • Spring Web 原生参数处理

    • 自动参数绑定:完整支持 Spring MVC 参数解析机制
    • 注解支持:@RequestParam、@PathVariable、@RequestBody 等注解完整兼容
    • 类型转换:Spring 类型转换器自动应用
    • 数据绑定:数据绑定和验证机制无缝继承
    • 示例:支持 HttpServletRequest 等原生 Web 对象参数自动处理
  • 安全体系兼容

    • 完全兼容原有 Spring Web 项目的认证授权体系
    • 支持自定义安全拦截器和权限校验
    • MCP 调用与原有 REST 接口共享同一套安全配置
  • 协议兼容

    • 基于 HTTP 协议
    • 符合 MCP 客户端调用规范

🤖 Spring AI MCP Server Tool 深度适配(仅限 JDK 17+)

  • 环境要求:专为 JDK 17 及以上版本的 Spring Web 项目设计
  • 协议转换:将 Spring Web 项目中的 REST Controller 接口转换为 MCP Server Tool
  • MCP 原生协议:MCP Client 可直接使用 MCP 协议进行原生调用
  • 生态优化:专为 Spring AI 生态系统优化,支持 Spring AI MCP Client 直接集成,同时兼容多语言 MCP Client
  • 版本适配:完美支持 Spring Boot 3.x 与 JDK 17+ 的现代技术栈组合

🔍 动态 MCP Tool 注册与发现

  • 自动注册

    • 支持 REST Controller 暴露的 MCP 调用接口自动注册
    • 支持 Spring AI MCP Server Tool 的自动注册
  • 动态发现

    • MCP 客户端自动发现可用 Tools
    • 支持实时更新
    • 可发现通过 REST Controller 升级的 MCP 接口
    • 可发现专门的 Spring AI MCP Server Tools
  • 负载均衡

    • 多实例环境下负载均衡
    • 对 REST Controller 转化的 MCP 接口进行负载均衡
    • 对 Spring AI MCP Tools 进行负载均衡

🏗️ 多注册中心支持

  • 灵活部署

    • 单注册中心:MCP Tools 与业务服务共享同一注册中心
    • 双注册架构:MCP Tool 可注册到独立的注册中心,完全不影响原有业务注册中心
  • 服务隔离:实现业务服务与 MCP Tools 的流量分离和治理隔离

  • 客户端双源:MCP 客户端可同时从不同注册中心拉取服务

  • 灵活组合

    • 支持 Eureka、Nacos、Consul、Zookeeper 的笛卡尔积组合方式
    • 组合示例:业务服务注册到 Nacos,MCP Tools 注册到 Eureka
    • 同类型双中心:支持使用两个相同类型的注册中心
    • 单中心示例:所有服务统一注册到单个 Nacos 或 Eureka 集群

🔌 智能 MCP 客户端调用封装

  • 注册中心发现调用

    • 自动服务发现:从注册中心动态拉取 MCP 服务元信息
    • 协议自适应:根据服务端暴露形式自动选择 HTTP 协议或 MCP 协议进行调用
    • HTTP 协议兼容性:智能 MCP 客户端支持通过 HTTP 协议进行 MCP 兼容性调用
    • 负载均衡:支持多实例环境下的故障转移
  • 直连 Controller 调用

    • 元信息自动获取:直接连接服务端暴露的 Controller 接口获取 MCP 元信息
    • HTTP 协议调用:底层采用 HTTP 协议构建 MCP 调用,兼容性更好
    • 零配置接入:无需额外配置,直接连接即可使用
  • MCP Server 直连调用

    • 标准 MCP 客户端:直接连接服务端通过 Controller 接口转换的 MCP Server
    • HTTP 传输层:底层使用 HTTP 协议进行数据传输,兼顾标准性和性能
    • 工具自动发现:通过 MCP Client 自动获取服务端工具信息和方法签名
  • 统一调用接口

    • 多协议统一:封装不同调用方式的差异,提供统一的调用接口
    • 异常统一处理:统一的错误处理和重试机制

核心优势

🚀 零改造升级

  • 现有 REST Controller 无需任何代码修改
  • 保持原有业务逻辑完全不变
  • 支持渐进式迁移,降低升级风险

🌐 企业级服务治理

  • 多注册中心并行支持
  • 服务发现与负载均衡

🔌 灵活调用方式

  • 支持多种客户端调用模式,适应不同场景需求
  • 协议自适应,最大化兼容性和性能
  • 统一的调用接口,简化客户端集成复杂度

示例项目

MAVEN

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.github.xiaozhug</groupId>
            <artifactId>ai-mcp-bridge-dependencies</artifactId>
            <version>1.0.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

我们为每个核心功能提供了完整的示例项目,每个示例都有详细的独立文档:

示例项目 功能说明 技术栈 核心特性 文档位置
metadata-compile 编译时元数据生成 (Spring Boot 2.x + JDK 8)/(Spring Boot 3.x + JDK 17) 编译阶段自动生成MCP Tools元数据和调用规范 查看文档
rest-to-mcp-http Controller MCP 升级 (Spring Boot 2.x + JDK 8)/(Spring Boot 3.x + JDK 17) REST → MCP 协议转换 查看文档
rest-to-mcp-tool REST转Spring AI MCP Tool Spring Boot 3.x + JDK 17 REST Controller 无缝适配为 Spring AI MCP Tool 查看文档
rest-mcp-registry REST 转换 MCP 接口注册发现 (Spring Boot 2.x + JDK 8)/(Spring Boot 3.x + JDK 17) + 注册中心支持 REST 升级接口的服务治理 查看文档
native-mcp-registry 原生 MCP Tool 注册发现 Spring Boot 3.x + JDK 17 + 注册中心支持 原生 MCP Tools 服务治理 查看文档
multi-registry 多注册中心架构 (Spring Boot 2.x + JDK 8)/(Spring Boot 3.x + JDK 17) + 双注册中心组合 业务与 MCP Tools 隔离 查看文档
enterprise-solution 企业级完整方案(rest-to-mcp-http + rest-to-mcp-tool + multi-registry) Spring Boot 3.x + JDK 17 端到端解决方案 查看文档

详细配置和使用说明请参考各个示例项目的文档。

相关文章
|
3月前
|
人工智能 Java API
Java 正式进入 Agentic AI 时代:Spring AI Alibaba 1.1 发布背后的技术演进
Spring AI Alibaba 1.1 正式发布,提供极简方式构建企业级AI智能体。基于ReactAgent核心,支持多智能体协作、上下文工程与生产级管控,助力开发者快速打造可靠、可扩展的智能应用。
3042 43
|
8天前
|
人工智能 数据可视化 Serverless
国产之光:Dify何以成为国内Workflow Agent开发者的首选工具
随着 LLM 技术发展,将LLM从概念验证推向生产时面临诸多挑战,如复杂Prompt工程、长上下文管理、缺乏生产级运维工具及快速迭代难等。Dify旨在通过融合后端即服务(BaaS)和LLMOps理念,为开发者提供一站式、可视化、生产就绪的解决方案。
612 2
|
人工智能 Java Serverless
【MCP教程系列】搭建基于 Spring AI 的 SSE 模式 MCP 服务并自定义部署至阿里云百炼
本文详细介绍了如何基于Spring AI搭建支持SSE模式的MCP服务,并成功集成至阿里云百炼大模型平台。通过四个步骤实现从零到Agent的构建,包括项目创建、工具开发、服务测试与部署。文章还提供了具体代码示例和操作截图,帮助读者快速上手。最终,将自定义SSE MCP服务集成到百炼平台,完成智能体应用的创建与测试。适合希望了解SSE实时交互及大模型集成的开发者参考。
13673 60
|
7月前
|
JSON 安全 Java
API 一键转换 MCP 服务!Higress 助今日投资快速上线 MCP 市场
今日投资的技术负责人介绍了如何通过Higress MCP 市场完善的解决方案,快捷地将丰富的金融数据 API 转化为 MCP 工具,帮助用户通过 MCP 的方式非常轻松地调用专业金融数据,自由快速地构建自己的金融大模型应用。
899 23
|
缓存 JavaScript Java
SpringBoot集成onlyoffice实现word文档编辑保存
SpringBoot集成onlyoffice实现word文档编辑保存
2689 0
|
9月前
|
人工智能 Java API
MCP客户端调用看这一篇就够了(Java版)
本文详细介绍了MCP(Model Context Protocol)客户端的开发方法,包括在没有MCP时的痛点、MCP的作用以及如何通过Spring-AI框架和原生SDK调用MCP服务。文章首先分析了MCP协议的必要性,接着分别讲解了Spring-AI框架和自研SDK的使用方式,涵盖配置LLM接口、工具注入、动态封装工具等步骤,并提供了代码示例。此外,还记录了开发过程中遇到的问题及解决办法,如版本冲突、服务连接超时等。最后,文章探讨了框架与原生SDK的选择,认为框架适合快速构建应用,而原生SDK更适合平台级开发,强调了两者结合使用的价值。
12174 33
MCP客户端调用看这一篇就够了(Java版)
|
5月前
|
Web App开发 人工智能 自然语言处理
快速搞定Dify+Chrome MCP:打造能操作网页的AI助手
本文介绍了如何通过Dify和Chrome MCP在3分钟内打造一个能操作浏览器的AI助手。结合Dify的LLM能力与Chrome MCP的浏览器控制功能,用户可用自然语言指令让AI自动填写表单、抓取数据、点击按钮,实现网页自动化操作。无需复杂编程,适合本地部署,可应用于数据监控、内容抓取等多种场景。