Home
Login

Kong Konnect APIとの連携に使用されるモデルコンテキストプロトコル(MCP)サーバー。AIアシスタントがKongゲートウェイの構成、トラフィック、分析データをクエリおよび分析できるようにします。

Apache-2.0TypeScript 31Kongmcp-konnect Last Updated: 2025-04-08

Kong MCP-Konnect プロジェクト詳細

プロジェクト概要

Kong MCP-Konnect は、モデルコンテキストプロトコル(Model Context Protocol, MCP)に基づいたサーバープロジェクトで、AIアシスタントが Kong Gateway の構成、トラフィック、分析データをクエリおよび分析できるようにします。このプロジェクトにより、Claude のような AI アシスタントが自然言語で Kong Konnect の API ゲートウェイと対話できるようになります。

核心機能

  • APIリクエスト分析クエリ: カスタムフィルターをサポートするAPIリクエスト分析
  • ゲートウェイ構成管理: ゲートウェイサービス、ルート、コンシューマー、プラグインのリスト表示と検査
  • コントロールプレーン管理: コントロールプレーンとコントロールプレーングループの管理
  • AIアシスタント統合: Claude およびその他の MCP 互換 AI アシスタントとの統合

プロジェクト構造

src/
├── index.ts            # メインエントリポイント
├── api.ts             # Kong API クライアント
├── tools.ts           # ツールの定義
├── parameters.ts      # ツールパラメータの Zod スキーマ
├── prompts.ts         # 詳細なツールドキュメント
├── operations/
│   ├── analytics.ts   # APIリクエスト分析操作
│   ├── configuration.ts # サービス、ルート、コンシューマー、プラグイン
│   └── controlPlanes.ts # コントロールプレーン管理
└── types.ts           # 共通の型定義

システム要件

  • Node.js 20 以降
  • API アクセス権を持つ Kong Konnect アカウント
  • MCP 機能をサポートするクライアント(Claude Desktop、Cursor など)

インストールと設定

1. クローンとインストール

# リポジトリをクローン
git clone https://github.com/Kong/mcp-konnect.git
cd mcp-konnect

# 依存関係をインストール
npm install

# プロジェクトをビルド
npm run build

2. 環境設定

以下の環境変数を設定して MCP サーバーを構成します。

# 必須:Kong Konnect API キー
export KONNECT_ACCESS_TOKEN=kpat_api_key_here

# オプション:使用する API リージョン(デフォルトは US)
# 有効な値:US, EU, AU, ME, IN
export KONNECT_REGION=us

利用可能なツール

分析ツール

1. APIリクエスト分析(analyze-api-requests

Kong API ゲートウェイのリクエストをクエリおよび分析し、カスタムフィルターをサポートします。

入力パラメータ:

  • timeRange: データ取得の時間範囲(15M, 1H, 6H, 12H, 24H, 7D)
  • statusCodes: 特定の HTTP ステータスコードでフィルタリング
  • excludeStatusCodes: 特定の HTTP ステータスコードを除外
  • httpMethods: HTTP メソッドでフィルタリング
  • consumerIds: コンシューマー ID でフィルタリング
  • serviceIds: サービス ID でフィルタリング
  • routeIds: ルート ID でフィルタリング
  • maxResults: 返される最大結果数
2. コンシューマーリクエスト分析(analyze-consumer-requests

特定のコンシューマーからの API リクエストを分析します。

入力パラメータ:

  • consumerId: 分析するコンシューマー ID
  • timeRange: データ取得の時間範囲
  • successOnly: 成功した(2xx)リクエストのみを表示
  • failureOnly: 失敗した(非 2xx)リクエストのみを表示
  • maxResults: 返される最大結果数

構成ツール

1. サービス一覧(list-services

コントロールプレーンに関連付けられたすべてのサービスを一覧表示します。

入力パラメータ:

  • controlPlaneId: コントロールプレーン ID
  • size: 返されるサービス数
  • offset: ページネーションオフセットトークン
2. ルート一覧(list-routes

コントロールプレーンに関連付けられたすべてのルートを一覧表示します。

3. コンシューマー一覧(list-consumers

コントロールプレーンに関連付けられたすべてのコンシューマーを一覧表示します。

4. プラグイン一覧(list-plugins

コントロールプレーンに関連付けられたすべてのプラグインを一覧表示します。

コントロールプレーン管理ツール

1. コントロールプレーン一覧(list-control-planes

組織内のすべてのコントロールプレーンを一覧表示します。

入力パラメータ:

  • pageSize: 1 ページあたりのコントロールプレーン数
  • pageNumber: 取得するページ番号
  • filterName: 名前でコントロールプレーンをフィルタリング
  • filterClusterType: クラスタタイプでフィルタリング
  • filterCloudGateway: クラウドゲートウェイ機能でフィルタリング
  • labels: ラベルでフィルタリング
  • sort: ソートフィールドと方向
2. コントロールプレーン取得(get-control-plane

特定のコントロールプレーンの詳細を取得します。

3. コントロールプレーングループメンバー一覧(list-control-plane-group-members

特定のグループのすべてのコントロールプレーンメンバーを一覧表示します。

4. コントロールプレーングループメンバーシップ確認(check-control-plane-group-membership

コントロールプレーンがいずれかのグループのメンバーであるかどうかを確認します。

Claude との統合使用

1. Claude for Desktop のインストール

Claude 公式サイト から Claude for Desktop をダウンロードしてインストールします。

2. Claude Desktop の構成

Claude Desktop 構成ファイルを作成または編集します。

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

3. 構成の追加

{
  "mcpServers": {
    "kong-konnect": {
      "command": "node",
      "args": [
        "/absolute/path/to/mcp-konnect/build/index.js"
      ],
      "env": {
        "KONNECT_ACCESS_TOKEN": "kpat_api_key_here",
        "KONNECT_REGION": "us"
      }
    }
  }
}

4. Claude for Desktop の再起動

再起動後、Kong Konnect ツールが Claude で使用できるようになります。

ワークフロー例

1. すべてのコントロールプレーンを一覧表示

私の Kong Konnect 組織内のすべてのコントロールプレーンを一覧表示してください。

2. 特定のコントロールプレーンのサービスを一覧表示

コントロールプレーン [CONTROL_PLANE_NAME/ID] のすべてのサービスを一覧表示してください。

3. 特定のサービスの API リクエストをクエリ

サービス [SERVICE_NAME/ID] の過去 1 時間の 5xx ステータスコードを持つすべての API リクエストを表示してください。

4. コントロールプレーンのコンシューマーを一覧表示

コントロールプレーン [CONTROL_PLANE_NAME/ID] のすべてのコンシューマーを一覧表示してください。

5. 特定のコンシューマーのリクエストを分析

コンシューマー [CONSUMER_NAME/ID] の過去 24 時間のすべてのリクエストを表示してください。

6. 一般的なエラーまたはパターンを確認

このコンシューマーが遭遇する最も一般的なエラーは何ですか?

開発ガイド

新しいツールを追加するには、次の手順に従います。

  1. parameters.ts でパラメータを定義
  2. prompts.ts にドキュメントを追加
  3. operations/ の適切なファイルに操作ロジックを作成
  4. tools.ts でツールを登録
  5. index.ts でツールの実行を処理

トラブルシューティング

接続エラー

  • API キーが有効で、必要な権限を持っていることを確認
  • API リージョンが正しく指定されていることを確認
  • ネットワークが Kong Konnect API に接続できることを確認

認証エラー

  • Kong Konnect ポータルで API キーを再生成
  • 環境変数が正しく設定されていることを確認

データが見つからない

  • リクエストで使用されている ID が正しいことを確認
  • リソースが指定されたコントロールプレーンに存在することを確認
  • 分析クエリの時間範囲が有効であることを確認

まとめ

Kong MCP-Konnect は、AI アシスタントと Kong API ゲートウェイ管理の間のギャップを埋める強力なツールです。API ゲートウェイの構成、トラフィック、分析データをクエリおよび分析するための自然言語インターフェースを提供することで、API 管理をより直感的かつ効率的にします。プロジェクトは、基本的な構成クエリから高度なトラフィック分析まで、豊富な機能セットを提供し、最新の API インフラストラクチャ管理にとって重要なツールです。

Star History Chart