Kong MCP-Konnect は、モデルコンテキストプロトコル(Model Context Protocol, MCP)に基づいたサーバープロジェクトで、AIアシスタントが Kong Gateway の構成、トラフィック、分析データをクエリおよび分析できるようにします。このプロジェクトにより、Claude のような AI アシスタントが自然言語で Kong Konnect の API ゲートウェイと対話できるようになります。
src/
├── index.ts # メインエントリポイント
├── api.ts # Kong API クライアント
├── tools.ts # ツールの定義
├── parameters.ts # ツールパラメータの Zod スキーマ
├── prompts.ts # 詳細なツールドキュメント
├── operations/
│ ├── analytics.ts # APIリクエスト分析操作
│ ├── configuration.ts # サービス、ルート、コンシューマー、プラグイン
│ └── controlPlanes.ts # コントロールプレーン管理
└── types.ts # 共通の型定義
# リポジトリをクローン
git clone https://github.com/Kong/mcp-konnect.git
cd mcp-konnect
# 依存関係をインストール
npm install
# プロジェクトをビルド
npm run build
以下の環境変数を設定して MCP サーバーを構成します。
# 必須:Kong Konnect API キー
export KONNECT_ACCESS_TOKEN=kpat_api_key_here
# オプション:使用する API リージョン(デフォルトは US)
# 有効な値:US, EU, AU, ME, IN
export KONNECT_REGION=us
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
: 返される最大結果数analyze-consumer-requests
)特定のコンシューマーからの API リクエストを分析します。
入力パラメータ:
consumerId
: 分析するコンシューマー IDtimeRange
: データ取得の時間範囲successOnly
: 成功した(2xx)リクエストのみを表示failureOnly
: 失敗した(非 2xx)リクエストのみを表示maxResults
: 返される最大結果数list-services
)コントロールプレーンに関連付けられたすべてのサービスを一覧表示します。
入力パラメータ:
controlPlaneId
: コントロールプレーン IDsize
: 返されるサービス数offset
: ページネーションオフセットトークンlist-routes
)コントロールプレーンに関連付けられたすべてのルートを一覧表示します。
list-consumers
)コントロールプレーンに関連付けられたすべてのコンシューマーを一覧表示します。
list-plugins
)コントロールプレーンに関連付けられたすべてのプラグインを一覧表示します。
list-control-planes
)組織内のすべてのコントロールプレーンを一覧表示します。
入力パラメータ:
pageSize
: 1 ページあたりのコントロールプレーン数pageNumber
: 取得するページ番号filterName
: 名前でコントロールプレーンをフィルタリングfilterClusterType
: クラスタタイプでフィルタリングfilterCloudGateway
: クラウドゲートウェイ機能でフィルタリングlabels
: ラベルでフィルタリングsort
: ソートフィールドと方向get-control-plane
)特定のコントロールプレーンの詳細を取得します。
list-control-plane-group-members
)特定のグループのすべてのコントロールプレーンメンバーを一覧表示します。
check-control-plane-group-membership
)コントロールプレーンがいずれかのグループのメンバーであるかどうかを確認します。
Claude 公式サイト から Claude for Desktop をダウンロードしてインストールします。
Claude Desktop 構成ファイルを作成または編集します。
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"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"
}
}
}
}
再起動後、Kong Konnect ツールが Claude で使用できるようになります。
私の Kong Konnect 組織内のすべてのコントロールプレーンを一覧表示してください。
コントロールプレーン [CONTROL_PLANE_NAME/ID] のすべてのサービスを一覧表示してください。
サービス [SERVICE_NAME/ID] の過去 1 時間の 5xx ステータスコードを持つすべての API リクエストを表示してください。
コントロールプレーン [CONTROL_PLANE_NAME/ID] のすべてのコンシューマーを一覧表示してください。
コンシューマー [CONSUMER_NAME/ID] の過去 24 時間のすべてのリクエストを表示してください。
このコンシューマーが遭遇する最も一般的なエラーは何ですか?
新しいツールを追加するには、次の手順に従います。
parameters.ts
でパラメータを定義prompts.ts
にドキュメントを追加operations/
の適切なファイルに操作ロジックを作成tools.ts
でツールを登録index.ts
でツールの実行を処理Kong MCP-Konnect は、AI アシスタントと Kong API ゲートウェイ管理の間のギャップを埋める強力なツールです。API ゲートウェイの構成、トラフィック、分析データをクエリおよび分析するための自然言語インターフェースを提供することで、API 管理をより直感的かつ効率的にします。プロジェクトは、基本的な構成クエリから高度なトラフィック分析まで、豊富な機能セットを提供し、最新の API インフラストラクチャ管理にとって重要なツールです。