Skip to main content

Exasol MCP Server

Provides an LLM access to the Exasol database via MCP tools. Includes the tools for reading the database metadata and executing data reading queries.

License Downloads Supported Python Versions PyPi Package

🚀 Features

  • Collects the metadata.

    • Enumerates the existing database objects, including schemas, tables, views, functions and UDF scripts.

    • Provides a filtering mechanisms to use with object enumeration.

    • Describes the database objects: for tables returns the list of columns and constraints; for functions and scripts - the list of input and output parameters.

    • Enables keyword search of database objects.

  • Executes provided SQL query.

The complete list of tools is formally described in the Tool List section of the user guide.

🔌️ Prerequisites

💾 Installation

Ensure the uv package is installed. If uncertain call

uv --version

To install uv on macOS please use brew, i.e.

brew install uv

For other operating systems, please follow the instructions in the uv official documentation.

🧠 Using the server with the Claude Desktop

To enable the Claude Desktop using the Exasol MCP server, the latter must be listed in the configuration file claude_desktop_config.json. A similar configuration file would exist for most other MCP Client applications.

To find the Claude Desktop configuration file, click on the Settings and navigate to the “Developer” tab. This section contains options for configuring MCP servers and other developer features. Click the “Edit Config” button to open the configuration file in the editor of your choice.

Add the Exasol MCP server to the list of MCP servers as shown in this configuration example.

{
    "mcpServers": {
        "exasol_db": {
            "command": "uvx",
            "args": ["exasol-mcp-server@latest"],
            "env": {
                "EXA_DSN": "my-dsn",
                "EXA_USER": "my-user-name",
                "EXA_PASSWORD": "my-password"
            }
        }
    }
}

With these settings, uv will execute the latest version of the exasol-mcp-server in an ephemeral environment, without installing it.

Alternatively, the exasol-mcp-server can be installed using the command:

uv tool install exasol-mcp-server@latest

For further details on installing and upgrading the server using uv see the uv Tools documentation.

If the server is installed, the Claude configuration file should look like this:

{
    "mcpServers": {
        "exasol_db": {
            "command": "exasol-mcp-server",
            "env": "same as above"
        }
    }
}

Please note that any changes to the Claude configuration file will only take effect after restarting Claude Desktop.

🟠 🟢 Running modes

The MCP server can be deployed either locally, as described above, or as a remote HTTP server. To run the server as a Direct HTTP Server execute the command:

exasol-mcp-server-http --host <server-host> --port <server-port>

The host defaults to 0.0.0.0.

This command provides a simple way to verify the setup for a remote MCP Server deployment. For the production environment, one might consider using an ASGI server like Unicorn. The most flexible approach is implementing a wrapper for the Exasol MCP server that will provide the desired control options. For further information and ideas, please check the HTTP Deployment in the FastMCP documentation.

Here is an example code creating the Exasol MCP server from a wrapper.

from exasol.ai.mcp.server import mcp_server

exasol_mcp = mcp_server()

🔧 Configuration settings

The server is configured using environment variables and optionally a json file. In the above example, the server is provided with the database connection parameters, all other settings left to default. For the information on how to customize server settings please see the Server Setup in the User Guide.

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

Safe Harbor Statement: Exasol MCP Server & AI Solutions

Exasol’s AI solutions (including MCP Server) are designed to enable intelligent, autonomous, and highly performant access to data through AI and LLM-powered agents. While these technologies unlock powerful new capabilities, they also introduce potentially significant risks.

By granting AI agents access to your database, you acknowledge that the behavior of large language models (LLMs) and autonomous agents cannot be fully predicted or controlled. These systems may exhibit unintended or unsafe behavior—including but not limited to hallucinations, susceptibility to adversarial prompts, and the execution of unforeseen actions. Such behavior may result in data leakage, unauthorized data generation, or even data modification or deletion.

Exasol provides the tools to build AI-native workflows; however, you, as the implementer and system owner, assume full responsibility for managing these solutions within your environment. This includes establishing appropriate governance, authorization controls, sandboxing mechanisms, and operational guardrails to mitigate risks to your organization, your customers, and their data.

📚 Documentation

For further details, check out the latest documentation.

Metadata

Release files for exasol-mcp-server 2.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for exasol-mcp-server 2.3.0
File Size Uploaded Provenance Actions
exasol_mcp_server-2.3.0.tar.gz 97.4 kB Without provenance Details for exasol_mcp_server-2.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for exasol-mcp-server 2.3.0
File Interpreter ABI Platform Actions
exasol_mcp_server-2.3.0-py3-none-any.whl Python 3 none any Details for exasol_mcp_server-2.3.0-py3-none-any.whl

Total release size: 204.6 kB

Release files / exasol_mcp_server-2.3.0.tar.gz

Download URL exasol_mcp_server-2.3.0.tar.gz
Size 97.4 kB
Tags Source
SHA-256 checksum
How to use checksums
010b183e88ff9caa928df16001496138a588d5ef3ccd4c9ed4386c515fddb4d0
BLAKE2b-256 checksum
How to use checksums
5161d6c3f122ed293e5d20917fcfb14bc339ca2742ffda67bda8ddae32753145
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.0 CPython/3.11.17 Linux/7.0.0-1017-azure

Release files / exasol_mcp_server-2.3.0-py3-none-any.whl

Download URL exasol_mcp_server-2.3.0-py3-none-any.whl
Size 107.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
281fc3feeda6bfa39c2b531bbe55944f5ed43ec5b2f29f634a704e0d837b8da3
BLAKE2b-256 checksum
How to use checksums
52c92f4ecb7d01b5689b669b10b67d3218d66e36d387b5fca23febc9ad7d2deb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.0 CPython/3.11.17 Linux/7.0.0-1017-azure

Security for exasol-mcp-server 2.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page