A lightweight MCP (Model Context Protocol) server for ODBC built with **FastAPI**, **pyodbc**, and **SQLAlchemy**. This server is compatible with
A lightweight MCP (Model Context Protocol) server for ODBC built with FastAPI, pyodbc, and SQLAlchemy. This server is compatible with Virtuoso DBMS and other DBMS backends that implement a SQLAlchemy provider. Exposed over MCP by the mcp sqlalchemy server mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.
Everything the assistant can do here goes through one of these:
Overview — The Overview tool exposed by this serverYou will need 4 environment variables: ODBC_DSN, ODBC_USER, ODBC_PASSWORD, API_KEY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
odbcinst -j 2. List available data source names by running: odbcinst -q -s 3. ODBC DSN Setup: Configure your ODBC Data Source Name (~/.odbc.ini) for the target database. Example for Virtuoso DBMS: 3. SQLAlchemy URL BindingThe server ships on npm as @modelcontextprotocol/inspector, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
This sits in the database access group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. MCP Sqlalchemy Server's toolset — Overview — is a fair guide to whether it matches your workflow. It is maintained by OpenLinkSoftware; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| Overview | The Overview tool exposed by this server. |
{
"mcpServers": {
"sqlalchemy-server": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/inspector"],
"env": {
"ODBC_DSN": "your-value",
"ODBC_USER": "your-value",
"ODBC_PASSWORD": "your-value",
"API_KEY": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
odbcinst -j 2. List available data source names by running: odbcinst -q -s 3. ODBC DSN Setup: Configure your ODBC Data Source Name (~/.odbc.ini) for the target database. Example for Virtuoso DBMS: 3. SQLAlchemy URL Binding| Variable | Description | Required |
|---|---|---|
| ODBC_DSN | Endpoint or connection string the server talks to. | Yes |
| ODBC_USER | Configuration value read at startup. | Optional |
| ODBC_PASSWORD | Configuration value read at startup. | Optional |
| API_KEY | Credential the server authenticates with. | Yes |
Read-only SQL access to Postgres — let your assistant inspect schemas and answer questions from real data.
Manage your whole Supabase project in conversation — database, auth, storage, Edge Functions and branches.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.
Serverless Postgres with database branching — point your assistant at Neon and let it work on disposable copies.