Contribute
Sign in
Kafka Schema Registry

Kafka Schema Registry

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 ToolsRequires ConfigurationRequires Secrets

About

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.

What is an MCP Server?⁠

MCP Info

Image Building Info

AttributeDetails
Dockerfilehttps://github.com/aywengo/kafka-schema-reg-mcp/blob/e145fb8dd68d2246f50395572f6ca5c9f100e53c/Dockerfile⁠
Commite145fb8dd68d2246f50395572f6ca5c9f100e53c
Docker Image built byaywengo
Docker Scout Health ScoreNot available
Verify SignatureNot available
LicenceMIT 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?⁠