
MCP Kafka Schema Reg
A comprehensive Message Control Protocol (MCP) server for Kafka Schema Registry.
README
Kafka Schema Registry MCP Server
A comprehensive Message Control Protocol (MCP) server that provides Claude Desktop and other MCP clients with tools for Kafka Schema Registry operations. Features advanced schema context support, multi-registry management, and comprehensive schema export capabilities.
<table width="100%"> <tr> <td width="33%" style="vertical-align: top;"> <div style="background-color: white; padding: 20px; border-radius: 10px;"> <img src="docs/logo_400_mcp_kafka_schema_reg.png" alt="Kafka Schema Registry MCP Logo" width="100%"> </div> </td> <td width="67%" style="vertical-align: top; padding-left: 20px;">
🎯 True MCP Implementation: Uses modern FastMCP 2.8.0+ framework with full MCP 2025-06-18 specification compliance. Fully compatible with Claude Desktop and other MCP clients using JSON-RPC over stdio.
Latest Version: v2.0.2 | Docker: aywengo/kafka-schema-reg-mcp:stable
</td>
</tr>
</table>
📋 Table of Contents
- 🚀 Quick Start
- ✨ Key Features
- 📦 Installation
- ⚙️ Configuration
- 💬 Usage Examples
- 🔒 Authentication & Security
- 📚 Documentation
- 🧪 Testing
- 🚀 Deployment
- 🤝 Contributing
- 🆕 What's New
🚀 Quick Start
1. Run with Docker (Recommended)
# Latest stable release
docker pull aywengo/kafka-schema-reg-mcp:stable
docker run -e SCHEMA_REGISTRY_URL=http://localhost:8081 aywengo/kafka-schema-reg-mcp:stable
2. Configure Claude Desktop
Copy a ready-to-use configuration from 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. Start Using with Claude
Restart Claude Desktop and try these prompts:
- "List all schema contexts"
- "Show me the subjects in the production context"
- "Register a new user schema with fields for id, name, and email"
✨ Key Features
- 🤖 Claude Desktop Integration - Direct MCP integration with natural language interface
- 🏢 Multi-Registry Support - Manage up to 8 Schema Registry instances simultaneously
- 📋 Schema Contexts - Logical grouping for production/staging environment isolation
- 🔄 Schema Migration - Cross-registry migration with backup and verification
- 📊 Comprehensive Export - JSON, Avro IDL formats for backup and documentation
- 🔒 Production Safety - READONLY mode and per-registry access control
- 🔐 OAuth 2.1 Authentication - Enterprise-grade security with scope-based permissions
- 📈 Real-time Progress - Async operations with progress tracking and cancellation
- 🔗 Resource Linking - HATEOAS navigation with enhanced tool responses
- 🧪 Full MCP Compliance - 48+ tools following MCP 2025-06-18 specification
📖 See detailed feature descriptions: docs/api-reference.md
📦 Installation
Option A: Docker (Recommended)
# Production stable
docker pull aywengo/kafka-schema-reg-mcp:stable
# Latest development
docker pull aywengo/kafka-schema-reg-mcp:latest
# Specific version
docker pull aywengo/kafka-schema-reg-mcp:2.0.2
Option B: Local 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
Option C: Docker Compose
docker-compose up -d # Includes Schema Registry for testing
📖 Detailed installation guide: docs/deployment.md
⚙️ Configuration
Single Registry Mode
export SCHEMA_REGISTRY_URL="http://localhost:8081"
export SCHEMA_REGISTRY_USER="" # Optional
export SCHEMA_REGISTRY_PASSWORD="" # Optional
export READONLY="false" # Production safety
Multi-Registry Mode (Up to 8 Registries)
# Development Registry
export SCHEMA_REGISTRY_NAME_1="development"
export SCHEMA_REGISTRY_URL_1="http://dev-registry:8081"
export READONLY_1="false"
# Production Registry (with safety)
export SCHEMA_REGISTRY_NAME_2="production"
export SCHEMA_REGISTRY_URL_2="http://prod-registry:8081"
export READONLY_2="true" # Read-only protection
Claude Desktop Configuration
Pre-configured examples available in config-examples/
:
Configuration | Use Case | File |
---|---|---|
Production | Stable Docker deployment | claude_desktop_stable_config.json |
Multi-Environment | DEV/STAGING/PROD registries | claude_desktop_multi_registry_docker.json |
Local Development | Python local execution | claude_desktop_config.json |
Read-Only Safety | Production with safety | claude_desktop_readonly_config.json |
📖 Complete configuration guide: config-examples/README.md
💬 Usage Examples
Schema Management
# 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"
Multi-Registry Operations
"Compare development and production registries"
"Migrate user-events schema from staging to production"
"Test connections to all registries"
"Show me registry statistics"
Batch Operations
"Clear all schemas from test context"
"Export global schemas for backup"
"Count schemas across all contexts"
📖 More examples: examples/ | 📖 Use cases: docs/use-cases.md
🔒 Authentication & Security
OAuth 2.1 Support (Optional)
# Enable authentication
export ENABLE_AUTH=true
export AUTH_ISSUER_URL="https://your-oauth-provider.com"
export AUTH_AUDIENCE="your-client-id"
Supported Providers: Azure AD, Google OAuth, Keycloak, Okta, GitHub
Permission Scopes:
read
- View schemas, configurationswrite
- Register schemas, update configs (includes read)admin
- Delete subjects, full control (includes write + read)
Production Safety Features
- READONLY Mode - Prevent accidental changes in production
- URL Validation - SSRF protection with configurable localhost access
- Scope-based Authorization - Fine-grained tool-level permissions
- Per-Registry Controls - Independent safety settings
📖 Security guide: docs/deployment.md#security
📚 Documentation
Guide | Description |
---|---|
API Reference | Complete tool documentation with examples |
Use Cases | Real-world scenarios and implementation patterns |
Deployment Guide | Docker, Kubernetes, cloud platforms, CI/CD |
IDE Integration | VS Code, Claude Code, Cursor setup |
Configuration Examples | Ready-to-use Claude Desktop configs |
Testing Guide | Comprehensive testing setup |
Changelog | Version history and migration notes |
v2.0.0 Highlights | Major version features |
Additional Resources
- Examples - Usage examples and code samples
- Scripts - Utility scripts and automation
- Helm Charts - Kubernetes deployment
- Tests - Test suites and validation
🧪 Testing
Quick Test
cd tests/
./run_all_tests.sh --quick # Essential tests
./run_all_tests.sh # Complete test suite
Docker Testing
python tests/test_docker_mcp.py
📖 Testing guide: TESTING_SETUP_GUIDE.md
🚀 Deployment
Production 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
📖 Deployment guide: docs/deployment.md
🤝 Contributing
We welcome contributions! Please see:
Quick Development Setup
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
🆕 What's New
v2.0.2 (Latest)
- 🔒 Security Fixes - Resolved credential exposure in logging
- 🤖 Interactive Schema Migration - Smart migration with user preference elicitation
- 💾 Automatic Backups - Pre-migration backup creation
- ✅ Post-Migration Verification - Comprehensive schema validation
v2.0.0 (Major Release)
- 🚀 FastMCP 2.8.0+ Framework - Complete architecture upgrade
- 📊 MCP 2025-06-18 Compliance - Latest protocol specification
- 🔐 OAuth 2.1 Generic Discovery - Universal provider compatibility
- 🔗 Resource Linking - HATEOAS navigation in tool responses
📖 Full changelog: CHANGELOG.md | 📖 v2.0.0 features: README-v2.0.0-HIGHLIGHTS.md
<a href="https://glama.ai/mcp/servers/@aywengo/kafka-schema-reg-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@aywengo/kafka-schema-reg-mcp/badge" /> </a>
🐳 Docker Hub: aywengo/kafka-schema-reg-mcp
| 📊 Stats: 48+ MCP Tools, 8 Registries, OAuth 2.1, Multi-platform
License: MIT | Maintainer: @aywengo | Issues: GitHub Issues
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.