From afcc55d7d84be65d6b13c6fa9d75028f1cf3558e Mon Sep 17 00:00:00 2001 From: Ayaan Gazali Date: Mon, 10 Aug 2026 12:07:10 -0700 Subject: [PATCH] docs: repoint dead OAuth example links and drop a leaked docs preview domain (#2211) The skills auth references pointed at libraries/typescript/packages/mcp-use/examples/server/oauth/, which is the deleted v1 package path. Those examples live at libraries/typescript/packages/server/examples/auth/ in v2. README.md and packages/server/README.md both linked the self-hosting guide to a Mintlify preview deployment, mcpuse-codex-v1-v2-docs-split.mintlify.site, which 404s. The server README ships with the published package. Reported in #2210. --- README.md | 2 +- libraries/typescript/packages/server/README.md | 2 +- skills/chatgpt-app-builder/references/authentication/auth0.md | 2 +- .../references/authentication/better-auth.md | 4 ++-- skills/chatgpt-app-builder/references/authentication/clerk.md | 2 +- .../chatgpt-app-builder/references/authentication/keycloak.md | 2 +- .../chatgpt-app-builder/references/authentication/supabase.md | 4 ++-- .../chatgpt-app-builder/references/authentication/workos.md | 2 +- skills/mcp-builder/references/authentication/auth0.md | 2 +- skills/mcp-builder/references/authentication/better-auth.md | 4 ++-- skills/mcp-builder/references/authentication/clerk.md | 2 +- skills/mcp-builder/references/authentication/keycloak.md | 2 +- skills/mcp-builder/references/authentication/supabase.md | 4 ++-- skills/mcp-builder/references/authentication/workos.md | 2 +- 14 files changed, 18 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 005785759..f700bf583 100644 --- a/README.md +++ b/README.md @@ -269,7 +269,7 @@ Ship to [Manufact](https://manufact.com) and get observability, analytics, evals npm run deploy ``` -Prefer to run it yourself? Follow the [self-hosting guide →](https://mcpuse-codex-v1-v2-docs-split.mintlify.site/v2/typescript/server/deployment/runtime-patterns). +Prefer to run it yourself? Follow the [self-hosting guide →](https://docs.mcp-use.com/typescript/server/deployment/runtime-patterns). ## How mcp-use compares diff --git a/libraries/typescript/packages/server/README.md b/libraries/typescript/packages/server/README.md index 005785759..f700bf583 100644 --- a/libraries/typescript/packages/server/README.md +++ b/libraries/typescript/packages/server/README.md @@ -269,7 +269,7 @@ Ship to [Manufact](https://manufact.com) and get observability, analytics, evals npm run deploy ``` -Prefer to run it yourself? Follow the [self-hosting guide →](https://mcpuse-codex-v1-v2-docs-split.mintlify.site/v2/typescript/server/deployment/runtime-patterns). +Prefer to run it yourself? Follow the [self-hosting guide →](https://docs.mcp-use.com/typescript/server/deployment/runtime-patterns). ## How mcp-use compares diff --git a/skills/chatgpt-app-builder/references/authentication/auth0.md b/skills/chatgpt-app-builder/references/authentication/auth0.md index 5fda6385d..e8863c658 100644 --- a/skills/chatgpt-app-builder/references/authentication/auth0.md +++ b/skills/chatgpt-app-builder/references/authentication/auth0.md @@ -5,7 +5,7 @@ Setting up OAuth with Auth0. Two modes depending on whether you have access to A - **DCR (built-in)** → use `oauthAuth0Provider`. Requires Auth0's Early Access program. - **OAuth proxy** → use `oauthProxy` + `jwksVerifier` with a standard Auth0 Regular Web App. No Early Access required. -**Learn more:** [Auth0 MCP Authorization Guide](https://auth0.com/ai/docs/mcp/get-started/authorization-for-your-mcp-server) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-auth0-template) · [Runnable DCR example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0) · [Runnable proxy example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0-proxy) +**Learn more:** [Auth0 MCP Authorization Guide](https://auth0.com/ai/docs/mcp/get-started/authorization-for-your-mcp-server) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-auth0-template) · [Runnable DCR example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/auth0) · [Runnable proxy example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0-proxy) --- diff --git a/skills/chatgpt-app-builder/references/authentication/better-auth.md b/skills/chatgpt-app-builder/references/authentication/better-auth.md index 8bf4dcc64..b935e1d7e 100644 --- a/skills/chatgpt-app-builder/references/authentication/better-auth.md +++ b/skills/chatgpt-app-builder/references/authentication/better-auth.md @@ -2,7 +2,7 @@ Setting up a self-hosted OAuth 2.1 authorization server with Better Auth. -**Learn more:** [Better Auth OAuth Provider Plugin](https://better-auth.com/docs/plugins/oauth-provider) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-better-auth-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/better-auth) +**Learn more:** [Better Auth OAuth Provider Plugin](https://better-auth.com/docs/plugins/oauth-provider) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-better-auth-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/better-auth) > Covers the `@better-auth/oauth-provider` plugin. The older Better Auth MCP plugin is deprecated — for legacy users, see the [mcp-use adapter](https://better-auth.com/docs/plugins/mcp#framework-adapters). @@ -129,7 +129,7 @@ Better Auth requires a `/sign-in` page and a `/consent` page mounted on the Hono - **Consent page:** POST to `/api/auth/oauth2/consent` with `{ accept: boolean, oauth_query: window.location.search.slice(1) }`. - Both must use `credentials: 'include'` on fetch calls. -See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/better-auth) for complete HTML/JS. +See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/better-auth) for complete HTML/JS. --- diff --git a/skills/chatgpt-app-builder/references/authentication/clerk.md b/skills/chatgpt-app-builder/references/authentication/clerk.md index 942f30ab0..6ecd6ff34 100644 --- a/skills/chatgpt-app-builder/references/authentication/clerk.md +++ b/skills/chatgpt-app-builder/references/authentication/clerk.md @@ -2,7 +2,7 @@ Setting up OAuth with Clerk. DCR mode only — MCP clients register themselves directly with Clerk via Dynamic Client Registration; the MCP server only verifies the resulting JWTs against Clerk's JWKS. -**Learn more:** [Clerk OAuth Docs](https://clerk.com/docs/guides/configure/auth-strategies/oauth/how-clerk-implements-oauth) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/clerk) +**Learn more:** [Clerk OAuth Docs](https://clerk.com/docs/guides/configure/auth-strategies/oauth/how-clerk-implements-oauth) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/clerk) --- diff --git a/skills/chatgpt-app-builder/references/authentication/keycloak.md b/skills/chatgpt-app-builder/references/authentication/keycloak.md index 18c4ad0c6..4854f4bb5 100644 --- a/skills/chatgpt-app-builder/references/authentication/keycloak.md +++ b/skills/chatgpt-app-builder/references/authentication/keycloak.md @@ -2,7 +2,7 @@ Setting up OAuth with Keycloak. Keycloak exposes full OAuth 2.1 + OIDC endpoints on every realm, including native [Dynamic Client Registration](https://www.keycloak.org/securing-apps/client-registration) (RFC 7591). MCP clients discover Keycloak via `.well-known` metadata, register themselves, complete a PKCE flow, and send the access token as a bearer on MCP requests — **the MCP server only verifies the JWT against Keycloak's JWKS**. -**Learn more:** [Keycloak Documentation](https://www.keycloak.org/documentation) · [Keycloak DCR](https://www.keycloak.org/securing-apps/client-registration) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-keycloak-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/keycloak) +**Learn more:** [Keycloak Documentation](https://www.keycloak.org/documentation) · [Keycloak DCR](https://www.keycloak.org/securing-apps/client-registration) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-keycloak-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/keycloak) --- diff --git a/skills/chatgpt-app-builder/references/authentication/supabase.md b/skills/chatgpt-app-builder/references/authentication/supabase.md index 68341edbe..d9b70af00 100644 --- a/skills/chatgpt-app-builder/references/authentication/supabase.md +++ b/skills/chatgpt-app-builder/references/authentication/supabase.md @@ -4,7 +4,7 @@ Setting up OAuth with Supabase's OAuth 2.1 server. Supabase hosts `/authorize`, **You host the consent UI.** Supabase redirects the browser to a URL you configure, and your route uses the Supabase JS SDK to load authorization details, render sign-in + consent, and submit the decision back to Supabase. mcp-use is not involved in that step — follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started). -**Learn more:** [Supabase OAuth Server — MCP Authentication](https://supabase.com/docs/guides/auth/oauth-server/mcp-authentication) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-supabase-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/supabase) +**Learn more:** [Supabase OAuth Server — MCP Authentication](https://supabase.com/docs/guides/auth/oauth-server/mcp-authentication) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-supabase-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/supabase) > This targets Supabase's **OAuth 2.1 server** — a different feature from Supabase Auth's social logins. Enable it explicitly in the dashboard under **Authentication → OAuth Server**. @@ -124,7 +124,7 @@ Supabase redirects the browser to the consent screen URL you configured. Your ro 3. Render approve/deny UI 4. Submit the decision back to Supabase and redirect to the resulting URL -Follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started) for the canonical implementation. See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/supabase) for a wired-up version (look at `auth-routes.ts`). +Follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started) for the canonical implementation. See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/supabase) for a wired-up version (look at `auth-routes.ts`). --- diff --git a/skills/chatgpt-app-builder/references/authentication/workos.md b/skills/chatgpt-app-builder/references/authentication/workos.md index 6720491b0..dbe3432fb 100644 --- a/skills/chatgpt-app-builder/references/authentication/workos.md +++ b/skills/chatgpt-app-builder/references/authentication/workos.md @@ -2,7 +2,7 @@ Setting up OAuth with WorkOS AuthKit. DCR mode only — MCP clients register themselves directly with WorkOS; the MCP server just verifies the resulting tokens. -**Learn more:** [WorkOS AuthKit MCP docs](https://workos.com/docs/authkit/mcp) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-workos-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/workos) +**Learn more:** [WorkOS AuthKit MCP docs](https://workos.com/docs/authkit/mcp) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-workos-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/workos) --- diff --git a/skills/mcp-builder/references/authentication/auth0.md b/skills/mcp-builder/references/authentication/auth0.md index 5fda6385d..e8863c658 100644 --- a/skills/mcp-builder/references/authentication/auth0.md +++ b/skills/mcp-builder/references/authentication/auth0.md @@ -5,7 +5,7 @@ Setting up OAuth with Auth0. Two modes depending on whether you have access to A - **DCR (built-in)** → use `oauthAuth0Provider`. Requires Auth0's Early Access program. - **OAuth proxy** → use `oauthProxy` + `jwksVerifier` with a standard Auth0 Regular Web App. No Early Access required. -**Learn more:** [Auth0 MCP Authorization Guide](https://auth0.com/ai/docs/mcp/get-started/authorization-for-your-mcp-server) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-auth0-template) · [Runnable DCR example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0) · [Runnable proxy example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0-proxy) +**Learn more:** [Auth0 MCP Authorization Guide](https://auth0.com/ai/docs/mcp/get-started/authorization-for-your-mcp-server) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-auth0-template) · [Runnable DCR example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/auth0) · [Runnable proxy example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/auth0-proxy) --- diff --git a/skills/mcp-builder/references/authentication/better-auth.md b/skills/mcp-builder/references/authentication/better-auth.md index 8bf4dcc64..b935e1d7e 100644 --- a/skills/mcp-builder/references/authentication/better-auth.md +++ b/skills/mcp-builder/references/authentication/better-auth.md @@ -2,7 +2,7 @@ Setting up a self-hosted OAuth 2.1 authorization server with Better Auth. -**Learn more:** [Better Auth OAuth Provider Plugin](https://better-auth.com/docs/plugins/oauth-provider) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-better-auth-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/better-auth) +**Learn more:** [Better Auth OAuth Provider Plugin](https://better-auth.com/docs/plugins/oauth-provider) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-better-auth-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/better-auth) > Covers the `@better-auth/oauth-provider` plugin. The older Better Auth MCP plugin is deprecated — for legacy users, see the [mcp-use adapter](https://better-auth.com/docs/plugins/mcp#framework-adapters). @@ -129,7 +129,7 @@ Better Auth requires a `/sign-in` page and a `/consent` page mounted on the Hono - **Consent page:** POST to `/api/auth/oauth2/consent` with `{ accept: boolean, oauth_query: window.location.search.slice(1) }`. - Both must use `credentials: 'include'` on fetch calls. -See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/better-auth) for complete HTML/JS. +See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/better-auth) for complete HTML/JS. --- diff --git a/skills/mcp-builder/references/authentication/clerk.md b/skills/mcp-builder/references/authentication/clerk.md index 942f30ab0..6ecd6ff34 100644 --- a/skills/mcp-builder/references/authentication/clerk.md +++ b/skills/mcp-builder/references/authentication/clerk.md @@ -2,7 +2,7 @@ Setting up OAuth with Clerk. DCR mode only — MCP clients register themselves directly with Clerk via Dynamic Client Registration; the MCP server only verifies the resulting JWTs against Clerk's JWKS. -**Learn more:** [Clerk OAuth Docs](https://clerk.com/docs/guides/configure/auth-strategies/oauth/how-clerk-implements-oauth) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/clerk) +**Learn more:** [Clerk OAuth Docs](https://clerk.com/docs/guides/configure/auth-strategies/oauth/how-clerk-implements-oauth) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/clerk) --- diff --git a/skills/mcp-builder/references/authentication/keycloak.md b/skills/mcp-builder/references/authentication/keycloak.md index 18c4ad0c6..4854f4bb5 100644 --- a/skills/mcp-builder/references/authentication/keycloak.md +++ b/skills/mcp-builder/references/authentication/keycloak.md @@ -2,7 +2,7 @@ Setting up OAuth with Keycloak. Keycloak exposes full OAuth 2.1 + OIDC endpoints on every realm, including native [Dynamic Client Registration](https://www.keycloak.org/securing-apps/client-registration) (RFC 7591). MCP clients discover Keycloak via `.well-known` metadata, register themselves, complete a PKCE flow, and send the access token as a bearer on MCP requests — **the MCP server only verifies the JWT against Keycloak's JWKS**. -**Learn more:** [Keycloak Documentation](https://www.keycloak.org/documentation) · [Keycloak DCR](https://www.keycloak.org/securing-apps/client-registration) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-keycloak-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/keycloak) +**Learn more:** [Keycloak Documentation](https://www.keycloak.org/documentation) · [Keycloak DCR](https://www.keycloak.org/securing-apps/client-registration) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-keycloak-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/keycloak) --- diff --git a/skills/mcp-builder/references/authentication/supabase.md b/skills/mcp-builder/references/authentication/supabase.md index 68341edbe..d9b70af00 100644 --- a/skills/mcp-builder/references/authentication/supabase.md +++ b/skills/mcp-builder/references/authentication/supabase.md @@ -4,7 +4,7 @@ Setting up OAuth with Supabase's OAuth 2.1 server. Supabase hosts `/authorize`, **You host the consent UI.** Supabase redirects the browser to a URL you configure, and your route uses the Supabase JS SDK to load authorization details, render sign-in + consent, and submit the decision back to Supabase. mcp-use is not involved in that step — follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started). -**Learn more:** [Supabase OAuth Server — MCP Authentication](https://supabase.com/docs/guides/auth/oauth-server/mcp-authentication) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-supabase-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/supabase) +**Learn more:** [Supabase OAuth Server — MCP Authentication](https://supabase.com/docs/guides/auth/oauth-server/mcp-authentication) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-supabase-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/supabase) > This targets Supabase's **OAuth 2.1 server** — a different feature from Supabase Auth's social logins. Enable it explicitly in the dashboard under **Authentication → OAuth Server**. @@ -124,7 +124,7 @@ Supabase redirects the browser to the consent screen URL you configured. Your ro 3. Render approve/deny UI 4. Submit the decision back to Supabase and redirect to the resulting URL -Follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started) for the canonical implementation. See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/supabase) for a wired-up version (look at `auth-routes.ts`). +Follow Supabase's [OAuth Server — Getting Started guide](https://supabase.com/docs/guides/auth/oauth-server/getting-started) for the canonical implementation. See the [runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/supabase) for a wired-up version (look at `auth-routes.ts`). --- diff --git a/skills/mcp-builder/references/authentication/workos.md b/skills/mcp-builder/references/authentication/workos.md index 6720491b0..dbe3432fb 100644 --- a/skills/mcp-builder/references/authentication/workos.md +++ b/skills/mcp-builder/references/authentication/workos.md @@ -2,7 +2,7 @@ Setting up OAuth with WorkOS AuthKit. DCR mode only — MCP clients register themselves directly with WorkOS; the MCP server just verifies the resulting tokens. -**Learn more:** [WorkOS AuthKit MCP docs](https://workos.com/docs/authkit/mcp) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-workos-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/mcp-use/examples/server/oauth/workos) +**Learn more:** [WorkOS AuthKit MCP docs](https://workos.com/docs/authkit/mcp) · [Standalone starter template](https://github.com/mcp-use/mcp-oauth-workos-template) · [Runnable example](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/server/examples/auth/workos) ---