Skip to main content
Products
Docs
Changelog
Company
Pricing
Sign in
Sign in
Start building
Start building
Sign out
Sign out
Dashboard
Docs
Search documentation
Ask AI
Dashboard
Dashboard
Sign Up
Sign Up
Select your SDK
Next.js
React
Expo
JavaScript
Express
React Router
Android
Astro
iOS
Nuxt
Vue
Chrome Extension
Fastify
Remix
TanStack React Start
Beta
JS Backend SDK
C#
Go
Java
Python
Ruby / Rails / Sinatra
Angular
Community
Elysia
Community
Hono
Community
Koa
Community
SolidJS
Community
Svelte
Community
Redwood
Community
Rust
Community
PHP
Tauri
Community
Next.js
React
Expo
JavaScript
Express
React Router
Android
Astro
iOS
Nuxt
Vue
Chrome Extension
Fastify
Remix
TanStack React Start
JS Backend SDK
C#
Go
Java
Python
Ruby / Rails / Sinatra
Angular
Elysia
Hono
Koa
SolidJS
Svelte
Redwood
Rust
PHP
Tauri
Guides
Reference
Getting started
Getting started
Authentication flows
User management
Session management
Organization management
Billing management
Account Portal
Customizing Clerk
Securing your app
Development
Hybrid rendering
Endpoints
Add React Router
Configure a consistent CRX ID
Web support
Enable offline support
Access the
Clerk
object outside of components
Rendering modes
Declarative mode
Verifying OAuth access tokens
Verifying API keys
Beta
SPA Mode
Managing environments
Clerk environment variables
Making requests
Overriding Clerk types/interfaces
Image optimization
shadcn/ui CLI
tRPC
Model Context Protocol (MCP)
Overview
Build an MCP server
Connect an MCP client
Webhooks
Integrations
Testing with Clerk
Troubleshooting
Deployment
Migrating your data
SDK Development
Upgrading Clerk
AI prompts
Clerk Dashboard
How Clerk works
Build an MCP server in your application with Clerk
Learn how to build an MCP server using Clerk's OAuth server in your application.
This page is available for the following SDKs. Select the SDK you would like to use:
Next.js
Express
Feedback
What did you think of this content?
It was helpful
It was not helpful
I have feedback
Last updated on
Jan 7, 2026
GitHub
Edit on GitHub
Support