wizardchen
7f3f219f58
feat(mcp): add OAuth2 authorization for MCP services
...
Support connecting to MCP servers that require OAuth2, with a Cursor-like
zero-config flow: the user provides only a URL and the system performs
metadata discovery, dynamic client registration (DCR), and the
authorization code flow with PKCE on first connect.
- Persist per-user access/refresh tokens and per-service DCR client
credentials, encrypted at rest (AES-256-GCM)
- Store the PKCE verifier/state during the flow via Redis with an
in-memory fallback for Lite mode
- Cache MCP clients per (service, user) so tokens stay user-isolated
- Add endpoints for authorize-url, callback, status, and token revoke;
the callback is allowlisted for unauthenticated access
- Surface a structured "authorization required" hint when a tool call
hits an unauthorized MCP service
- Frontend: add an auth-type selector with OAuth config, inline
authorization status/actions, and render the connection test result
inline in the editor drawer instead of a stacked centered dialog
2026-06-22 20:19:31 +08:00
..
2025-12-10 17:13:30 +08:00
2026-06-05 15:12:25 +08:00
2025-12-10 17:13:30 +08:00
2025-12-10 17:13:30 +08:00
2025-12-10 17:13:30 +08:00
2025-12-10 17:13:30 +08:00
2025-12-12 19:57:08 +08:00
2025-12-12 19:57:08 +08:00
2025-12-22 13:11:31 +08:00
2025-12-22 13:11:31 +08:00
2025-12-22 13:11:31 +08:00
2025-12-22 13:11:31 +08:00
2025-12-26 21:31:02 +08:00
2025-12-26 21:31:02 +08:00
2025-12-30 19:44:53 +08:00
2025-12-31 19:54:03 +08:00
2026-01-15 19:38:16 +08:00
2026-03-19 22:03:09 +08:00
2026-01-15 19:38:16 +08:00
2026-01-15 19:38:16 +08:00
2026-01-14 17:13:44 +08:00
2026-01-14 17:13:44 +08:00
2026-01-30 19:30:35 +08:00
2026-03-19 22:03:09 +08:00
2026-02-09 11:40:25 +08:00
2026-02-09 11:40:25 +08:00
2026-03-02 21:21:49 +08:00
2026-03-03 13:24:20 +08:00
2026-03-02 21:21:49 +08:00
2026-03-02 21:21:49 +08:00
2026-03-05 18:14:14 +08:00
2026-03-05 18:14:14 +08:00
2026-03-05 18:14:14 +08:00
2026-03-05 18:14:14 +08:00
2026-03-09 10:35:07 +08:00
2026-03-09 10:35:07 +08:00
2026-03-09 10:35:07 +08:00
2026-03-09 10:35:07 +08:00
2026-03-09 11:46:56 +08:00
2026-03-09 11:46:56 +08:00
2026-03-09 11:46:56 +08:00
2026-03-09 11:46:56 +08:00
2026-03-16 02:40:42 +08:00
2026-03-16 02:40:42 +08:00
2026-03-16 02:40:42 +08:00
2026-03-16 02:40:42 +08:00
2026-03-17 22:23:24 +08:00
2026-03-17 22:23:24 +08:00
2026-03-17 22:23:24 +08:00
2026-03-17 22:23:24 +08:00
2026-03-25 22:08:29 +08:00
2026-03-25 22:08:29 +08:00
2026-03-25 22:08:29 +08:00
2026-03-25 22:08:29 +08:00
2026-03-26 18:57:12 +08:00
2026-03-26 18:57:12 +08:00
2026-03-30 10:43:14 +08:00
2026-03-30 10:43:14 +08:00
2026-03-31 20:22:34 +08:00
2026-04-03 11:31:21 +08:00
2026-03-31 20:22:34 +08:00
2026-04-03 11:31:21 +08:00
2026-04-02 21:27:27 +08:00
2026-04-03 11:31:21 +08:00
2026-04-09 01:39:51 +08:00
2026-04-09 01:39:51 +08:00
2026-04-10 22:01:42 +08:00
2026-04-10 22:01:42 +08:00
2026-04-14 14:54:21 +08:00
2026-04-14 14:54:21 +08:00
2026-04-15 11:37:24 +08:00
2026-04-15 11:37:24 +08:00
2026-04-20 19:53:44 +08:00
2026-04-20 19:53:44 +08:00
2026-06-16 23:51:29 +08:00
2026-06-16 23:51:29 +08:00
2026-04-28 20:53:06 +08:00
2026-04-28 20:53:06 +08:00
2026-04-30 16:23:00 +08:00
2026-04-30 16:23:00 +08:00
2026-05-08 21:48:52 +08:00
2026-05-08 21:48:52 +08:00
2026-05-10 00:01:06 +08:00
2026-05-14 16:51:21 +08:00
2026-05-10 22:57:12 +08:00
2026-05-10 22:57:12 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-18 17:28:58 +08:00
2026-05-26 11:37:03 +08:00
2026-05-26 11:37:03 +08:00
2026-05-26 21:13:56 +08:00
2026-05-26 21:13:56 +08:00
2026-05-27 19:42:01 +08:00
2026-05-27 19:42:01 +08:00
2026-05-28 15:14:45 +08:00
2026-05-28 15:14:45 +08:00
2026-05-28 20:16:02 +08:00
2026-05-28 20:16:02 +08:00
2026-05-29 17:03:42 +08:00
2026-05-29 17:03:42 +08:00
2026-06-05 15:12:25 +08:00
2026-06-05 15:12:25 +08:00
2026-06-08 12:20:37 +08:00
2026-06-08 12:20:37 +08:00
2026-06-12 23:10:39 +08:00
2026-06-12 23:10:39 +08:00
2026-06-16 23:51:29 +08:00
2026-06-16 23:51:29 +08:00
2026-06-22 20:19:31 +08:00
2026-06-22 20:19:31 +08:00