File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed
Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -17,7 +17,7 @@ use actix_web_httpauth::{
1717 } ,
1818 middleware:: HttpAuthentication ,
1919} ;
20- use rmcp:: transport:: streamable_http_server:: session:: never :: NeverSessionManager ;
20+ use rmcp:: transport:: streamable_http_server:: session:: local :: LocalSessionManager ;
2121use rmcp_actix_web:: transport:: StreamableHttpService ;
2222use std:: { sync:: Arc , time:: Duration } ;
2323use tera:: Tera ;
@@ -52,11 +52,16 @@ pub fn run() {
5252 ) ;
5353
5454 // Prepare MCP services (if enabled)
55+ // Notice: it makes no sense for Vigil to be a stateful MCP server, but \
56+ // unfortunately as of Sept 2025 many MCP client do not seem to support \
57+ // stateless servers yet. Therefore, for the moment, Vigil behaves as a \
58+ // stateful MCP server for wide compatibility. This may be changed to \
59+ // stateless mode and 'NeverSessionManager' in the future.
5560 let mcp_services = if APP_CONF . server . mcp_server == true {
5661 Some ( ( StreamableHttpService :: builder ( )
5762 . service_factory ( Arc :: new ( || Ok ( mcp:: Probes :: new ( ) ) ) )
58- . session_manager ( Arc :: new ( NeverSessionManager :: default ( ) ) )
59- . stateful_mode ( false )
63+ . session_manager ( Arc :: new ( LocalSessionManager :: default ( ) ) )
64+ . stateful_mode ( true )
6065 . sse_keep_alive ( MCP_SSE_KEEPALIVE_SECONDS )
6166 . build ( ) , ) )
6267 } else {
You can’t perform that action at this time.
0 commit comments