Okta MCP サーバー
この MCP サーバーにより、Claude は Okta のユーザー管理システムと対話できるようになり、オンボーディングの自動化とともに包括的なユーザーおよびグループ管理機能が提供されます。
前提条件
- Node.js (v16 以上)
- クロードデスクトップアプリ
- Okta開発者アカウント
- Oktaからの管理者APIトークン
セットアップ手順
1. Okta開発者アカウントを作成する
- Okta開発者コンソールへアクセス
- 新しいアカウントを作成するか、既存のアカウントにサインインしてください
- Okta ドメインをメモします (例:
dev-123456.okta.com
)
2. APIトークンを作成する
- Okta開発者コンソールで、「セキュリティ」>「API」>「トークン」に移動します。
- 「トークンを作成」をクリックします
- トークンに意味のある名前を付けます(例:「MCP サーバー トークン」)
- トークンの値をコピーします(再度表示することはできません)
3. プロジェクトの初期設定
依存関係をインストールします:
4. Claudeデスクトップを設定する
Claude Desktop 構成ファイルを開きます。
MacOSの場合:
Windowsの場合:
構成を追加または更新します。
ファイルを保存し、Claude Desktop を再起動します。
利用可能なツール
サーバーは次のツールを提供します。
ユーザー管理
get_user
Okta から以下の詳細なユーザー情報を取得します:
- ユーザー詳細(ID、ステータス)
- アカウントの日付(作成、有効化、最終ログインなど)
- 個人情報(氏名、メールアドレス)
- 雇用の詳細
- 連絡先
- 住所
- 設定
リストユーザー
オプションのフィルタリングとページ区切りを使用して、Okta のユーザーを一覧表示します。
- SCIM フィルター式をサポートします (例: 'profile.firstName eq "John"')
- 複数のフィールドにわたる自由形式のテキスト検索
- 並べ替えオプション(ステータス、作成日など)
- カスタマイズ可能な制限を備えたページ区切りのサポート
アクティブ化ユーザー
Okta でユーザーをアクティブ化します。
- アクティベーションメールを送信するオプション
- ユーザーのステータスをアクティブに更新します
一時停止中のユーザー
Oktaでユーザーを停止する
ユーザーの一時停止解除
Okta で以前に停止されたユーザーの停止を解除します
ユーザー削除
Okta からユーザーを削除します (注: 最初にユーザーを非アクティブ化する必要があります)
get_user_last_location
Okta システム ログからユーザーの最後の既知の位置情報とログイン情報を取得します。
グループマネジメント
リストグループ
オプションのフィルタリングとページ区切りを使用して、Okta のユーザー グループを一覧表示します。
- グループのフィルター式(例:'type eq "OKTA_GROUP"')
- グループフィールド全体での自由形式のテキスト検索
- 並べ替えオプション(名前、タイプなど)
- カスタマイズ可能な制限を備えたページ区切りのサポート
グループを作成する
Okta に名前とオプションの説明を付けて新しいグループを作成します
get_group
特定のグループに関する詳細情報を取得します
グループを削除
Oktaからグループを削除します
ユーザーをグループに割り当てる
Oktaのグループにユーザーを割り当てます
グループからユーザーを削除する
Oktaのグループからユーザーを削除します
グループユーザーのリスト
ページ区切りのサポートにより、特定のグループ内のすべてのユーザーを一覧表示します。
オンボーディング自動化(実験的)
**注:**オンボーディング自動化ツールは試験段階であり、OktaのAPI制約に基づいて変更または制限される可能性があります。本番環境では慎重にご使用ください。
一括ユーザーインポート
CSV 文字列から複数のユーザーをインポートします。
- CSVデータに基づいてユーザーアカウントを作成します
- ユーザーのオプションアクティベーション
- オプションの電子メール通知
- デフォルトグループへの割り当て
ユーザーをグループに割り当てる
属性マッピングに基づいて複数のユーザーをグループに割り当てます。
- ユーザー属性(部門、役職など)を特定のグループにマッピングします
- 属性に基づいたユーザーの一括割り当て
プロビジョニングアプリケーション
複数のユーザーに対してアプリケーション アクセスをプロビジョニングします。
- ユーザーをアプリケーションに割り当てる
- 一括プロビジョニングをサポート
オンボーディングワークフローの実行
CSV データから複数のユーザーに対する完全なオンボーディング ワークフローを実行します。
- CSVからのユーザーインポート
- 自動起動
- 属性に基づくグループ割り当て
- アプリケーションのプロビジョニング
- ウェルカムメールの設定
クロードでの使用例
セットアップ後は、次のようなコマンドを使用できます。
ユーザー管理
- 「ユーザーID XXXX のユーザーの詳細を表示」
- 「ユーザーjohn.doe@company.comのステータスはどうなっていますか?」
- 「ユーザーjane.smith@organization.comの最終ログインはいつですか?」
- 「マーケティング部門のすべてのユーザーを一覧表示する」
- 「先月作成されたユーザーを検索する」
- 「ID XXXXのユーザーを有効化する」
- 「ID XXXXのユーザーを停止する」
- 「ID XXXXの非アクティブ化されたユーザーを削除する」
- 「ユーザー XXXX は最後にどこからログインしましたか?」
グループマネジメント
- 「Okta 組織内のすべてのグループを表示」
- 「「admin」という単語を含むグループを一覧表示する」
- 「「マーケティングチーム」という新しいグループを作成する」
- 「ID XXXXのグループの詳細を取得する」
- 「ID XXXXのグループを削除」
- 「ユーザー XXXX をグループ YYYY に追加する」
- 「ユーザー XXXX をグループ YYYY から削除する」
- 「「財務」グループ内のすべてのユーザーを一覧表示する」
オンボーディングの自動化
- 「CSVデータからこれらのユーザーをインポートします: [CSVコンテンツ]」
- 「部門属性に基づいてユーザーをグループに割り当てる」
- 「これらの 5 人のユーザーにアプリケーション アクセスをプロビジョニングする」
- 「これらの新入社員に対して完全なオンボーディングワークフローを実行します: [CSV コンテンツ]」
エラー処理
サーバーには、次の堅牢なエラー処理機能が含まれています。
- ユーザーまたはグループが見つかりません (404 エラー)
- API認証の問題
- ユーザープロファイルが見つからないか無効です
- 一般的なAPIエラー
- CSV解析の問題
- ユーザー属性マッピングの失敗
- アプリケーションプロビジョニングエラー
トラブルシューティング
よくある問題
Claude に表示されないツール:
- Claude Desktop のログを確認します:
tail -f ~/Library/Logs/Claude/mcp*.log
- すべての環境変数が正しく設定されていることを確認する
- index.jsへのパスが絶対パスかつ正しいことを確認してください
認証エラー:
- APIトークンが有効であることを確認してください
- OKTA_ORG_URL に https:// を含む完全な URL が含まれているかどうかを確認します。
- Oktaドメインが正しいことを確認する
サーバー接続の問題:
- サーバーが正常に構築されたかどうかを確認する
- build/index.js のファイル権限を確認します(755 である必要があります)
- サーバーを直接実行してみます:
node /path/to/build/index.js
ログの表示
サーバー ログを表示するには:
MacOS/Linuxの場合:
Windowsの場合:
環境変数
環境変数エラーが発生した場合は、以下を確認してください。
OKTA_ORG_URL
: 完全な URL である必要があります (例: " https://dev-123456.okta.com ")OKTA_API_TOKEN
: 有効なAPIトークンである必要があります
セキュリティに関する考慮事項
- APIトークンを安全に保つ
- バージョン管理に資格情報をコミットしない
- 機密データには環境変数を使用する
- APIトークンを定期的にローテーションする
- Okta管理コンソールでAPIの使用状況を監視する
- API呼び出しのレート制限を実装する
- APIトークンに必要な最小限の権限を使用する
種類
サーバーには、Okta ユーザーおよびグループ データ用の TypeScript インターフェースが含まれています。
オンボーディング用のCSV形式
一括インポートまたはオンボーディング ワークフロー ツールを使用する場合、CSV には次のヘッダーを含める必要があります。
firstName
(必須)lastName
(必須)email
(必須)department
(オプション)title
(オプション)mobilePhone
(オプション)
例:
ライセンス
MIT ライセンス - 詳細については LICENSE ファイルを参照してください。
サポート
問題が発生した場合:
- 上記のトラブルシューティングセクションを確認してください
- Claude Desktopのログを確認する
- サーバーのエラー出力を調べる
- Oktaの開発者向けドキュメントを確認する
注: PR を歓迎します!
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Claude が Okta のユーザー管理システムと対話できるようにし、ユーザーの詳細を取得したり、フィルタリング オプションを使用してユーザーを一覧表示したり、ユーザー グループを管理したりする機能を提供します。
Related MCP Servers
- AsecurityAlicenseAqualityEnables Claude to interact with Ethereum nodes, allowing users to check ENS token balances, view smart contract code, and decode transactions through natural language.Last updated -51JavaScriptMIT License
- -securityAlicense-qualityEnhances Claude's capabilities by providing access to website analytics data from Umami, enabling analysis of user behavior, website performance tracking, and data-driven insights generation.Last updated -4PythonMIT License
- AsecurityFlicenseAqualityA server that enables Claude Desktop users to access the Claude API directly, allowing them to bypass Professional Plan limitations and use advanced features like custom system prompts and conversation management.Last updated -15Python
- -securityFlicense-qualityLets you use Claude Desktop to interact with your task management data in Things app, enabling you to create tasks, analyze projects, manage priorities, and implement productivity workflows through natural language.Last updated -12Python