MCP Server ODBC via SQLAlchemy

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…

Local serverstdio

What is the MCP Server ODBC via SQLAlchemy MCP Server?

MCP Server ODBC via SQLAlchemy is an MCP project maintained in the openlinksoftware/mcp-server-odbc repository. The maintainer describes its purpose as “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…”. Read the project documentation for the complete scope.

Local setup

The project provides a local client configuration using uv. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Configuration values

The example declares ODBC_DSN, ODBC_USER, ODBC_PASSWORD, API_KEY. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
podbc_get_schemasList database schemas accessible to connected database management system (DBMS).
userstring, optional): Database username. Defaults to "demo".
passwordstring, optional): Database password. Defaults to "demo".
dsnstring, optional): ODBC data source name. Defaults to "Local Virtuoso".
podbc_get_tablesList tables associated with a selected database schema.
schemastring, required): The database schema name containing the table.
podbc_filter_table_namesList tables, based on a substring pattern from the q input field, associated with a selected database schema.
podbc_describe_tableProvide the description of a table associated with a designated database schema. This includes information about column names, data types, nulls handling…
tablestring, required): The name of the table to describe.
podbc_query_databaseExecute a SQL query and return results in JSONL format.
querystring, required): The SPARQL query string.
podbc_query_database_mdExecute a standard SQL query and return the results formatted as a Markdown table.
podbc_query_database_jsonlExecute a standard SQL query and return the results in JSON Lines (JSONL) format (one JSON object per line).
podbc_spasql_queryExecute a SPASQL query and return results.
max_rowsnumber, optional): Maximum number of rows to return. Defaults to 20.
timeoutnumber, optional): Query timeout in milliseconds. Defaults to 30000.
podbc_sparql_queryExecute a SPARQL query and return results.
formatstring, optional): Desired result format. Defaults to 'json'.
podbc_virtuoso_support_aiInteract with the Virtuoso Support Assistant/Agent -- a Virtuoso-specific feature for interacting with LLMs
promptstring, required): The prompt text for the AI function.
api_keystring, optional): API key for the AI service. Defaults to "none".
podbc_execute_queryExecute a SQL query and return results in JSONL format.
podbc_execute_query_mdExecute a SQL query and return results in Markdown table format.

How to install the MCP Server ODBC via SQLAlchemy MCP Server

{
  "mcpServers": {
    "my_database": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp-sqlalchemy-server",
        "run",
        "mcp-sqlalchemy-server"
      ],
      "env": {
        "ODBC_DSN": "dsn_name",
        "ODBC_USER": "username",
        "ODBC_PASSWORD": "YOUR_ODBC_PASSWORD",
        "API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

VariableDescriptionRequired
ODBC_DSNDeclared in the maintainer’s client configuration.Check documentation
ODBC_USERDeclared in the maintainer’s client configuration.Check documentation
ODBC_PASSWORDDeclared in the maintainer’s client configuration.Check documentation
API_KEYDeclared in the maintainer’s client configuration.Optional