Native /mcp user management with OAuth and TUI wizard #310

Merged
karsten merged 1 commit from feat/native-mcp-user-management into main 2026-11-09 14:25:22 +00:00
Owner

Implement the requested USER-facing MCP management, not model shell instructions. /mcp opens the native TUI server/action picker and HTTP/stdio add wizard; Matrix/WebUI expose the same host commands. Add/edit/remove, connect/reconnect/disconnect, enable/disable, tool listing/exposure, OAuth login/logout/cancel and remote browser callback. Reuse pinned PI OAuth/PKCE/issuer/state/token-refresh implementation and private auth store through one isolated compatibility adapter; no CLI subprocess or LLM turn. Login results return to the original authenticated operator/conversation only. Persistent runtime enablement is user-writable through the existing host setting service; existing sessions reload at their next prompt boundary without restart/history loss. Existing remote administrator identities and explicit tool allowlists remain intact. Typecheck/build and complete local suite: 1660 passed, 1 optional skip, 0 failed. Real HTTP OAuth tests prove direct and pasted browser callbacks, PKCE token exchange, foreign-actor denial, cancel, auth-store persistence/restart/logout. Real stdio/TUI wizard tests and actual dashboard-api HTTP-to-Core command acceptance also passed. Production OAuth provider-specific acceptance is not claimed; no test needs production secrets.

Implement the requested USER-facing MCP management, not model shell instructions. /mcp opens the native TUI server/action picker and HTTP/stdio add wizard; Matrix/WebUI expose the same host commands. Add/edit/remove, connect/reconnect/disconnect, enable/disable, tool listing/exposure, OAuth login/logout/cancel and remote browser callback. Reuse pinned PI OAuth/PKCE/issuer/state/token-refresh implementation and private auth store through one isolated compatibility adapter; no CLI subprocess or LLM turn. Login results return to the original authenticated operator/conversation only. Persistent runtime enablement is user-writable through the existing host setting service; existing sessions reload at their next prompt boundary without restart/history loss. Existing remote administrator identities and explicit tool allowlists remain intact. Typecheck/build and complete local suite: 1660 passed, 1 optional skip, 0 failed. Real HTTP OAuth tests prove direct and pasted browser callbacks, PKCE token exchange, foreign-actor denial, cancel, auth-store persistence/restart/logout. Real stdio/TUI wizard tests and actual dashboard-api HTTP-to-Core command acceptance also passed. Production OAuth provider-specific acceptance is not claimed; no test needs production secrets.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
harness/core!310
No description provided.