You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Changed
Stateless HTTP is now the default ([transport.http] stateless = true).
The streamable-HTTP transport previously kept one server transport per MCP
session, which the MCP SDK only frees on a clean session close. A client that
opened a new session per poll and never closed it leaked a transport each time,
growing the process unbounded - the memory leak seen on long-running VPS / HTTP
deployments. Stateless mode builds a fresh transport per request and tears it
down immediately, so nothing accumulates. Trade-off: server-pushed resource
subscriptions (quotes://, account://, positions://) need a persistent
session and are inert in stateless mode (tools still work - clients poll). Set stateless = false or serve --no-stateless to restore the old behaviour.
Default log level is now WARNING ([logging] level). An unattended HTTP
server no longer floods the console with uvicorn's per-request access log or the
SDK's "Processing request" / "Created new transport" chatter; consent-posture
and auth warnings still surface. Set INFO / DEBUG for more, via [logging] level, the MT5_MCP_LOG_LEVEL env var, or serve --log-level
(CLI > env > file).
Added
serve --stateless / --no-stateless and serve --log-level flags.
MT5_MCP_LOG_LEVEL environment override for the log level.
examples/vps/install-mt5-mcp-task.ps1 installs a daily-restart companion
task (-DailyRestartAt, default 03:30; -NoDailyRestart to skip) that
stops and restarts the server once a day to reclaim memory on Windows VPS
deployments.