Kafka Schema Registry MCP Server
Comprehensive MCP server for Kafka Schema Registry operations. Features multi-registry support, schema contexts, migration tools, OAuth authentication, and 57+ tools for complete schema management. Supports SLIM_MODE for optimal performance.
MCP Info
| Attribute | Details |
|---|---|
| Docker Image | aywengo/kafka-schema-reg-mcp:stable |
| Author | aywengo |
| Repository | https://github.com/aywengo/kafka-schema-reg-mcp |
Image Building Info
| Attribute | Details |
|---|---|
| Dockerfile | https://github.com/aywengo/kafka-schema-reg-mcp/blob/e145fb8dd68d2246f50395572f6ca5c9f100e53c/Dockerfile |
| Commit | e145fb8dd68d2246f50395572f6ca5c9f100e53c |
| Docker Image built by | aywengo |
| Docker Scout Health Score | Not available |
| Verify Signature | Not available |
| Licence | MIT License |
Available Tools (29)
| Tools provided by this Server | Short Description |
|---|---|
check_compatibility |
Check if a schema is compatible with the latest version. |
count_contexts |
Count the number of contexts in a registry. |
count_schema_versions |
Count the number of versions for a specific schema. |
count_schemas |
Count the number of schemas in a context or registry. |
create_context |
Create a new schema context. |
export_schema |
Export a single schema in the specified format. |
export_subject |
Export all versions of a subject. |
generate_resource_templates |
Generate resource URI templates for your specific configuration. |
get_default_registry |
Get the current default registry. |
get_global_config |
Get global configuration settings. |
get_mcp_compliance_status_tool |
Get MCP 2025-06-18 specification compliance status and configuration details. |
get_mode |
Get the current mode of the Schema Registry. |
get_registry_info |
Get detailed information about a specific registry. |
get_schema |
Get a specific version of a schema. |
get_schema_by_id |
Get a schema by its globally unique ID. |
get_schema_versions |
Get all versions of a schema for a subject. |
get_subject_config |
Get configuration settings for a specific subject. |
get_subject_mode |
Get the operational mode for a specific subject. |
get_subjects_by_schema_id |
Get subjects and versions associated with a schema ID. |
list_available_resources |
List all available MCP resources and their usage patterns. |
list_contexts |
List all available schema contexts. |
list_registries |
List all configured Schema Registry instances. |
list_subjects |
List all subjects, optionally filtered by context. |
ping |
Respond to MCP ping requests with pong. |
register_schema |
Register a new schema version. |
set_default_registry |
Set the default registry. |
suggest_resource_for_tool |
Suggest the appropriate resource to use instead of a removed tool. |
test_all_registries |
Test connections to all configured registries. |
test_registry_connection |
Test connection to a specific registry. |
Tools Details
Tool: check_compatibility
Check if a schema is compatible with the latest version.
| Parameters | Type | Description |
|---|---|---|
schema_definition |
object |
|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
|
schema_type |
string optional |
Tool: count_contexts
Count the number of contexts in a registry.
| Parameters | Type | Description |
|---|---|---|
registry |
string optional |
Tool: count_schema_versions
Count the number of versions for a specific schema.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
Tool: count_schemas
Count the number of schemas in a context or registry.
| Parameters | Type | Description |
|---|---|---|
context |
string optional |
|
registry |
string optional |
Tool: create_context
Create a new schema context.
| Parameters | Type | Description |
|---|---|---|
context |
string |
|
registry |
string optional |
Tool: export_schema
Export a single schema in the specified format.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
format |
string optional |
|
registry |
string optional |
|
version |
string optional |
Tool: export_subject
Export all versions of a subject.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
include_config |
boolean optional |
|
include_metadata |
boolean optional |
|
include_versions |
string optional |
|
registry |
string optional |
Tool: generate_resource_templates
Generate resource URI templates for your specific configuration.
| Parameters | Type | Description |
|---|---|---|
context |
string optional |
|
registry_name |
string optional |
|
subject |
string optional |
Tool: get_default_registry
Get the current default registry.
Tool: get_global_config
Get global configuration settings.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://{name}/config' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
context |
string optional |
|
registry |
string optional |
Tool: get_mcp_compliance_status_tool
Get MCP 2025-06-18 specification compliance status and configuration details.
Returns information about JSON-RPC batching status, protocol version, header validation, and migration guidance.
Tool: get_mode
Get the current mode of the Schema Registry.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://mode' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
context |
string optional |
|
registry |
string optional |
Tool: get_registry_info
Get detailed information about a specific registry.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://info/{name}' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
registry |
string optional |
Tool: get_schema
Get a specific version of a schema.
NOTE: This tool is maintained for backward compatibility. Consider using the 'schema://{name}/{context}/{subject}' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
|
version |
string optional |
Tool: get_schema_by_id
Get a schema by its globally unique ID.
| Parameters | Type | Description |
|---|---|---|
schema_id |
integer |
The globally unique schema ID |
registry |
string optional |
Optional registry name (ignored in single-registry mode) |
Tool: get_schema_versions
Get all versions of a schema for a subject.
NOTE: This tool is maintained for backward compatibility. Consider using the 'schema://{name}/{context}/{subject}/versions' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
Tool: get_subject_config
Get configuration settings for a specific subject.
NOTE: This tool is maintained for backward compatibility. Consider using the 'subject://{name}/{context}/{subject}/config' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
Tool: get_subject_mode
Get the operational mode for a specific subject.
NOTE: This tool is maintained for backward compatibility. Consider using the 'subject://{name}/{context}/{subject}/mode' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
Tool: get_subjects_by_schema_id
Get subjects and versions associated with a schema ID.
| Parameters | Type | Description |
|---|---|---|
schema_id |
integer |
The globally unique schema ID |
registry |
string optional |
Optional registry name (ignored in single-registry mode) |
Tool: list_available_resources
List all available MCP resources and their usage patterns.
Tool: list_contexts
List all available schema contexts.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://{name}/contexts' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
registry |
string optional |
Tool: list_registries
List all configured Schema Registry instances.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://names' resource instead for better performance.
Tool: list_subjects
List all subjects, optionally filtered by context.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://{name}/subjects' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
context |
string optional |
|
registry |
string optional |
Tool: ping
Respond to MCP ping requests with pong.
This tool implements the standard MCP ping/pong protocol for server health checking. MCP proxies and clients use this to verify that the server is alive and responding.
Tool: register_schema
Register a new schema version.
| Parameters | Type | Description |
|---|---|---|
schema_definition |
object |
|
subject |
string |
|
context |
string optional |
|
registry |
string optional |
|
schema_type |
string optional |
Tool: set_default_registry
Set the default registry.
| Parameters | Type | Description |
|---|---|---|
registry_name |
string |
Tool: suggest_resource_for_tool
Suggest the appropriate resource to use instead of a removed tool.
| Parameters | Type | Description |
|---|---|---|
tool_name |
string |
Tool: test_all_registries
Test connections to all configured registries.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://status' resource instead for better performance.
Tool: test_registry_connection
Test connection to a specific registry.
NOTE: This tool is maintained for backward compatibility. Consider using the 'registry://status/{name}' resource instead for better performance.
| Parameters | Type | Description |
|---|---|---|
registry |
string optional |
Use this MCP Server
{
"mcpServers": {
"kafka-schema-reg-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SCHEMA_REGISTRY_URL",
"-e",
"SLIM_MODE",
"-e",
"VIEWONLY",
"-e",
"SCHEMA_REGISTRY_USER",
"-e",
"SCHEMA_REGISTRY_PASSWORD",
"aywengo/kafka-schema-reg-mcp:stable"
],
"env": {
"SCHEMA_REGISTRY_URL": "http://localhost:8081",
"SLIM_MODE": "true",
"VIEWONLY": "false",
"SCHEMA_REGISTRY_USER": "<REGISTRY_USERNAME>",
"SCHEMA_REGISTRY_PASSWORD": "<REGISTRY_PASSWORD>"
}
}
}
}