Skip to content

Commit 17e7ae7

Browse files
committed
Bump MCP to 0.12.0-SNAPSHOT
Signed-off-by: Daniel Garnier-Moiroux <[email protected]>
1 parent 1dd686b commit 17e7ae7

File tree

7 files changed

+49
-49
lines changed

7 files changed

+49
-49
lines changed

auto-configurations/mcp/spring-ai-autoconfigure-mcp-client-httpclient/src/main/java/org/springframework/ai/mcp/client/httpclient/autoconfigure/SseHttpClientTransportAutoConfiguration.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@
2323

2424
import com.fasterxml.jackson.databind.ObjectMapper;
2525
import io.modelcontextprotocol.client.McpSyncClient;
26-
import io.modelcontextprotocol.client.transport.AsyncHttpRequestCustomizer;
2726
import io.modelcontextprotocol.client.transport.HttpClientSseClientTransport;
28-
import io.modelcontextprotocol.client.transport.SyncHttpRequestCustomizer;
27+
import io.modelcontextprotocol.client.transport.customizer.McpAsyncHttpClientRequestCustomizer;
28+
import io.modelcontextprotocol.client.transport.customizer.McpSyncHttpClientRequestCustomizer;
2929
import io.modelcontextprotocol.spec.McpSchema;
3030

3131
import org.springframework.ai.mcp.client.common.autoconfigure.NamedClientMcpTransport;
@@ -87,17 +87,17 @@ public class SseHttpClientTransportAutoConfiguration {
8787
* @param sseProperties the SSE client properties containing server configurations
8888
* @param objectMapperProvider the provider for ObjectMapper or a new instance if not
8989
* available
90-
* @param syncHttpRequestCustomizer provider for {@link SyncHttpRequestCustomizer} if
91-
* available
92-
* @param asyncHttpRequestCustomizer provider fo {@link AsyncHttpRequestCustomizer} if
93-
* available
90+
* @param syncHttpRequestCustomizer provider for
91+
* {@link McpSyncHttpClientRequestCustomizer} if available
92+
* @param asyncHttpRequestCustomizer provider fo
93+
* {@link McpAsyncHttpClientRequestCustomizer} if available
9494
* @return list of named MCP transports
9595
*/
9696
@Bean
9797
public List<NamedClientMcpTransport> sseHttpClientTransports(McpSseClientProperties sseProperties,
9898
ObjectProvider<ObjectMapper> objectMapperProvider,
99-
ObjectProvider<SyncHttpRequestCustomizer> syncHttpRequestCustomizer,
100-
ObjectProvider<AsyncHttpRequestCustomizer> asyncHttpRequestCustomizer) {
99+
ObjectProvider<McpSyncHttpClientRequestCustomizer> syncHttpRequestCustomizer,
100+
ObjectProvider<McpAsyncHttpClientRequestCustomizer> asyncHttpRequestCustomizer) {
101101

102102
ObjectMapper objectMapper = objectMapperProvider.getIfAvailable(ObjectMapper::new);
103103

@@ -117,9 +117,9 @@ public List<NamedClientMcpTransport> sseHttpClientTransports(McpSseClientPropert
117117
syncHttpRequestCustomizer.ifUnique(transportBuilder::httpRequestCustomizer);
118118
if (asyncHttpRequestCustomizer.getIfUnique() != null && syncHttpRequestCustomizer.getIfUnique() != null) {
119119
logger.warn("Found beans of type %s and %s. Using %s.".formatted(
120-
AsyncHttpRequestCustomizer.class.getSimpleName(),
121-
SyncHttpRequestCustomizer.class.getSimpleName(),
122-
SyncHttpRequestCustomizer.class.getSimpleName()));
120+
McpAsyncHttpClientRequestCustomizer.class.getSimpleName(),
121+
McpSyncHttpClientRequestCustomizer.class.getSimpleName(),
122+
McpSyncHttpClientRequestCustomizer.class.getSimpleName()));
123123
}
124124

125125
HttpClientSseClientTransport transport = transportBuilder.build();

auto-configurations/mcp/spring-ai-autoconfigure-mcp-client-httpclient/src/main/java/org/springframework/ai/mcp/client/httpclient/autoconfigure/StreamableHttpHttpClientTransportAutoConfiguration.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@
2323

2424
import com.fasterxml.jackson.databind.ObjectMapper;
2525
import io.modelcontextprotocol.client.McpSyncClient;
26-
import io.modelcontextprotocol.client.transport.AsyncHttpRequestCustomizer;
2726
import io.modelcontextprotocol.client.transport.HttpClientStreamableHttpTransport;
28-
import io.modelcontextprotocol.client.transport.SyncHttpRequestCustomizer;
27+
import io.modelcontextprotocol.client.transport.customizer.McpAsyncHttpClientRequestCustomizer;
28+
import io.modelcontextprotocol.client.transport.customizer.McpSyncHttpClientRequestCustomizer;
2929
import io.modelcontextprotocol.spec.McpSchema;
3030

3131
import org.springframework.ai.mcp.client.common.autoconfigure.NamedClientMcpTransport;
@@ -90,17 +90,17 @@ public class StreamableHttpHttpClientTransportAutoConfiguration {
9090
* configurations
9191
* @param objectMapperProvider the provider for ObjectMapper or a new instance if not
9292
* available
93-
* @param syncHttpRequestCustomizer provider for {@link SyncHttpRequestCustomizer} if
94-
* available
95-
* @param asyncHttpRequestCustomizer provider fo {@link AsyncHttpRequestCustomizer} if
96-
* available
93+
* @param syncHttpRequestCustomizer provider for
94+
* {@link McpSyncHttpClientRequestCustomizer} if available
95+
* @param asyncHttpRequestCustomizer provider fo
96+
* {@link McpAsyncHttpClientRequestCustomizer} if available
9797
* @return list of named MCP transports
9898
*/
9999
@Bean
100100
public List<NamedClientMcpTransport> streamableHttpHttpClientTransports(
101101
McpStreamableHttpClientProperties streamableProperties, ObjectProvider<ObjectMapper> objectMapperProvider,
102-
ObjectProvider<SyncHttpRequestCustomizer> syncHttpRequestCustomizer,
103-
ObjectProvider<AsyncHttpRequestCustomizer> asyncHttpRequestCustomizer) {
102+
ObjectProvider<McpSyncHttpClientRequestCustomizer> syncHttpRequestCustomizer,
103+
ObjectProvider<McpAsyncHttpClientRequestCustomizer> asyncHttpRequestCustomizer) {
104104

105105
ObjectMapper objectMapper = objectMapperProvider.getIfAvailable(ObjectMapper::new);
106106

@@ -123,9 +123,9 @@ public List<NamedClientMcpTransport> streamableHttpHttpClientTransports(
123123
syncHttpRequestCustomizer.ifUnique(transportBuilder::httpRequestCustomizer);
124124
if (asyncHttpRequestCustomizer.getIfUnique() != null && syncHttpRequestCustomizer.getIfUnique() != null) {
125125
logger.warn("Found beans of type %s and %s. Using %s.".formatted(
126-
AsyncHttpRequestCustomizer.class.getSimpleName(),
127-
SyncHttpRequestCustomizer.class.getSimpleName(),
128-
SyncHttpRequestCustomizer.class.getSimpleName()));
126+
McpAsyncHttpClientRequestCustomizer.class.getSimpleName(),
127+
McpSyncHttpClientRequestCustomizer.class.getSimpleName(),
128+
McpSyncHttpClientRequestCustomizer.class.getSimpleName()));
129129
}
130130

131131
HttpClientStreamableHttpTransport transport = transportBuilder.build();

auto-configurations/mcp/spring-ai-autoconfigure-mcp-client-httpclient/src/test/java/org/springframework/ai/mcp/client/autoconfigure/SseHttpClientTransportAutoConfigurationIT.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
import java.util.List;
2020

2121
import io.modelcontextprotocol.client.McpSyncClient;
22-
import io.modelcontextprotocol.client.transport.AsyncHttpRequestCustomizer;
23-
import io.modelcontextprotocol.client.transport.SyncHttpRequestCustomizer;
22+
import io.modelcontextprotocol.client.transport.customizer.McpAsyncHttpClientRequestCustomizer;
23+
import io.modelcontextprotocol.client.transport.customizer.McpSyncHttpClientRequestCustomizer;
2424
import io.modelcontextprotocol.spec.McpSchema.ListToolsResult;
2525
import org.junit.jupiter.api.AfterAll;
2626
import org.junit.jupiter.api.BeforeAll;
@@ -121,9 +121,9 @@ void usesSyncRequestCustomizer() {
121121

122122
mcpClient.ping();
123123

124-
verify(context.getBean(SyncHttpRequestCustomizer.class), atLeastOnce()).customize(any(), any(), any(),
125-
any());
126-
verifyNoInteractions(context.getBean(AsyncHttpRequestCustomizer.class));
124+
verify(context.getBean(McpSyncHttpClientRequestCustomizer.class), atLeastOnce()).customize(any(), any(),
125+
any(), any(), any());
126+
verifyNoInteractions(context.getBean(McpAsyncHttpClientRequestCustomizer.class));
127127
});
128128
}
129129

@@ -140,17 +140,17 @@ void usesAsyncRequestCustomizer() {
140140

141141
mcpClient.ping();
142142

143-
verify(context.getBean(AsyncHttpRequestCustomizer.class), atLeastOnce()).customize(any(), any(), any(),
144-
any());
143+
verify(context.getBean(McpAsyncHttpClientRequestCustomizer.class), atLeastOnce()).customize(any(),
144+
any(), any(), any(), any());
145145
});
146146
}
147147

148148
@Configuration
149149
static class SyncRequestCustomizerConfiguration {
150150

151151
@Bean
152-
SyncHttpRequestCustomizer syncHttpRequestCustomizer() {
153-
return mock(SyncHttpRequestCustomizer.class);
152+
McpSyncHttpClientRequestCustomizer syncHttpRequestCustomizer() {
153+
return mock(McpSyncHttpClientRequestCustomizer.class);
154154
}
155155

156156
}
@@ -159,9 +159,9 @@ SyncHttpRequestCustomizer syncHttpRequestCustomizer() {
159159
static class AsyncRequestCustomizerConfiguration {
160160

161161
@Bean
162-
AsyncHttpRequestCustomizer asyncHttpRequestCustomizer() {
163-
AsyncHttpRequestCustomizer requestCustomizerMock = mock(AsyncHttpRequestCustomizer.class);
164-
when(requestCustomizerMock.customize(any(), any(), any(), any()))
162+
McpAsyncHttpClientRequestCustomizer asyncHttpRequestCustomizer() {
163+
McpAsyncHttpClientRequestCustomizer requestCustomizerMock = mock(McpAsyncHttpClientRequestCustomizer.class);
164+
when(requestCustomizerMock.customize(any(), any(), any(), any(), any()))
165165
.thenAnswer(invocation -> Mono.just(invocation.getArguments()[0]));
166166
return requestCustomizerMock;
167167
}

auto-configurations/mcp/spring-ai-autoconfigure-mcp-client-httpclient/src/test/java/org/springframework/ai/mcp/client/autoconfigure/StreamableHttpHttpClientTransportAutoConfigurationIT.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
import java.util.List;
2020

2121
import io.modelcontextprotocol.client.McpSyncClient;
22-
import io.modelcontextprotocol.client.transport.AsyncHttpRequestCustomizer;
23-
import io.modelcontextprotocol.client.transport.SyncHttpRequestCustomizer;
22+
import io.modelcontextprotocol.client.transport.customizer.McpAsyncHttpClientRequestCustomizer;
23+
import io.modelcontextprotocol.client.transport.customizer.McpSyncHttpClientRequestCustomizer;
2424
import io.modelcontextprotocol.spec.McpSchema.ListToolsResult;
2525
import org.junit.jupiter.api.AfterAll;
2626
import org.junit.jupiter.api.BeforeAll;
@@ -122,9 +122,9 @@ void usesSyncRequestCustomizer() {
122122

123123
mcpClient.ping();
124124

125-
verify(context.getBean(SyncHttpRequestCustomizer.class), atLeastOnce()).customize(any(), any(), any(),
126-
any());
127-
verifyNoInteractions(context.getBean(AsyncHttpRequestCustomizer.class));
125+
verify(context.getBean(McpSyncHttpClientRequestCustomizer.class), atLeastOnce()).customize(any(), any(),
126+
any(), any(), any());
127+
verifyNoInteractions(context.getBean(McpAsyncHttpClientRequestCustomizer.class));
128128
});
129129
}
130130

@@ -141,17 +141,17 @@ void usesAsyncRequestCustomizer() {
141141

142142
mcpClient.ping();
143143

144-
verify(context.getBean(AsyncHttpRequestCustomizer.class), atLeastOnce()).customize(any(), any(), any(),
145-
any());
144+
verify(context.getBean(McpAsyncHttpClientRequestCustomizer.class), atLeastOnce()).customize(any(),
145+
any(), any(), any(), any());
146146
});
147147
}
148148

149149
@Configuration
150150
static class SyncRequestCustomizerConfiguration {
151151

152152
@Bean
153-
SyncHttpRequestCustomizer syncHttpRequestCustomizer() {
154-
return mock(SyncHttpRequestCustomizer.class);
153+
McpSyncHttpClientRequestCustomizer syncHttpRequestCustomizer() {
154+
return mock(McpSyncHttpClientRequestCustomizer.class);
155155
}
156156

157157
}
@@ -160,9 +160,9 @@ SyncHttpRequestCustomizer syncHttpRequestCustomizer() {
160160
static class AsyncRequestCustomizerConfiguration {
161161

162162
@Bean
163-
AsyncHttpRequestCustomizer asyncHttpRequestCustomizer() {
164-
AsyncHttpRequestCustomizer requestCustomizerMock = mock(AsyncHttpRequestCustomizer.class);
165-
when(requestCustomizerMock.customize(any(), any(), any(), any()))
163+
McpAsyncHttpClientRequestCustomizer asyncHttpRequestCustomizer() {
164+
McpAsyncHttpClientRequestCustomizer requestCustomizerMock = mock(McpAsyncHttpClientRequestCustomizer.class);
165+
when(requestCustomizerMock.customize(any(), any(), any(), any(), any()))
166166
.thenAnswer(invocation -> Mono.just(invocation.getArguments()[0]));
167167
return requestCustomizerMock;
168168
}

auto-configurations/mcp/spring-ai-autoconfigure-mcp-server-common/src/test/java/org/springframework/ai/mcp/server/common/autoconfigure/McpStatelessServerAutoConfigurationIT.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.function.BiFunction;
2222

2323
import io.modelcontextprotocol.client.McpSyncClient;
24+
import io.modelcontextprotocol.common.McpTransportContext;
2425
import io.modelcontextprotocol.server.McpStatelessAsyncServer;
2526
import io.modelcontextprotocol.server.McpStatelessServerFeatures;
2627
import io.modelcontextprotocol.server.McpStatelessServerFeatures.AsyncCompletionSpecification;
@@ -31,7 +32,6 @@
3132
import io.modelcontextprotocol.server.McpStatelessServerFeatures.SyncToolSpecification;
3233
import io.modelcontextprotocol.server.McpStatelessSyncServer;
3334
import io.modelcontextprotocol.server.McpSyncServerExchange;
34-
import io.modelcontextprotocol.server.McpTransportContext;
3535
import io.modelcontextprotocol.spec.McpSchema;
3636
import io.modelcontextprotocol.spec.McpStatelessServerTransport;
3737
import org.junit.jupiter.api.Test;

mcp/common/src/main/java/org/springframework/ai/mcp/McpToolUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ public static McpStatelessServerFeatures.AsyncToolSpecification toStatelessAsync
331331

332332
return new McpStatelessServerFeatures.AsyncToolSpecification(statelessSyncToolSpecification.tool(),
333333
(context, request) -> Mono
334-
.fromCallable(() -> statelessSyncToolSpecification.callHandler().apply(context.copy(), request))
334+
.fromCallable(() -> statelessSyncToolSpecification.callHandler().apply(context, request))
335335
.subscribeOn(Schedulers.boundedElastic()));
336336
}
337337

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@
330330
<json-unit-assertj.version>4.1.0</json-unit-assertj.version>
331331

332332
<!-- MCP-->
333-
<mcp.sdk.version>0.11.3</mcp.sdk.version>
333+
<mcp.sdk.version>0.12.0-SNAPSHOT</mcp.sdk.version>
334334
<mcp-annotations.version>0.3.0-SNAPSHOT</mcp-annotations.version>
335335

336336
<!-- plugin versions -->

0 commit comments

Comments
 (0)