Wraps MigratorXpress, a cross-platform database migration tool, so Claude can help you move data between Oracle, PostgreSQL, SQL Server, and Netezza. You get six tools: preview_command builds CLI invocations, execute_command runs them with confirmation, validate_auth_file checks credential JSON, list_capabilities shows supported databases and modes, suggest_workflow recommends task sequences for your source and target pair, and get_version reports capabilities. The typical flow is translate DDL, create tables, transfer data in parallel, diff row counts, then copy constraints. Handles the auth files, timeout configuration, and command building so you can orchestrate migrations conversationally instead of wrangling CLI flags.
A Model Context Protocol (MCP) server for MigratorXpress, enabling database migration between heterogeneous database systems through AI assistants.
MigratorXpress supports migrating from Oracle, PostgreSQL, SQL Server, and Netezza to PostgreSQL or SQL Server targets.
pip install -e .
Or install dependencies directly:
pip install -r requirements.txt
| Variable | Default | Description |
|---|---|---|
MIGRATORXPRESS_PATH | ./MigratorXpress | Path to MigratorXpress binary |
MIGRATORXPRESS_TIMEOUT | 3600 | Command execution timeout in seconds |
MIGRATORXPRESS_LOG_DIR | ./logs | Directory for execution logs |
LOG_LEVEL | INFO | Server logging level |
Copy .env.example to .env and adjust values:
cp .env.example .env
Add to your Claude Code MCP settings:
{
"mcpServers": {
"migratorxpress": {
"command": "python",
"args": ["-m", "src.server"],
"cwd": "/path/to/migratorxpress-mcp",
"env": {
"MIGRATORXPRESS_PATH": "/path/to/MigratorXpress"
}
}
}
}
preview_commandBuild and preview a MigratorXpress CLI command without executing it. License text is automatically masked in the display output.
Required parameters: auth_file, source_db_auth_id, source_db_name, target_db_auth_id, target_db_name, migration_db_auth_id
execute_commandExecute a previously previewed command. Requires confirmation: true as a safety mechanism.
validate_auth_fileValidate that an authentication file exists, is valid JSON, and optionally check for specific auth_id entries.
list_capabilitiesList supported source/target databases, tasks, migration DB modes, load modes, and FK modes.
suggest_workflowGiven a source database type, target database type, and optional constraint flag, suggest the full sequence of migration tasks with example commands.
get_versionReport MigratorXpress version and capabilities.
A typical migration from Oracle to PostgreSQL:
Step 1: translate — Translate Oracle DDL to PostgreSQL-compatible DDL
Step 2: create — Create target tables from translated DDL
Step 3: transfer — Transfer data from source to target
Step 4: diff — Verify row counts match between source and target
Step 5: copy_pk — Copy primary key constraints
copy_ak — Copy alternate key (unique) constraints
copy_fk — Copy foreign key constraints
Or run all steps in a single invocation with --task_list all.
pip install -e ".[dev]"
python -m pytest tests/ -v
MIT
MIGRATORXPRESS_PATHPath to the MigratorXpress binary (optional — server runs in preview-only mode without it)
MIGRATORXPRESS_TIMEOUTExecution timeout in seconds (default: 3600)
MIGRATORXPRESS_LOG_DIRDirectory for execution logs (default: ./logs)
LOG_LEVELLogging level: DEBUG, INFO, WARNING, ERROR (default: INFO)
hovecapital/read-only-local-postgres-mcp-server
cocaxcode/database-mcp
io.github.infoinlet-marketplace/mcp-mysql
io.github.cybeleri/database-admin
io.github.yash-0620/postgres-mcp-secured