Migrate databases
without the pain.

Open-source migration engine powered by Apache Arrow. Schema, data, and indexes — across any database.

$ pip install bani

Supports

PG
PostgreSQL
My
MySQL
MS
MSSQL
Or
Oracle
SL
SQLite

Everything you need for database migrations

A complete toolkit: engine, CLI, SDK, AI integration, and web UI. Open source and extensible.

5 Database Connectors

PostgreSQL, MySQL, MSSQL, Oracle, and SQLite out of the box. Pluggable architecture makes community connectors easy to build.

Apache Arrow Engine

Columnar interchange format enables zero-copy batch processing. Convert once from source, write to any target without N-to-N mappings.

Declarative BDL

Define migrations in XML or JSON using the Bani Definition Language. Version-control your migration configs alongside your code.

Python SDK

Fluent ProjectBuilder API for programmatic migrations. SchemaInspector for analysis. Full control from your Python scripts and pipelines.

11 CLI Commands

Run, validate, preview, init, inspect schemas, manage connectors, and more. JSON output mode for scripting and automation pipelines.

AI-Native MCP Server

10 tools for Claude, Cursor, and other AI agents via the Model Context Protocol. Let AI inspect, generate, validate, and run migrations.

Web Dashboard

Real-time progress monitoring with a React UI. Track migration status, view logs, and manage projects through your browser.

Cross-Platform

macOS menu bar app, Docker image, Linux .deb and .rpm packages, and Windows installer. Run Bani wherever your databases live.

How Bani compares

An honest comparison with other database migration tools.

Feature Bani FullConvert pgloader
License Apache-2.0 Proprietary PostgreSQL
Platforms All Windows Linux + macOS
Connectors 5 10+ PG target only
CLI Yes No Yes
SDK Yes No No
AI Integration MCP Server No No
Declarative Config BDL GUI CLI flags
Web UI Yes Yes No
Price Free From $499 Free

Built-in connectors

Five production-ready connectors with a pluggable architecture for community extensions.

PG

PostgreSQL

Stable

Supported versions: 12 - 17

Learn more →
My

MySQL

Stable

Supported versions: 5.7 - 8.4

Learn more →
MS

Microsoft SQL Server

Stable

Supported versions: 2017 - 2022

Learn more →
Or

Oracle

Stable

Supported versions: 19c - 23ai

Learn more →
SL

SQLite

Stable

Supported versions: 3.x

Learn more →

More coming soon

MariaDB, MongoDB, CSV, and more on the roadmap.

AI-Native

AI-Native Database Migrations

Bani ships with a built-in MCP (Model Context Protocol) server exposing 10 tools. Connect it to Claude Desktop, Cursor, or any MCP-compatible AI agent to run migrations through natural language.

  • Inspect source and target schemas
  • Generate and validate BDL configurations
  • Preview and execute migrations safely
  • Monitor progress in real time
Read the MCP guide →
claude_desktop_config.json
{
  "mcpServers": {
    "bani": {
      "command": "bani",
      "args": ["mcp", "serve"],
      "env": {
        "SOURCE_DSN": "postgresql://...",
        "TARGET_DSN": "mysql://..."
      }
    }
  }
}
Coming Soon

Bani Cloud

A fully managed migration service. Connect your databases, configure your migration, and let Bani Cloud handle the rest. No infrastructure to manage, no agents to deploy.

The open-source CLI and SDK are available now.

Support Bani

Bani is free and open source. Donations help fund ongoing development, testing infrastructure, and the time needed to maintain a quality project.

Every contribution, no matter the size, makes a difference. Thank you for supporting open-source software.