Skip to content

Commit dc8cbf6

Browse files
committed
docs(java): clarify core vs optional transport implementations
- Emphasize that core mcp module includes default STDIO and SSE transport implementations - Clarify that default implementations don't require external web frameworks - Mark Spring-specific transport implementations as optional dependencies Signed-off-by: Christian Tzolov <[email protected]>
1 parent 9573fef commit dc8cbf6

File tree

3 files changed

+28
-20
lines changed

3 files changed

+28
-20
lines changed

sdk/java/mcp-client.mdx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@ The MCP Client is a key component in the Model Context Protocol (MCP) architectu
1515
- Prompt system interactions
1616
- Optional features like roots management and sampling support
1717

18-
<Tip>
19-
The [Spring-AI MCP Client](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html) integration extends the MCP Java SDK to
20-
provide auto-configuration for MCP client functionality in Spring Boot applications and integrating with Spring AI’s [tool execution framework](https://docs.spring.io/spring-ai/reference/api/tools.html).
18+
<Tip>
19+
The core `io.modelcontextprotocol.sdk:mcp` module provides STDIO and SSE client transport implementations without requiring external web frameworks.
20+
21+
Spring-specific transport implementations are available as an **optional** dependency `io.modelcontextprotocol.sdk:mcp-spring-webflux` for [Spring Framework](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html) users.
2122
</Tip>
2223

2324
The client provides both synchronous and asynchronous APIs for flexibility in different application contexts.

sdk/java/mcp-overview.mdx

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,20 @@ If you're upgrading from 0.7.0, please refer to the [Migration Guide](https://gi
2222
- [Prompt](https://spec.modelcontextprotocol.io/specification/2024-11-05/server/prompts/) handling and management
2323
- [Sampling](https://spec.modelcontextprotocol.io/specification/2024-11-05/client/sampling/) support for AI model interactions
2424
- Multiple transport implementations:
25-
- Default transports:
25+
- Default transports (included in core `mcp` module, no external web frameworks required):
2626
- Stdio-based transport for process-based communication
2727
- Java HttpClient-based SSE client transport for HTTP SSE Client-side streaming
2828
- Servlet-based SSE server transport for HTTP SSE Server streaming
29-
- Spring-based transports:
29+
- Optional Spring-based transports (convenience if using Spring Framework):
3030
- WebFlux SSE client and server transports for reactive HTTP streaming
3131
- WebMVC SSE transport for servlet-based HTTP streaming
3232
- Supports Synchronous and Asynchronous programming paradigms
3333

34-
<Tip>[Spring AI MCP](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-overview.html) extends the MCP Java SDK with Spring Boot integration,
35-
providing both [Client](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html) and [Server](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-server-boot-starter-docs.html) Boot Starters.
36-
You can bootstrap your AI Spring applications using the [Spring Initializer](https://start.spring.io/).</Tip>
34+
<Tip>
35+
The core `io.modelcontextprotocol.sdk:mcp` module provides default STDIO and SSE client and server transport implementations without requiring external web frameworks.
36+
37+
Spring-specific transports are available as optional dependencies for convenience when using the [Spring Framework](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html).
38+
</Tip>
3739

3840
## Architecture
3941

@@ -80,16 +82,18 @@ The core MCP functionality:
8082
</dependency>
8183
```
8284

83-
For HTTP SSE transport implementations, add one of the following dependencies:
85+
The core `mcp` module already includes default STDIO and SSE transport implementations and doesn't require external web frameworks.
86+
87+
If you're using the Spring Framework and want to use Spring-specific transport implementations, add one of the following optional dependencies:
8488

8589
```xml
86-
<!-- Spring WebFlux-based SSE client and server transport -->
90+
<!-- Optional: Spring WebFlux-based SSE client and server transport -->
8791
<dependency>
8892
<groupId>io.modelcontextprotocol.sdk</groupId>
8993
<artifactId>mcp-spring-webflux</artifactId>
9094
</dependency>
9195

92-
<!-- Spring WebMVC-based SSE server transport -->
96+
<!-- Optional: Spring WebMVC-based SSE server transport -->
9397
<dependency>
9498
<groupId>io.modelcontextprotocol.sdk</groupId>
9599
<artifactId>mcp-spring-webmvc</artifactId>
@@ -106,15 +110,17 @@ For HTTP SSE transport implementations, add one of the following dependencies:
106110
}
107111
```
108112

109-
For HTTP SSE transport implementations, add one of the following dependencies:
113+
The core `mcp` module already includes default STDIO and SSE transport implementations and doesn't require external web frameworks.
114+
115+
If you're using the Spring Framework and want to use Spring-specific transport implementations, add one of the following optional dependencies:
110116

111117
```groovy
112-
// Spring WebFlux-based SSE client and server transport
118+
// Optional: Spring WebFlux-based SSE client and server transport
113119
dependencies {
114120
implementation platform("io.modelcontextprotocol.sdk:mcp-spring-webflux")
115121
}
116122
117-
// Spring WebMVC-based SSE server transport
123+
// Optional: Spring WebMVC-based SSE server transport
118124
dependencies {
119125
implementation platform("io.modelcontextprotocol.sdk:mcp-spring-webmvc")
120126
}
@@ -169,10 +175,9 @@ Replace the version number with the version of the BOM you want to use.
169175
The following dependencies are available and managed by the BOM:
170176

171177
- Core Dependencies
172-
- `io.modelcontextprotocol.sdk:mcp` - Core MCP library providing the base functionality and APIs for Model Context Protocol implementation.
173-
- Transport Dependencies
178+
- `io.modelcontextprotocol.sdk:mcp` - Core MCP library providing the base functionality and APIs for Model Context Protocol implementation, including default STDIO and SSE client and server transport implementations. No external web frameworks required.
179+
- Optional Transport Dependencies (convenience if using Spring Framework)
174180
- `io.modelcontextprotocol.sdk:mcp-spring-webflux` - WebFlux-based Server-Sent Events (SSE) transport implementation for reactive applications.
175181
- `io.modelcontextprotocol.sdk:mcp-spring-webmvc` - WebMVC-based Server-Sent Events (SSE) transport implementation for servlet-based applications.
176182
- Testing Dependencies
177183
- `io.modelcontextprotocol.sdk:mcp-test` - Testing utilities and support for MCP-based applications.
178-

sdk/java/mcp-server.mdx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,13 @@ The MCP Server is a foundational component in the Model Context Protocol (MCP) a
2121
- Managing concurrent client connections
2222
- Providing structured logging and notifications
2323

24-
<Tip>
25-
The [Spring-AI MCP Server](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-server-boot-starter-docs.html) integration extends the MCP Java SDK to
26-
provide auto-configuration for MCP server functionality in Spring Boot applications.
24+
<Tip>
25+
The core `io.modelcontextprotocol.sdk:mcp` module provides STDIO and SSE server transport implementations without requiring external web frameworks.
26+
27+
Spring-specific transport implementations are available as an **optional** dependencies `io.modelcontextprotocol.sdk:mcp-spring-webflux`, `io.modelcontextprotocol.sdk:mcp-spring-webmvc` for [Spring Framework](https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html) users.
2728
</Tip>
2829

30+
2931
The server supports both synchronous and asynchronous APIs, allowing for flexible integration in different application contexts.
3032

3133
<Tabs>

0 commit comments

Comments
 (0)