Turn on enable_read_query for queries and enable_write_query for DML and DDL; write queries then go through an elicitation step that puts the SQL in front of the user to review before it runs. One more setting worth touching on day one: every metadata type has both a list and a find tool, so use enable_list_tools or enable_find_tools to drop the family you will not use rather than carrying both.
The vendor's server for Exasol. It opens with metadata and dialect knowledge only — query execution, table summarization and profiling are each behind a configuration flag that is off by default.
- The database's shape: schemas, tables and views, custom functions and user-defined functions — each with a list tool for the full inventory and a find tool for keyword search over names and comments
- Descriptions of individual objects: columns and constraints for a table or view, input and output parameters for a function or UDF
- The Exasol dialect itself: SQL types, reserved and non-reserved keywords by letter, system tables and statistics tables with their descriptions, and built-in functions by category down to per-function detail
- SQL preprocessors: list what is registered and activate one for the session
- Query execution behind a switch — execute_exasol_query for reads once enable_read_query is on, and DML and DDL once enable_write_query is on
- Two more optional tools: summarize_exasol_table computes column statistics and sample rows, profile_exasol_query runs a query with Exasol profiling and returns the execution-plan breakdown
- Domain knowledge served as resources rather than tools — skill:// documents covering the SQL dialect, UDFs and script languages, system tables, table design, IMPORT and EXPORT, and virtual schemas
Python >= 3.11 and uv. Three environment variables carry the connection: EXA_DSN, EXA_USER and EXA_PASSWORD. Run it with uvx exasol-mcp-server@latest, or install it once with uv tool install exasol-mcp-server@latest. Everything else goes through EXA_MCP_SETTINGS, either as inline JSON or a path to a JSON file — that is where enable_read_query and enable_write_query are turned on, default_row_limit is set, and the visible schemas and tables are filtered. For remote use, exasol-mcp-server-http --host --port serves it over HTTP.
One command plus a key — uv tool install exasol-mcp-server@latest, then supply credentials
