avrotize

MCP.Pizza Chef: clemensv

Apache Avro acts as the common middle ground, so a definition written for one system comes out ready for another: JSON, XML, Protocol Buffers, Parquet, and many more, plus table definitions for databases including PostgreSQL, SQL Server, Oracle, MongoDB, BigQuery, and Snowflake. It can also write matching starter code in Python, Java, C#, TypeScript, Rust, Go, and C++. One Python install command with the assistant extra sets it up, and no key is needed.

Coding
Data

Use This MCP server To

Turn a JSON definition into a database table definition Convert a data description into Protocol Buffers without hand editing Generate starter code in Python or Java from a definition Work out a data layout from a CSV file I have Move a definition between two systems that use different formats List which conversions are available before I start

README

Avrotize & Structurize

mcp-name: io.github.clemensv/avrotize

PyPI version Python Versions Build Status License: MIT Downloads

📚 Documentation & Examples | 🎨 Conversion Gallery

Avrotize is a "Rosetta Stone" for data structure definitions, allowing you to convert between numerous data and database schema formats and to generate code for different programming languages.

It is, for instance, a well-documented and predictable converter and code generator for data structures originally defined in JSON Schema (of arbitrary complexity).

The tool leans on the Apache Avro-derived Avrotize Schema as its schema model.

  • Programming languages: Python, C#, Java, TypeScript, JavaScript, Rust, Go, C++
  • SQL Databases: MySQL, MariaDB, PostgreSQL, SQL Server, Oracle, SQLite, BigQuery, Snowflake, Redshift, DB2
  • Other databases: KQL/Kusto, SurrealDB, MongoDB, Cassandra, Redis, Elasticsearch, DynamoDB, CosmosDB
  • Data schema formats: Avro, JSON Schema, JSON Structure, XML Schema (XSD), Protocol Buffers 2 and 3, ASN.1, Apache Parquet, JSON Type Definition (JTD), CDDL, CUE, FlatBuffers, Apache Thrift IDL, Smithy IDL, Cap'n Proto, RAML 1.0 Data Types, and OpenAPI 3.x

Installation

You can install Avrotize from PyPI, having installed Python 3.10 or later:

pip install avrotize

For MCP server support (avrotize mcp), install with the MCP extra:

pip install "avrotize[mcp]"

For SQL database support (sql2a command), install the optional database drivers:

# PostgreSQL
pip install avrotize[postgres]

# MySQL
pip install avrotize[mysql]

# SQL Server
pip install avrotize[sqlserver]

# All SQL databases
pip install avrotize[all-sql]

Usage

Avrotize provides several commands for converting schema formats via Avrotize Schema.

Converting to Avrotize Schema:

avrotize FAQ

Which apps does it work in?
Any assistant that can start a local MCP server, VS Code with Copilot included. It is also listed in the official MCP registry.
Do I need an account key?
No. Everything runs on your own machine and nothing is sent to a paid service.
How hard is setup?
You install it with Python's package installer, adding the assistant extra, then run one command and point your assistant at it.
Can I use this to get a database table definition out of a JSON file?
Yes, that is one of the headline conversions, covering PostgreSQL, MySQL, SQL Server, Oracle, SQLite, BigQuery, Snowflake, and more.
What can it read from?
Avro, JSON, XML, Protocol Buffers, ASN.1, Parquet, CSV, Kafka Connect, SQL databases, and a long list of others.
Can it write code as well as convert?
Yes. It generates matching data classes for Python, C#, Java, TypeScript, JavaScript, Rust, Go, and C++.