Skip to content

SDK mcp_authenticate: カスタムスキームとコネクター向け redirectUri 対応

原文(日本語に翻訳)

SDK: mcp_authenticate がカスタムスキームの完了と claude.ai コネクター向けに redirectUri をサポートするようになりました。

原文(英語)

SDK: mcp_authenticate now supports redirectUri for custom scheme completion and claude.ai connectors

概要

Claude Code v2.1.121 では、SDK の mcp_authenticate 関数が redirectUri パラメータをサポートするようになりました。カスタム URL スキーム(例: myapp://callback)を使った OAuth フローの完了や、claude.ai コネクターを使った認証フローに対応します。デスクトップアプリや独自の認証フローを持つ MCP サーバーの認証処理がより柔軟に実装できるようになります。

基本的な使い方

typescript
import { mcp_authenticate } from '@anthropic-ai/claude-code';

// カスタムスキームの redirectUri を指定して MCP 認証を実行
const result = await mcp_authenticate({
  serverId: 'my-oauth-server',
  redirectUri: 'myapp://oauth/callback'  // カスタムスキーム
});

実践例

デスクトップアプリでのカスタムスキーム認証

typescript
import { mcp_authenticate } from '@anthropic-ai/claude-code';

// Electron アプリなどで登録したカスタムスキームへのリダイレクト
async function authenticateMCPServer() {
  try {
    const auth = await mcp_authenticate({
      serverId: 'my-api-server',
      redirectUri: 'electron://claude-mcp/callback'
    });
    
    console.log('Authentication successful:', auth.token);
  } catch (error) {
    console.error('Authentication failed:', error);
  }
}

claude.ai コネクター向け認証

typescript
// claude.ai コネクターのカスタム認証フロー
const auth = await mcp_authenticate({
  serverId: 'claude-ai-connector',
  redirectUri: 'https://claude.ai/mcp/callback',  // claude.ai コネクター用
  scopes: ['read', 'write']
});

OAuth フローのカスタマイズ

typescript
// カスタムスキームで認証完了を受け取るネイティブアプリ
const auth = await mcp_authenticate({
  serverId: 'enterprise-sso',
  redirectUri: 'com.mycompany.app://auth',
  additionalParams: {
    prompt: 'consent',
    access_type: 'offline'
  }
});

注意点

  • redirectUri は OAuth サーバーに登録されているリダイレクト URI と一致している必要があります
  • カスタムスキーム(myapp://)を使う場合は、OS レベルでスキームの登録が必要です
  • この機能は Claude Code SDK を使って MCP サーバーの認証フローを実装する場合に適用されます
  • claude.ai コネクターとの認証では redirectUri に claude.ai のドメインを使用してください

関連情報