Federico Mariani created CAMEL-24327:
----------------------------------------
Summary: camel-mcp-server - session TTL / keep-alive eviction for
the Vert.x streamable transport
Key: CAMEL-24327
URL: https://issues.apache.org/jira/browse/CAMEL-24327
Project: Camel
Issue Type: Improvement
Components: camel-ai
Reporter: Federico Mariani
Follow-up from the CAMEL-24310 review ([PR
#25306|https://github.com/apache/camel/pull/25306]).
The {{sessions}} map in {{VertxMcpStreamableServerTransportProvider}} grows on
every {{initialize}} and entries are removed only on explicit DELETE, on a
failed SSE write to the client, or on {{closeGracefully()}}. A client that
disconnects without sending DELETE and is never written to again leaks its
session entry.
Add active eviction:
* keep-alive pings (the MCP Java SDK ships {{KeepAliveScheduler}} for exactly
this — the servlet reference transport wires it behind a {{keepAliveInterval}}
builder option), evicting sessions whose ping fails, and/or
* a configurable idle TTL for sessions with no activity.
Expose the interval/TTL as engine configuration with a sensible default. The
same concern applies to any future engine that manages its own session map (the
Quarkus and Spring Boot native engines own sessions in their runtimes).
----
_This issue was drafted by Claude Code on behalf of Federico Mariani._
--
This message was sent by Atlassian Jira
(v8.20.10#820010)