Clerk MCPサーバーの使い方 — Claude Codeとclaude.aiへの接続
Clerk公式のMCPサーバーをClaude Codeとclaude.aiに接続し、認証実装のコード例をClaudeから直接引き出す設定手順です。
Clerk MCPサーバーとは
Clerk MCPサーバーは、Clerkが公式に提供するリモートMCP(Model Context Protocol)サーバーです。Claude・Cursor・GitHub CopilotなどのAIエージェントに、Clerkの実装パターンとSDKスニペットを直接渡します。
MCPは、AIエージェントが外部サービスのツールやデータへ接続するための標準プロトコルです。Clerk MCPサーバーを接続すると、Claudeは次の3種類の情報にアクセスできるようになります。
- SDKスニペット: Clerkの主要機能に対応した、そのまま使えるコードパターン
- 実装ガイド: 認証フローやOrganizations機能などのベストプラクティス
- フレームワーク別の例: Next.js・Reactなど対応フレームワークに最適化されたコード例
他のMCPサーバーの多くは、データベースやインフラなど稼働中のシステムに接続して操作します。一方でClerk MCPサーバーが渡すのは、実行中のClerkアカウントへのアクセスではなく、常に最新のSDKコード例と実装知識です。認証フローをゼロから書かせるのではなく、Clerk公式の実装パターンをそのままコードに反映させたいときに向いています。
Clerkはこの機能を公式にベータとして提供しており、機能や挙動が今後変わる可能性があると案内しています。
Claude Codeに接続する
最も速い接続方法は、Clerk CLIを使う方法です。マシン上にインストール済みのAIクライアントを自動検出し、Clerk MCPサーバーを一括登録します。
clerk mcp installこのコマンドは、選択したクライアントのユーザーグローバル設定にサーバーを追加します。追加後はクライアントを再起動して接続を有効にします。特定のクライアントだけを対象にしたいときや、登録状況を確認したいときは次のバリエーションが使えます。
# Claude Codeとcursorだけに登録
clerk mcp install --client claude --client cursor
# 検出した全クライアントに登録
clerk mcp install --all
# 登録済みのClerk MCPエントリを一覧表示
clerk mcp list
# 登録を削除
clerk mcp uninstall
# サーバーへの疎通を確認
clerk doctorClerk CLIを使わず手動で設定する場合は、Claude Codeの claude mcp add コマンドでHTTPサーバーとして登録します。
claude mcp add clerk --transport http https://mcp.clerk.com/mcpこのコマンドは既定でローカルスコープに登録され、実行したプロジェクトでのみ有効になります。登録後、Claude Codeのセッション内で /mcp を実行すると接続状態を確認できます。
claude mcp list を実行すると、各サーバーの健全性が表示されます。✔ Connectedならすぐに使える状態、! Needs authenticationなら認証待ち、✘ Failed to connectなら接続自体に失敗している状態です。Clerk MCPサーバーは認証ヘッダーなしのシンプルな接続なので、多くの場合はそのまま✔ Connectedになります。
claude.aiに接続する
claude.aiのWeb版・デスクトップ版でも同じClerk MCPサーバーに接続できます。サイドバーの設定からIntegrationsまで下にスクロールし、「Add more」を選びます。
プロンプトが表示されたら、次の2項目を入力します。
| 項目 | 入力値 |
|---|---|
| Integration name | 入力値Clerk |
| Integration URL | 入力値https://mcp.clerk.com/mcp |
登録後は、新しいチャットを開くたびにツールを有効化する操作が必要です。claude.aiで追加したMCPサーバーはconnectorと呼ばれ、claude.ai経由でログインしたClaude Codeセッションにも自動的に反映されます。ただしANTHROPIC_API_KEYを使った認証など、claude.aiアカウントログイン以外の方式でClaude Codeを使っている場合は反映されません。
Claude Desktop・他クライアントへの接続
Claude Desktopでは設定 → Developer → Edit Configからclaude_desktop_config.jsonを開きます。次の設定を追加し、アプリを再起動します。
{
"mcpServers": {
"clerk": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.clerk.com/mcp"]
}
}
}Codex・Cursor・VSCode・Windsurf・Zedなど、Clerk公式ドキュメントはStreamable HTTPに対応する主要クライアントごとの設定手順も明記しています。その他のクライアントでも、エンドポイントhttps://mcp.clerk.com/mcpをStreamable HTTPで指定すれば接続できます。
使えるツールとスニペットバンドル
Clerk MCPサーバーが公開するツールは2つです。
| ツール | できること |
|---|---|
clerk_sdk_snippet | できること特定機能のSDKコードスニペットとパターンを取得 |
list_clerk_sdk_snippets | できること利用可能な全スニペットとバンドルを一覧取得 |
接続後は、Claudeに次のような質問を投げるだけでコード例が返ってきます。
- 「ClerkのuseUserフックの使い方を教えて」
- 「Clerk OrganizationsでB2B SaaSを構築する手順を見せて」
- 「Clerkでウェイトリストを実装する方法は」
- 「Next.jsでClerkを使ってルートを保護する最善の方法は」
まとまった実装が必要なときは、複数機能をまとめたスニペットバンドルを指定できます。
| バンドル名 | 内容 |
|---|---|
b2b-saas | 内容Organizations・課金・ロールベースアクセスを含むB2B SaaS一式 |
waitlist | 内容ウェイトリストと早期アクセスの実装 |
auth-basics | 内容認証まわりの基本フック |
custom-flows | 内容サインイン・サインアップのカスタムフロー構築 |
organizations | 内容マルチテナント向けの組織管理 |
server-side | 内容サーバーサイド認証パターン |
実装フローの例 — B2B SaaSの認証を組み立てる
Next.jsアプリに組織単位のログインを追加する場面を考えます。ゼロから実装を指示すると、Claudeは学習データにある一般的なパターンからコードを組み立てるため、Clerkの最新APIと食い違うコードを書くことがあります。
Clerk MCPサーバーを接続した状態なら、「Clerk Organizationsを使ったB2B SaaSのログイン画面を作って」と依頼するだけで済みます。Claudeはclerk_sdk_snippetツールでb2b-saasバンドルを取得してから実装に入ります。取得されるのはOrganizations・課金・ロールベースアクセスまで含む一式のパターンです。個別の機能を都度調べ直す手間が減ります。
既存のClerk実装を拡張するときも同様です。「今のサインインフローにウェイトリストを追加したい」と伝えれば、waitlistバンドルのスニペットを起点にコードを提案してくれます。ドキュメントを開いてAPIの引数を確認する作業を、チャット内の質問に置き換えられる点が、通常のMCP未接続の状態との一番の違いです。
スコープをどう選ぶか
Claude Code側の claude mcp add は3つのスコープをサポートし、Clerk MCPサーバーもこの仕組みに従って登録されます。個人利用かチーム共有かで選ぶスコープが変わります。
| スコープ | 有効範囲 | チーム共有 | 保存先 |
|---|---|---|---|
| local(既定) | 有効範囲追加したプロジェクトのみ | チーム共有されない | 保存先~/.claude.json |
| project | 有効範囲追加したプロジェクトのみ | チーム共有される(バージョン管理経由) | 保存先.mcp.json |
| user | 有効範囲自分の全プロジェクト | チーム共有されない | 保存先~/.claude.json |
チームでClerkの実装パターンを共有したい場合は、--scope projectを付けて .mcp.json に書き出し、リポジトリにコミットします。
claude mcp add clerk --transport http --scope project https://mcp.clerk.com/mcp複数の個人プロジェクトを横断してClerkの実装知識を使いたいだけなら、--scope userが向いています。プロジェクト単位の一回限りの検証には既定のlocalスコープで十分です。
他のMCPサーバーとの違い
MySQLやFly.ioなどのMCPサーバーは、稼働中のデータベースやインフラを操作対象にします。設定さえ済ませれば、Claudeはスキーマの確認やデプロイの実行までその場で行えます。
Clerk MCPサーバーが公開する2つのツールには、スキーマ変更やデプロイに相当する操作系コマンドがありません。できるのはコード取得だけなので、誤ってアカウント設定を書き換えてしまう心配をせずに導入できます。運用系のMCPサーバーとは求められる権限管理の水準も違います。
同じプロジェクトに両方の系統のMCPサーバーを併用することもできます。Clerk MCPサーバーで認証コードを組み立て、DB系のMCPサーバーでスキーマを確認する、という役割分担です。
同じMCPサーバー経由の設定でも用途は幅広いです。MySQL MCPサーバーやFly.ioのMCPサーバーは、運用中のインフラを直接操作する側の例です。claude mcp addの構文やスコープの詳細はClaude Code MCP設定ガイドにまとめています。
よくあるつまずき
Internal server errorが出て接続できない
ネットワークまたはトランスポートの問題であることが多いです。MCPサーバーを一度切断して再接続し、使用しているクライアントがStreamable HTTPトランスポートに対応しているか確認します。
SSE接続を試して失敗する
Clerk MCPサーバーはServer-Sent Events(SSE)に対応していません。対応するのはStreamable HTTPのみで、エンドポイントはhttps://mcp.clerk.com/mcpです。SSE専用の設定手順をコピーしてきた場合は、HTTPトランスポート向けの設定に書き換えます。
ベータ機能特有の挙動変化
Clerk MCPサーバーは現在もベータとして提供されているため、ツールの入出力やスニペットバンドルの構成が今後変わる可能性があります。既存のプロンプトやワークフローが動かなくなったときは、まずclerk mcp listや/mcpでサーバーの接続状態を確認します。
まとめ
Clerk MCPサーバーは数分で接続できます。Clerk CLIの clerk mcp install か、Claude Codeの claude mcp add --transport http のいずれかを使います。claude.aiではSettings画面からIntegration URLを1つ登録するだけです。
Clerk公式のコード例をそのままコーディングに反映させたいチームに向いた仕組みです。チームで共有するならプロジェクトスコープ、個人の複数プロジェクトで使うならユーザースコープを選びます。
ベータ機能である以上、ツールの構成やレスポンス形式は今後の更新で変わる余地があります。導入後はclerk mcp listで登録状況を定期的に確認しておくと安心です。