openclaw/docs/cli/mcp
Peter Steinberger a3a2d39a8e
fix(mcp): stop unused servers from accumulating across sessions (#150364)
Prevent wholly denied MCP servers from starting and retire excluded, unleased discovery connections through the existing session lifecycle owner. Keep final prepared tools and their OAuth context callable until session cleanup, and preserve requester connections and their advertised catalog during static native preflight.

Requester acquisition owns catalog reconciliation; omitting that partition from native preparation does not revoke it. Exact runtime ownership and active leases protect useful peers and replacements, while final session cleanup closes the remaining connections and owned stdio process trees. No configuration, TTL default, dependency, schema, or data migration changes.

Related: #142965
Closes #147041

Thanks to @michaeljgood71 and @terrencehinds99 for the completed-session and denied-agent traces.

Validation: 313 focused tests across 15 files and check-changed passed; repeated native/OAuth lifecycle proof preserved callable tools and returned every session to zero live children. The mixed HTTP regression verifies requester calls after native preflight. Nine existing lifecycle tests additionally cover #147041's stdio process-tree cleanup. Exact-head CI run 35193052654 is green, and native hosted CI/Testbox preparation passed at 46791e8eff8ea3789fd5754da165f65f1eef0206.
2026-09-17 00:45:31 -07:00
..
apps.md docs: remove repeated MCP Apps introduction (#144408) 2026-09-10 18:31:04 -03:00
control-ui.md
json-output.md
registry.md fix(mcp): stop unused servers from accumulating across sessions (#150364) 2026-09-17 00:45:31 -07:00
serve.md
transports.md fix(mcp): cleanup fails when a retired relay stalls (#150306) 2026-09-16 22:11:22 -07:00