关于配置mcp服务端sse-message-endpoint和sse-endpoint的注意点

在spring ai配置mcp服务时,这里的pom配置如下(alibaba的配置不用管):

java 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.ai</groupId>
    <artifactId>mcp-server</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.5.9</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-mcp-server-webmvc</artifactId>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.ai</groupId>
                <artifactId>spring-ai-bom</artifactId>
                <version>1.1.8</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud.ai</groupId>
                <artifactId>spring-ai-alibaba-bom</artifactId>
                <version>1.1.2.2</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud.ai</groupId>
                <artifactId>spring-ai-alibaba-extensions-bom</artifactId>
                <version>1.1.2.2</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <releases>
                <enabled>false</enabled>
            </releases>
        </repository>
        <repository>
            <name>Central Portal Snapshots</name>
            <id>central-portal-snapshots</id>
            <url>https://central.sonatype.com/repository/maven-snapshots/</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>

</project>

application.yml配置如下:

java 复制代码
spring:
  application:
    name: mcp-server
  ai:
    mcp:
      server:
        name: mcp-server1
        version: 1.0.0
        type: SYNC
        # sse消息端点路径
        sse-message-endpoint: /api/v1/mcp/message
        # sse端点路径
        sse-endpoint: /api/v1/sse
        # url访问前缀
#        base-url: /api/v1
        stdio: false

server:
  port: 8085

这里可以看到有一个base_url的配置,这个配置目前感觉是没有多大的作用,我在客户端访问MCP服务端的时候这个base_url的配置主要作用在sse-message-endpoint链接前缀,但是当客户端连接上sse-endpoint端点的时候访问的/api/v1/mcp/message出现404的错误,但是当把base_url注释掉,直接把sse-message-endpoint端点修改为/api/v1/mcp/message就可以正常访问了,客户端的配置如下:

java 复制代码
spring:
  ai:
    mcp:
      client:
        mcp-server:
           url: http://localhost:8085
           sse-endpoint: /api/v1/sse
相关推荐
蚰蜒螟2 小时前
一次 Spring AOP 与定时任务引发的死锁排查实录
java·spring·firefox
Java爱好狂.3 小时前
Java就业需要学习哪些内容?
spring·程序员·springboot·架构师·java面试·java面试题·java八股文
listening7774 小时前
HarmonyOS 6.1 元服务深度优化:从“秒开”到“常驻”的极致体验
java·开发语言·spring
空中湖9 小时前
Spring AI Agent 编排:ReAct 模式 + 多 Agent 协作实战
人工智能·spring·react.js
yio_yin1 天前
Spring事务管理(数据一致性)
数据库·sql·spring
dear_bi_MyOnly1 天前
【SpringBoot配置文件】
java·spring boot·后端·学习·spring·java-ee·学习方法
our_times1 天前
2026年Java开发者破局指南:Spring AI 2.0 与 Agent 开发实战
java·人工智能·spring
wear工程师1 天前
@Transactional 标了却没开事务?先看这次调用有没有经过代理
java·spring
爱学习的小可爱卢1 天前
SpringCloud——微服务实战:OpenFeign与Nacos服务调用详解
spring·spring cloud·微服务