SQL-Transpiler is a MCP tool designed to transpile SQL queries between different dialects using the sqlglot
library. This tool helps you convert SQL code from one dialect (e.g., MySQL) to another (e.g., PostgreSQL) with ease, ensuring compatibility across various database systems.
- Dialect Support: Lists all SQL dialects supported by
sqlglot
. - SQL Transpilation: Converts SQL queries from one dialect to another.
- Error Handling: Informs you if a dialect is unsupported or if there are syntax errors.
sqlglot
Version: Check yourpyproject.toml
oruv.lock
for the exact version used in this project.
- Python 3.13+ (if running locally)
- UV package manager (for dependency management)
- Docker (if running via container)
-
Clone the repository
git clone https://github.com/Baronco/SQL-Transpiler-MCP-Tool.git cd sql-transpiler
-
Install UV
pip install uv
-
Sync dependencies (using
uv.lock
)uv sync --frozen
-
Run the server
uv run server.py
-
Clone the repository
git clone https://github.com/your-username/sql-transpiler.git cd sql-transpiler
-
Build the Docker image
docker build -t sql-transpiler .
- Use the
Dialects
tool to list all supported SQL dialects. - Use the
Transpiler
tool to convert SQL queries from one dialect to another.
For more details, see the instructions in src/instructions.md
.
To add the SQL-Transpiler MCP tool to your Claude Desktop configuration using the Docker image, update your claude_desktop_config.json
as follows:
{
"mcpServers": {
"sql-transpiler":
{
"command": "docker",
"args": ["run", "-i", "--rm", "--init", "-e", "DOCKER_CONTAINER=true", "sql-transpiler"]
}
}
}
If you want to use your local environment with UV instead of Docker, configure your claude_desktop_config.json
like this (adjust the path as needed):
{
"mcpServers": {
"sql-transpiler":
{
"command": "uv",
"args": [
"--directory",
"path/to/sql-transpiler",
"run",
"server.py"
]
}
}
}
MIT License