Kafka Schema Registry MCP Server について
Kafka Schema Registry MCP Serverは、Kafka Schema Registryのデータを管理するツールをMCPクライアントに提供します。複数のレジストリとコンテキストに対応し、viewer、editor、adminの各エディションで利用可能な操作を分けています。
主な機能
- 01複数のSchema Registryインスタンスを管理
- 02スキーマとコンテキストの閲覧
- 03スキーマの登録と進化
- 04レジストリの比較と移行
- 05スキーマをJSONまたはAvro IDLでエクスポート
- 06viewer、editor、adminの各エディション
活用シーン
- 01読み取り専用モードで本番スキーマを閲覧
- 02スキーマ変更前に互換性を確認
- 03環境間でスキーマを比較または移行
- 04バックアップ用にレジストリのスキーマをエクスポート
MCP 対応
このサーバーは、ツール、プロンプト、リソース、リソーステンプレートを通じてSchema Registryの操作をMCPクライアントに公開します。利用できるツールはviewer、editor、adminの各エディションで異なります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm -e SCHEMA_REGISTRY_NAME_1 -e SCHEMA_REGISTRY_URL_1 -e SCHEMA_REGISTRY_USER_1 -e SCHEMA_REGISTRY_PASSWORD_1 -e READONLY_1 -e SCHEMA_REGISTRY_NAME_2 -e SCHEMA_REGISTRY_URL_2 -e SCHEMA_REGISTRY_USER_2 -e SCHEMA_REGISTRY_PASSWORD_2 -e READONLY_2 aywengo/kafka-schema-reg-mcp:stableSCHEMA_REGISTRY_NAME_1SCHEMA_REGISTRY_URL_1SCHEMA_REGISTRY_USER_1SCHEMA_REGISTRY_PASSWORD_1シークレットREADONLY_1SCHEMA_REGISTRY_NAME_2SCHEMA_REGISTRY_URL_2SCHEMA_REGISTRY_USER_2SCHEMA_REGISTRY_PASSWORD_2シークレットREADONLY_2ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Kafka Schema Registry MCP サーバー
Kafka Schema Registry の操作に使用できるツールを、Claude Desktop やその他の MCP クライアントに提供する、包括的な Model Context Protocol(MCP)サーバーです。高度なスキーマコンテキストのサポート、複数レジストリの管理、包括的なスキーマエクスポート機能を備えています。
|
最新バージョン:v3.0.0 | Docker: |
**🎛️ v3.0 エディション。**サーバーは
viewer(読み取り専用:閲覧、エクスポート、比較、互換性確認)、editor(viewer の機能にスキーマ登録と進化を追加)、またはadmin(フルアクセス:設定、削除、移行、一括操作、災害復旧)として実行されます。タグが:latest/:stableのイメージはviewerです。-editorタグと-adminタグ、および Helm のedition値で、より多くの機能を利用できます。SLIM_MODEは非推奨のeditor用エイリアスです。docs/editions.md と docs/v3-migration-guide.md を参照してください。
📋 目次
- 🚀 クイックスタート
- ✨ 主な機能
- 🛠️ Claude Code スキル
- 📦 インストール
- ⚙️ 設定
- 💬 使用例
- 🔒 認証とセキュリティ
- 📚 ドキュメント
- 🧪 テスト
- 🚀 デプロイ
- 🤝 貢献
- 🆕 新着情報
🚀 クイックスタート
1. Docker で実行する(推奨)
# Latest stable release
docker pull aywengo/kafka-schema-reg-mcp:stable
# Viewer is the default; choose editor or admin explicitly when you need writes
docker run -e MCP_EDITION=editor -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
# OR run with the full admin surface for administrators/SRE
docker run -e MCP_EDITION=admin -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
2. Claude Desktop を設定する
config-examples/ からすぐに使える設定をコピーします。
# macOS
cp config-examples/claude_desktop_stable_config.json ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Linux
cp config-examples/claude_desktop_stable_config.json ~/.config/claude-desktop/config.json
3. Claude で使い始める
Claude Desktop を再起動し、次のプロンプトを試してください。
- 「すべてのスキーマコンテキストを一覧表示して」
- 「本番コンテキスト内のサブジェクトを表示して」
- 「id、name、email フィールドを持つ新しいユーザースキーマを登録して」
✨ 主な機能
- 🤖 Claude Desktop との統合 - 自然言語インターフェースによる直接的な MCP 統合
- 🏢 複数のレジストリに対応 - 最大 8 個の Schema Registry インスタンスを同時に管理
- 📋 スキーマコンテキスト - 本番環境とステージング環境を分離するための論理的なグループ化
- 🔄 スキーマ移行 - バックアップと検証を伴うレジストリ間の移行
- 📊 包括的なエクスポート - バックアップとドキュメント作成に対応した JSON、Avro IDL 形式
- 🔒 本番環境の安全性 - VIEWONLY モードとレジストリごとのアクセス制御
- 🔐 OAuth 2.1 認証 - スコープベースの権限を備えたエンタープライズグレードのセキュリティ
- 📈 リアルタイムの進捗状況 - 進捗追跡とキャンセルに対応した非同期操作
- 🔗 リソースのリンク - 拡張されたツール応答による HATEOAS ナビゲーション
- 🧪 MCP 2026-07-28 - FastMCP 4 / MCP SDK 2。1 つのプロセスで
2025-11-25クライアントにも対応 - 🎛️ 3 つのエディション - 1 つのコードベースから
viewer(39 個のツール)、editor(42 個)、admin(66 個)を提供
📖 機能の詳細:docs/api-reference.md
🛠️ Claude Code スキル
このプロジェクトには 5 つの専門的な Claude Code スキルが含まれています。そのうち 4 つはスキーマ開発ワークフローを自動化し、残りの 1 つはスキーマコンテキストの比較(/context-compare。詳細は以下を参照)を行います。
利用可能なスキル
-
/schema-generate- 自然言語から本番環境で利用できる Avro スキーマを生成/schema-generate event UserRegistered "user registration with userId, email, timestamp" -
/schema-evolve- 互換性を自動確認しながら安全にスキーマを進化/schema-evolve user-profile "add optional phoneNumber field" -
/migration-plan- 環境間の詳細な移行計画を作成/migration-plan development staging -
/lint-and-test- 品質保証ワークフローを自動化/lint-and-test quick # Before commit (2-3s) /lint-and-test fix # Auto-fix issues (20-30s) /lint-and-test pre-push # Before push (10-15s)
スキルを使い始める
クイックスタート: .claude-code/SKILLS_GUIDE.md - 5 分間のチュートリアル
完全なリファレンス: .claude-code/skills/README.md - ドキュメント一式
セットアップの概要: .claude-code/skills/README.md - 設定の詳細
スキルの機能
- ✅ テンプレートを使った自然言語によるスキーマ生成
- ✅ 互換性(BACKWARD、FORWARD、FULL)の自動確認
- ✅ ロールバック手順を含む移行計画の作成
- ✅ コミット前およびプッシュ前の品質自動化
- ✅ Black、Ruff、isort、Flake8 との統合
- ✅ Docker ベースのテスト実行
- ✅ 包括的なエラー処理と自動修正
今すぐお試しください: /schema-generate event TestEvent "test with id and timestamp"
📦 インストール
オプション A:Docker(推奨)
# Viewer (default, 39 tools)
docker pull aywengo/kafka-schema-reg-mcp:stable
# Editor (42 tools) and admin (66 tools)
docker pull aywengo/kafka-schema-reg-mcp:stable-editor
docker pull aywengo/kafka-schema-reg-mcp:stable-admin
# Pin the release candidate and edition
docker pull aywengo/kafka-schema-reg-mcp:3.0.0-admin
エディションの選択
MCP_EDITION で起動時のツール構成を選択します。タグを指定しない場合は viewer が実行されます。
# Read-only browsing
docker run -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
# Schema registration and evolution
docker run -e MCP_EDITION=editor -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
# Full surface, including deletion and migration
docker run -e MCP_EDITION=admin -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
⚠️
SLIM_MODEは非推奨です。MCP_EDITION=editorのエイリアスで、 4.0.0 で削除される予定です。両方の変数を設定しないでください。エディションごとのツール一覧は docs/editions.md を、 アップグレード方法は docs/v3-migration-guide.md を ご覧ください。
オプション B:ローカル Python
git clone https://github.com/aywengo/kafka-schema-reg-mcp
cd kafka-schema-reg-mcp
pip install -r requirements.txt
python kafka_schema_registry_unified_mcp.py
オプション C:Docker Compose
docker-compose up -d # Includes Schema Registry for testing
📖 インストールの詳細ガイド:docs/deployment.md
⚙️ 設定
単一レジストリモード
export SCHEMA_REGISTRY_URL="http://localhost:8081"
export SCHEMA_REGISTRY_USER="" # Optional
export SCHEMA_REGISTRY_PASSWORD="" # Optional
export VIEWONLY="false" # Production safety
export MCP_EDITION="viewer" # viewer | editor | admin (default: viewer)
複数レジストリモード(最大 8 個のレジストリ)
# Development Registry
export SCHEMA_REGISTRY_NAME_1="development"
export SCHEMA_REGISTRY_URL_1="http://dev-registry:8081"
export VIEWONLY_1="false"
# Production Registry (with safety)
export SCHEMA_REGISTRY_NAME_2="production"
export SCHEMA_REGISTRY_URL_2="http://prod-registry:8081"
export VIEWONLY_2="true" # Read-only protection
Claude Desktop の設定
config-examples/ で、事前設定済みのサンプルを利用できます。
| Configuration | Use Case | File |
|---|---|---|
| 本番環境 | 安定した Docker デプロイ | claude_desktop_stable_config.json |
| 複数環境 | DEV/STAGING/PROD レジストリ | claude_desktop_multi_registry_docker.json |
| ローカル開発 | Python によるローカル実行 | claude_desktop_config.json |
| 表示専用の安全設定 | 安全機能を備えた本番環境 | claude_desktop_viewonly_config.json |
📖 設定ガイドの全編: config-examples/README.md
エディションの設定
エディションによって登録されるツールが決まります。アクティブなエディションに含まれないツールは一覧に表示されず、呼び出すこともできません。そのため、コンテキストを消費せず、誤って呼び出されることもありません。
| エディション | ツール | 用途 |
|---|---|---|
viewer(デフォルト) | 39 | 閲覧、エクスポート、比較、互換性チェック |
editor | 42 | Viewer の機能に加えて、スキーマの登録と進化 |
admin | 66 | 全機能:設定、削除、移行、一括操作 |
export MCP_EDITION="admin"
優先順位:MCP_EDITION > SLIM_MODE エイリアス > MCP_EDITION_DEFAULT >
viewer。MCP_EDITION と SLIM_MODE を同時に設定すると、起動エラーになります。
リソースはすべてのエディションで共有されます。 viewer でも、registry://、schema://、subject:// リソースを通じて読み取り専用でアクセスできます。
VIEWONLY は HTTP セッション境界で適用されます。読み取り専用レジストリは、エディションで書き込みツールが公開されていても、PUT、DELETE、および読み取り以外の POST リクエストを拒否します。
📊 MCP のツールとリソース
ツールの構成は tool_catalog.py から生成されます。docs/editions.md の表も同じカタログから生成されます。
| エディション | ツール | 主な機能 |
|---|---|---|
viewer | 39 | レジストリ情報、サブジェクト、スキーマ、互換性、エクスポート、比較、統計、リソース |
editor | +3 | register_schema、check_compatibility、対話型のスキーマ登録 |
admin | +26 | 設定、削除、コンテキスト、移行、一括操作、ワークフロー |
サーバーでは、10 個のプロンプト、4 個の具体的なリソース、17 個のリソーステンプレートも公開されます。パラメーターの詳細は、docs/mcp-tools-reference.md を参照してください。
💬 使用例
スキーマ管理
# In Claude Desktop, use natural language:
"Register a user schema with id, name, email fields"
"Check if my updated schema is compatible"
"Export all schemas from staging context"
"List subjects in production context"
複数レジストリの操作
"Compare development and production registries"
"Migrate user-events schema from staging to production"
"Test connections to all registries"
"Show me registry statistics"
一括操作
"Clear all schemas from test context"
"Export global schemas for backup"
"Count schemas across all contexts"
📖 その他の例: examples/ | 📖 ユースケース: docs/use-cases.md
🔒 認証とセキュリティ
OAuth 2.1 のサポート(任意)
# Enable authentication
export ENABLE_AUTH=true
export AUTH_ISSUER_URL="https://your-oauth-provider.com"
export AUTH_AUDIENCE="your-client-id"
サポート対象のプロバイダー: Azure AD、Google OAuth、Keycloak、Okta、GitHub
権限スコープ:
read- スキーマと設定の表示write- スキーマの登録、設定の更新(読み取り権限を含む)admin- サブジェクトの削除、全権限の操作(書き込み権限と読み取り権限を含む)
本番環境向けの安全機能
- VIEWONLY モード - 本番環境での誤った変更を防止します
- URL 検証 - localhost へのアクセスを設定可能な SSRF 対策
- スコープベースの認可 - ツール単位できめ細かく権限を設定できます
- レジストリごとの制御 - 独立した安全設定
📖 セキュリティガイド: docs/deployment.md#security
📚 ドキュメント
| ガイド | 説明 |
|---|---|
| API リファレンス | 例を含むツールの完全なドキュメント |
| サブジェクトのエイリアス設定 | サブジェクトのエイリアスを追加および削除する方法 |
| ユースケース | 実際のシナリオと実装パターン |
| デプロイガイド | Docker、Kubernetes、クラウドプラットフォーム、CI/CD |
| IDE 連携 | VS Code、Claude Code、Cursor のセットアップ |
| 設定例 | すぐに使える Claude Desktop の設定 |
| テストガイド | 包括的なテストのセットアップ |
| 変更履歴 | バージョン履歴と移行に関する注意事項 |
| v2.0.0 の主な機能 | メジャーバージョンの機能 |
その他のリソース
🧪 テスト
クイックテスト
cd tests/
./run_all_tests.sh --quick # Essential tests
./run_all_tests.sh # Complete test suite
Docker テスト
python tests/test_docker_mcp.py
MCP Inspector テスト(UI 操作)
# From repository root
cd inspector-tests
# Single registry (DEV)
./run-inspector-tests.sh stable
# Multi-registry (DEV + PROD)
./run-inspector-tests.sh multi
# Test a specific Docker tag
DOCKER_VERSION=latest ./run-inspector-tests.sh stable
📖 テストガイド:TESTING_SETUP_GUIDE.md
🚀 デプロイ
本番環境向け Docker
# With docker-compose
docker-compose up -d
# Direct Docker
docker run -d -p 38000:8000 \
-e SCHEMA_REGISTRY_URL=http://registry:8081 \
aywengo/kafka-schema-reg-mcp:stable
Kubernetes
# Using Helm charts
helm install kafka-schema-mcp ./helm/kafka-schema-reg-mcp
📖 デプロイガイド:docs/deployment.md
🤝 コントリビューション
コントリビューションを歓迎します。GitHub でイシューまたはプルリクエストを作成してください。また、以下もご覧ください。
開発環境のクイックセットアップ
git clone https://github.com/aywengo/kafka-schema-reg-mcp
cd kafka-schema-reg-mcp
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python kafka_schema_registry_unified_mcp.py
🆕 新機能
v3.0.0(最新)
- 🎛️ エディション - 1 つのイメージから
viewer(39 ツール)、editor(42 ツール)、admin(66 ツール)を利用できます。SLIM_MODEは非推奨のeditorエイリアスです - 📋 MCP 2026-07-28 - FastMCP のネイティブなバックグラウンドタスクによる、2 世代のプロトコルへの対応
- 🔒 FastMCP 4.1+ - 2026 年のセキュリティ修正を含む、現行の MCP SDK 2 スタック
- 🧭 MRTR ワークフロー - スキーマ進化、移行、コンテキストの再編成、災害復旧をガイドします
- 🚚 移行ガイド - docs/v3-migration-guide.md
v2.1.x
- 🧭 サブジェクトのエイリアス設定 - 新しいツール
add_subject_aliasとdelete_subject_alias - 🛠️ 修正 - 進化アシスタントとインポート操作のインタラクティブな修正
- 📦 機能強化 - MCP ツールの継続的な改良とテストの改善
- 🗑️ 非推奨ツールの削除 - FastMCP の組み込み Docket システムを採用し、カスタムタスク管理ツールを削除
v2.0.x
- 🔒 セキュリティ修正 - ログへの認証情報の露出を解消
- 🤖 インタラクティブなスキーマ移行 - ユーザー設定の聞き取り機能を備えたスマートな移行
- 💾 自動バックアップ - 移行前にバックアップを作成
- ✅ 移行後の検証 - 包括的なスキーマ検証
- 🚀 FastMCP 2.8.0+ フレームワーク - アーキテクチャを全面的にアップグレード
- 📊 MCP 2025-06-18 準拠 - v2.0 リリース当時のプロトコルバージョン
- 🔐 OAuth 2.1 汎用ディスカバリー - あらゆるプロバイダーとの互換性
- 🔗 リソースリンク - ツール応答での HATEOAS ナビゲーション
📖 変更履歴の全文:CHANGELOG.md | 📖 v2.0.0 の機能:README-v2.0.0-HIGHLIGHTS.md
🐳 Glama.ai:
🐳 Docker Hub: aywengo/kafka-schema-reg-mcp | 📊 統計: エディション別に 39 / 42 / 66 個のツール、4 個のリソース + 17 個のテンプレート、8 個のレジストリ、OAuth 2.1、マルチプラットフォーム
ライセンス: MIT | メンテナー: @aywengo | イシュー: GitHub Issues
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。