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.
29 Tools
Version 4.43 or later needs to be installed to add the server automatically
Use cases
About
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.
Attribute | Details |
---|---|
Docker Image | aywengo/kafka-schema-reg-mcp:stable |
Author | aywengo |
Repository | https://github.com/aywengo/kafka-schema-reg-mcp |
Docker Image built by|aywengo Docker Scout Health Score|Not available Verify Signature|Not available Licence|MIT License
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. |
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 |
count_contexts
Count the number of contexts in a registry.
Parameters | Type | Description |
---|---|---|
registry | string optional |
count_schema_versions
Count the number of versions for a specific schema.
Parameters | Type | Description |
---|---|---|
subject | string | |
context | string optional | |
registry | string optional |
count_schemas
Count the number of schemas in a context or registry.
Parameters | Type | Description |
---|---|---|
context | string optional | |
registry | string optional |
create_context
Create a new schema context.
Parameters | Type | Description |
---|---|---|
context | string | |
registry | string optional |
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 |
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 |
generate_resource_templates
Generate resource URI templates for your specific configuration.
Parameters | Type | Description |
---|---|---|
context | string optional | |
registry_name | string optional | |
subject | string optional |
get_default_registry
Get the current default registry.
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 |
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.
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 |
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 |
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 |
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) |
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 |
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 |
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 |
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) |
list_available_resources
List all available MCP resources and their usage patterns.
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 |
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.
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 |
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.
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 |
set_default_registry
Set the default registry.
Parameters | Type | Description |
---|---|---|
registry_name | string |
suggest_resource_for_tool
Suggest the appropriate resource to use instead of a removed tool.
Parameters | Type | Description |
---|---|---|
tool_name | string |
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.
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 |
{
"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>"
}
}
}
}
Manual installation
You can install the MCP server using:
Installation for