feat: add SSE transport and improve documentation

- Add Server-Sent Events (SSE) transport implementation with test coverage
- Add detailed documentation for both SSE and STDIO transports
- Extract common test logic into abstract base classes
- Add testcontainers support for SSE integration tests
- Replace System.out with SLF4J logging
- Externalize dependency versions to properties
- Implement endpoint event handling per MCP spec
- Add message endpoint sink for reliable message routing
- Improve error handling and graceful shutdown
- Update core module README with expanded features and examples
- Add dependency version properties and logging configuration
- Update architecture and class diagrams

Resolves #4
This commit is contained in:
Christian Tzolov 2024-12-12 11:46:12 +01:00
commit bc281dee54

View file

@ -57,6 +57,10 @@ class StdioServerTransport {
-ServerParameters parameters
}
class SseServerTransport {
-WebClient webClient
}
class McpSchema {
+class ErrorCodes
+interface Request
@ -72,6 +76,7 @@ class McpError {
McpTransport <|.. AbstractMcpTransport
AbstractMcpTransport <|-- StdioServerTransport
AbstractMcpTransport <|-- SseServerTransport
McpSession <|-- DefaultMcpSession
DefaultMcpSession <|-- McpAsyncClient
McpClient ..> McpAsyncClient : creates