What Happened
- This PR changes MCP startup flow so a server configured with `requiresOAuth: true` no longer waits for a later auth error to start OAuth; `MCPConnectionFactory.createConnection()` now checks for stored tokens and, if absent, proactively runs the OAuth flow before calling `attemptToConnect()`. The flow emits `oauthRequired`, awaits `oauthHandled` or `oauthFailed`, and uses the parsed server URL to fail fast when mandatory connection metadata is missing.
- This PR changes MCP startup flow so a server configured with `requiresOAuth: true` no longer waits for a later auth error to start OAuth; `MCPConnectionFactory.createConnection()` now checks for stored tokens and, if absent, proactively runs the OAuth flow before calling `attemptToConnect()`. The flow emits `oauthRequired`, awaits `oauthHandled` or `oauthFailed`, and uses the parsed server URL to fail fast when mandatory connection metadata is missing.
- 1 evidence item attached for review.