Kafka Schema Registry MCP

Kafka Schema Registry MCP

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

Requires Configuration
Requires Secrets
Add to Docker Desktop

Version 4.43 or later needs to be installed to add the server automatically

About

Kafka Schema Registry MCP 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.

What is an MCP Server?

MCP Info

Image Building InfoDockerfile|https://github.com/aywengo/kafka-schema-reg-mcp/blob/main/Dockerfile

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 ServerShort Description
check_compatibilityCheck if a schema is compatible with the latest version.
count_contextsCount the number of contexts in a registry.
count_schema_versionsCount the number of versions for a specific schema.
count_schemasCount the number of schemas in a context or registry.
create_contextCreate a new schema context.
export_schemaExport a single schema in the specified format.
export_subjectExport all versions of a subject.
generate_resource_templatesGenerate resource URI templates for your specific configuration.
get_default_registryGet the current default registry.
get_global_configGet global configuration settings.
get_mcp_compliance_status_toolGet MCP 2025-06-18 specification compliance status and configuration details.
get_modeGet the current mode of the Schema Registry.
get_registry_infoGet detailed information about a specific registry.
get_schemaGet a specific version of a schema.
get_schema_by_idGet a schema by its globally unique ID.
get_schema_versionsGet all versions of a schema for a subject.
get_subject_configGet configuration settings for a specific subject.
get_subject_modeGet the operational mode for a specific subject.
get_subjects_by_schema_idGet subjects and versions associated with a schema ID.
list_available_resourcesList all available MCP resources and their usage patterns.
list_contextsList all available schema contexts.
list_registriesList all configured Schema Registry instances.
list_subjectsList all subjects, optionally filtered by context.
pingRespond to MCP ping requests with pong.
register_schemaRegister a new schema version.
set_default_registrySet the default registry.
suggest_resource_for_toolSuggest the appropriate resource to use instead of a removed tool.
test_all_registriesTest connections to all configured registries.
test_registry_connectionTest connection to a specific registry.

Tools Details

Tool: check_compatibility

Check if a schema is compatible with the latest version.

ParametersTypeDescription
schema_definitionobject
subjectstring
contextstringoptional
registrystringoptional
schema_typestringoptional

Tool: count_contexts

Count the number of contexts in a registry.

ParametersTypeDescription
registrystringoptional

Tool: count_schema_versions

Count the number of versions for a specific schema.

ParametersTypeDescription
subjectstring
contextstringoptional
registrystringoptional

Tool: count_schemas

Count the number of schemas in a context or registry.

ParametersTypeDescription
contextstringoptional
registrystringoptional

Tool: create_context

Create a new schema context.

ParametersTypeDescription
contextstring
registrystringoptional

Tool: export_schema

Export a single schema in the specified format.

ParametersTypeDescription
subjectstring
contextstringoptional
formatstringoptional
registrystringoptional
versionstringoptional

Tool: export_subject

Export all versions of a subject.

ParametersTypeDescription
subjectstring
contextstringoptional
include_configbooleanoptional
include_metadatabooleanoptional
include_versionsstringoptional
registrystringoptional

Tool: generate_resource_templates

Generate resource URI templates for your specific configuration.

ParametersTypeDescription
contextstringoptional
registry_namestringoptional
subjectstringoptional

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.

ParametersTypeDescription
contextstringoptional
registrystringoptional

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.

ParametersTypeDescription
contextstringoptional
registrystringoptional

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.

ParametersTypeDescription
registrystringoptional

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.

ParametersTypeDescription
subjectstring
contextstringoptional
registrystringoptional
versionstringoptional

Tool: get_schema_by_id

Get a schema by its globally unique ID.

ParametersTypeDescription
schema_idintegerThe globally unique schema ID
registrystringoptionalOptional 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.

ParametersTypeDescription
subjectstring
contextstringoptional
registrystringoptional

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.

ParametersTypeDescription
subjectstring
contextstringoptional
registrystringoptional

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.

ParametersTypeDescription
subjectstring
contextstringoptional
registrystringoptional

Tool: get_subjects_by_schema_id

Get subjects and versions associated with a schema ID.

ParametersTypeDescription
schema_idintegerThe globally unique schema ID
registrystringoptionalOptional 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.

ParametersTypeDescription
registrystringoptional

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.

ParametersTypeDescription
contextstringoptional
registrystringoptional

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.

ParametersTypeDescription
schema_definitionobject
subjectstring
contextstringoptional
registrystringoptional
schema_typestringoptional

Tool: set_default_registry

Set the default registry.

ParametersTypeDescription
registry_namestring

Tool: suggest_resource_for_tool

Suggest the appropriate resource to use instead of a removed tool.

ParametersTypeDescription
tool_namestring

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.

ParametersTypeDescription
registrystringoptional

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>"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?

Manual installation

You can install the MCP server using:

Installation for

Related servers