MCP Vertica

by nolleh

6 stars
297 downloads
Not rated
GitHub

About

A server for managing and querying Vertica databases, including connection, schema, and security management.

Details

Author
nolleh
GitHub stars
6
Downloads
297
Categories
Database, Other

- Connection pooling with configurable limits
- SSL/TLS support and automatic connection cleanup
- Execute SQL queries and stream large results in batches
- Bulk data loading via COPY command
- Table structure inspection, index and view management
- Operation-level and schema-specific permissions

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Vertica
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install via Smithery (npx -y @smithery/cli install @nolleh/mcp-vertica --client claude) or manually configure your MCP client’s settings file with either uvx or Docker. Set environment variables for connection details (e.g., VERTICA_HOST, VERTICA_PORT, VERTICA_DATABASE, VERTICA_USER, VERTICA_PASSWORD) or pass them as command-line arguments. Optionally configure operation permissions and schema-level permissions using environment variables.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp vertica": {
            "vertica": {
                "command": "uvx",
                "args": [
                    "mcp-vertica",
                    "--host=localhost",
                    "--db-port=5433",
                    "--database=VMart",
                    "--user=dbadmin",
                    "--password=",
                    "--connection-limit=10"
                ]
            }
        }
    }
}

McpServers

{
    "vertica": {
        "command": "uvx",
        "args": [
            "mcp-vertica",
            "--host=localhost",
            "--db-port=5433",
            "--database=VMart",
            "--user=dbadmin",
            "--password=",
            "--connection-limit=10"
        ]
    }
}

MCP Vertica

PyPI version
License: MIT
Downloads
smithery badge
MCP Community

🏆 First implementation of Vertica MCP ServerLearn more

Listed in Model Context Protocol Official Registry

A Vertica MCP(model-context-protocol) Server

<a href="https://glama.ai/mcp/servers/@nolleh/mcp-vertica">
Vertica MCP server
</a>

Example: MCP Server Setting

Create or edit the file your mcp client config file with the following content:

UVX

{
  "mcpServers": {
    "vertica": {
      "command": "uvx",
      "args": ["mcp-vertica"],
      "env": {
        "VERTICA_HOST": "localhost",
        "VERTICA_PORT": 5433,
        "VERTICA_DATABASE": "VMart",
        "VERTICA_USER": "dbadmin",
        "VERTICA_PASSWORD": "test_password",
        "VERTICA_CONNECTION_LIMIT": 10,
        "VERTICA_SSL": false,
        "VERTICA_SSL_REJECT_UNAUTHORIZED": true
      }
    }
  }
}

Or with args

{
  "mcpServers": {
    "vertica": {
      "command": "uvx",
      "args": [
        "mcp-vertica",
        "--host=localhost",
        "--db-port=5433",
        "--database=VMart",
        "--user=dbadmin",
        "--password=test_password",
        "--connection-limit=10"
      ]
    }
  }
}

Docker

{
  "mcpServers": {
    "vertica": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "nolleh/mcp-vertica"],
      "env": {
        "VERTICA_HOST": "localhost",
        "VERTICA_PORT": 5433,
        "VERTICA_DATABASE": "VMart",
        "VERTICA_USER": "dbadmin",
        "VERTICA_PASSWORD": "test_password",
        "VERTICA_CONNECTION_LIMIT": 10,
        "VERTICA_SSL": false,
        "VERTICA_SSL_REJECT_UNAUTHORIZED": true
      }
    }
  }
}

> [!Note]
>
> - For boolean flags like --ssl or --ssl-reject-unauthorized, simply add the flag (e.g., "--ssl") to enable it, or omit it to disable.
> - For an empty password, use an empty string as shown above.

Features

Database Connection Management

- Connection pooling with configurable limits
- SSL/TLS support
- Automatic connection cleanup
- Connection timeout handling

Query Operations

- Execute SQL queries
- Stream large query results in batches
- Copy data operations
- Transaction management

Schema Management

- Table structure inspection
- Index management
- View management
- Constraint information
- Column details

Security Features

- Operation-level permissions (INSERT, UPDATE, DELETE, DDL)
- Schema-specific permissions
- SSL/TLS support
- Password masking in logs

Tools

Database Operations

1. execute_query

- Execute SQL queries
- Support for all SQL operations

2. stream_query

- Stream large query results in batches
- Configurable batch size

3. copy_data
- Bulk data loading using COPY command
- Efficient for large datasets

Schema Management

1. get_table_structure

- Get detailed table structure
- Column information
- Constraints

2. list_indexes

- List all indexes for a table
- Index type and uniqueness
- Column information

3. list_views
- List all views in a schema
- View definitions

Configuration

Environment Variables

VERTICA_HOST=localhost
VERTICA_PORT=5433
VERTICA_DATABASE=VMart
VERTICA_USER=newdbadmin
VERTICA_PASSWORD=vertica
VERTICA_CONNECTION_LIMIT=10
VERTICA_SSL=false
VERTICA_SSL_REJECT_UNAUTHORIZED=true

Operation Permissions

ALLOW_INSERT_OPERATION=false
ALLOW_UPDATE_OPERATION=false
ALLOW_DELETE_OPERATION=false
ALLOW_DDL_OPERATION=false

Schema Permissions

SCHEMA_INSERT_PERMISSIONS=schema1:true,schema2:false
SCHEMA_UPDATE_PERMISSIONS=schema1:true,schema2:false
SCHEMA_DELETE_PERMISSIONS=schema1:true,schema2:false
SCHEMA_DDL_PERMISSIONS=schema1:true,schema2:false

Installation

Installing via Smithery

To install Vertica Database Connector for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @nolleh/mcp-vertica --client claude

Installing Manually

Open your favorite mcp client's config file, then configure with uvx mcp-vertica

Example: Mcp Server Setting

Development

Debug Mode

When running with Docker, you can enable debug logging by setting the DEBUG environment variable:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.