mcpField
A
Authentik MCP Server

Authentik MCP Server

ローカル
github.com/cdmx-inセキュリティ1869 週間前に更新

Authentik MCP Server について

Authentik API と連携する MCP サーバー群です。Python と Node.js の実装があり、管理向けのフル機能版と読み取り専用の診断版を提供します。

主な機能

  1. 01Python と Node.js の実装
  2. 02ユーザー・グループ・アプリの CRUD
  3. 03イベントとシステム状態の監視
  4. 04診断版の読み取り専用アクセス

活用シーン

  1. 01ユーザー、グループ、アプリの作成と更新
  2. 02認証イベントとシステム状態の確認
  3. 03アプリ、フロー、アクセス問題の調査

MCP 対応

MCP クライアント向けに Authentik API の管理ツールを公開します。診断版では読み取り専用の調査と監視を利用できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"authentik": {
"command": "npx",
"args": [
"-y",
"@cdmx/authentik-diag-mcp"
]
}
}
}
起動コマンドnpx -y @cdmx/authentik-diag-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@cdmx/authentik-diag-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Authentik MCP サーバー

Authentik API 統合用の Model Context Protocol(MCP)サーバーのコレクションです。Python と Node.js の両方で実装されています。

概要

このリポジトリには、Authentik と統合するための MCP サーバーが 4 つ含まれています。

フル機能サーバー
  • authentik-mcp(Python)- 完全な CRUD 機能を備えた、Authentik API の完全な統合
  • authentik-mcp(Node.js)- API に完全にアクセスできる TypeScript 実装
診断専用サーバー
  • authentik-diag-mcp(Python)- 読み取り専用の診断および監視機能
  • authentik-diag-mcp(Node.js)- 診断と監視のための TypeScript 実装

MCP の統合と使用方法

このリポジトリは、Model Context Protocol(MCP)エコシステムとシームレスに統合できるように設計されています。これらのサーバーは、コマンドラインから直接実行するのではなく、MCP 互換ツール(VS Code 拡張機能、自動化プラットフォーム、オーケストレーションシステムなど)によって実行・管理されることを想定しています。

MCP での使用方法
  1. 目的のパッケージをインストールします。
    • API に完全にアクセスする場合:authentik-mcp
    • 診断/監視の場合:authentik-diag-mcp
  2. MCP ツールまたはプラットフォームを設定し、インストールしたサーバーバイナリ(例:authentik-mcp または authentik-diag-mcp)を指定して、必要な Authentik API トークンとベース URL を引数または環境変数として渡します。
  3. **これらのサーバーを CLI から直接実行しないでください。**代わりに、MCP 互換ツールにライフサイクルと通信を管理させます。
  4. MCP ツールのインターフェースを通じて Authentik を操作します。自動化、監視、診断に利用できるすべてのリソースとツールが公開されます。
例:VS Code Github Copilot MCP 拡張機能

GitHub Copilot Workspace(settings.json)– Python(uvx):

"mcp": {
  "servers": {
    "authentik": {
      "command": "uvx",
      "args": [
        "authentik-diag-mcp",
        "--base-url", "https://your-authentik-instance",
        "--token", "your-api-token"
      ]
    }
  }
}

GitHub Copilot Workspace(settings.json)– Node.js(npx):

"mcp": {
  "servers": {
    "authentik": {
      "command": "npx",
      "args": [
        "@cdmx/authentik-diag-mcp",
        "--base-url", "https://your-authentik-instance",
        "--token", "your-api-token"
      ]
    }
  }
}

Claude Desktop(claude_desktop_config.json)– Python(uvx):

{
  "mcpServers": {
    "authentik": {
      "command": "uvx",
      "args": [
        "authentik-diag-mcp",
        "--base-url",
        "https://your-authentik-instance",
        "--token",
        "your-api-token"
      ]
    }
  }
}

Claude Desktop(claude_desktop_config.json)– Node.js(npx):

{
  "mcpServers": {
    "authentik": {
      "command": "npx",
      "args": [
        "@cdmx/authentik-diag-mcp",
        "--base-url",
        "https://your-authentik-instance",
        "--token",
        "your-api-token"
      ]
    }
  }
}

クイックスタート

Python パッケージ

**注:**これらのパッケージは CLI から直接使用することを想定していません。上記の説明に従って、MCP 互換ツールまたはプラットフォームに統合してください。

Node.js パッケージ

**注:**これらのパッケージは CLI から直接使用することを想定していません。上記の説明に従って、MCP 互換ツールまたはプラットフォームに統合してください。

API へのフルアクセス

MCP ツールによって管理されます。CLI から直接使用する必要はありません。

診断専用

MCP ツールによって管理されます。CLI から直接使用する必要はありません。

機能の比較

機能フル MCP診断 MCP
ユーザー管理(CRUD)✅❌(読み取り専用)
グループ管理(CRUD)✅❌(読み取り専用)
アプリケーション管理(CRUD)✅❌(読み取り専用)
イベント監視✅✅
ユーザー情報✅✅(読み取り専用)
グループ情報✅✅(読み取り専用)
アプリケーションのステータス✅✅(読み取り専用)
フロー管理✅✅(読み取り専用)
プロバイダー管理✅✅(読み取り専用)
トークン管理✅❌
システムの健全性監視✅✅
監査証跡の分析✅✅

API トークンの設定

フルアクセスの場合(authentik-mcp)
  1. 管理者として Authentik にログインします
  2. Directory > Tokens に移動します
  3. API の全権限を持つ新しいトークンを作成します
  4. フル MCP サーバーで使用するトークンをコピーします
診断アクセスの場合(authentik-diag-mcp)
  1. 管理者として Authentik にログインします
  2. Directory > Tokens に移動します
  3. 最小限の読み取り専用権限を持つ新しいトークンを作成します
  4. 診断 MCP サーバーで使用するトークンをコピーします

利用可能なツール

フル MCP サーバーのツール
ユーザー管理
  • authentik_list_users - フィルタリングしてユーザーを一覧表示
  • authentik_get_user - ユーザーの詳細を取得
  • authentik_create_user - 新しいユーザーを作成
  • authentik_update_user - 既存のユーザーを更新
  • authentik_delete_user - ユーザーを削除
グループ管理
  • authentik_list_groups - グループを一覧表示
  • authentik_get_group - グループの詳細を取得
  • authentik_create_group - 新しいグループを作成
  • authentik_update_group - 既存のグループを更新
  • authentik_delete_group - グループを削除
アプリケーション管理
  • authentik_list_applications - アプリケーションを一覧表示
  • authentik_get_application - アプリケーションの詳細を取得
  • authentik_create_application - 新しいアプリケーションを作成
  • authentik_update_application - 既存のアプリケーションを更新
  • authentik_delete_application - アプリケーションを削除
イベント監視
  • authentik_list_events - システムイベントを一覧表示
  • authentik_get_event - イベントの詳細を取得
フロー管理
  • authentik_list_flows - 認証フローを一覧表示
  • authentik_get_flow - フローの詳細を取得
プロバイダー管理
  • authentik_list_providers - プロバイダーを一覧表示
  • authentik_get_provider - プロバイダーの詳細を取得
トークン管理
  • authentik_list_tokens - API トークンを一覧表示
  • authentik_create_token - 新しいトークンを作成
診断用 MCP サーバーのツール
イベント監視
  • authentik_list_events - フィルタリングしてシステムイベントを一覧表示
  • authentik_get_event - イベントの詳細情報を取得
  • authentik_search_events - 条件に基づいてイベントを検索
  • authentik_get_user_events - ユーザー固有のイベントを取得
ユーザー情報(読み取り専用)
  • authentik_get_user_info - ユーザー情報を取得
  • authentik_list_users_info - 診断用にユーザーを一覧表示
  • authentik_get_user_events - ユーザーのイベント履歴を取得
グループ情報(読み取り専用)
  • authentik_get_group_info - グループ情報を取得
  • authentik_list_groups_info - 診断用にグループを一覧表示
  • authentik_get_group_members - グループのメンバーを取得
システムの健全性
  • authentik_get_system_config - システム構成を取得
  • authentik_get_version_info - バージョン情報を取得
アプリケーション/フロー/プロバイダーの状態(読み取り専用)
  • authentik_get_application_status - アプリケーションの状態を確認
  • authentik_list_applications_status - アプリケーションの状態を一覧表示
  • authentik_get_flow_status - フローの状態を確認
  • authentik_list_flows_status - フローの状態を一覧表示
  • authentik_get_provider_status - プロバイダーの状態を確認
  • authentik_list_providers_status - プロバイダーの状態を一覧表示

ユースケース

フル MCP サーバー
  • ユーザー管理:ユーザーアカウントの作成、更新、管理
  • グループ管理:適切な権限を設定してユーザーをグループに編成
  • アプリケーションのセットアップ:新しいアプリケーションの構成とデプロイ
  • フローの構成:認証フローのセットアップとカスタマイズ
  • システム管理:システム全体の管理と構成
診断用 MCP サーバー
  • セキュリティ監視:認証イベントとセキュリティインシデントを追跡
  • パフォーマンス分析:システムのパフォーマンスとユーザーエクスペリエンスを監視
  • コンプライアンスレポート:監査レポートとコンプライアンス文書を生成
  • トラブルシューティング:認証とアクセスに関する問題を診断
  • 健全性の監視:システムの健全性と構成のドリフトを監視

セキュリティのベストプラクティス

トークン管理
  • サーバーの種類ごとに専用のトークンを使用する
  • トークンを定期的にローテーションする
  • 最小権限の原則を適用する
  • トークンの使用状況を監視する
環境のセキュリティ
  • 本番環境では常に HTTPS を使用する
  • SSL 証明書を検証する
  • 機密データには環境変数を使用する
  • 適切なアクセス制御を実装する
監視
  • 監査ログを有効にする
  • API の使用パターンを監視する
  • 不審なアクティビティに対するアラートを設定する
  • 定期的にセキュリティレビューを実施する

開発

すべてのパッケージをビルドする
chmod +x build.sh
./build.sh
すべてのパッケージを公開する
chmod +x publish.sh
./publish.sh
開発環境のセットアップ
Python 開発
cd python/authentik-mcp  # or authentik-diag-mcp
uv sync
uv run authentik-mcp --base-url http://localhost:9000 --token your-token
Node.js 開発
cd nodejs/authentik-mcp  # or authentik-diag-mcp
npm install
npm run dev -- --base-url http://localhost:9000 --token your-token

要件

Python
  • Python 3.10 以上
  • uv パッケージマネージャー(推奨)
Node.js
  • Node.js 18.0.0 以上
全般
  • 適切な権限を持つ有効な Authentik API トークン
  • npm または yarn

プロジェクト構成

authentik-mcp/
├── python/
│   ├── authentik-mcp/           # Full Python MCP server
│   └── authentik-diag-mcp/      # Diagnostic Python MCP server
├── nodejs/
│   ├── authentik-mcp/           # Full Node.js MCP server
│   └── authentik-diag-mcp/      # Diagnostic Node.js MCP server
├── build.sh                     # Build all packages
├── publish.sh                   # Publish all packages
└── README.md                    # This file

ライセンス

MIT ライセンス — 詳細については、各パッケージの LICENSE ファイルを参照してください。

サポート

コントリビューション

コントリビューションを歓迎します!詳細については、コントリビューションガイドをご覧ください。

変更履歴

バージョン履歴と変更については、各パッケージの CHANGELOG.md ファイルを参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。