mcp-clickhouse
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CHDB_ENABLED | No | Enable/disable chDB functionality | false |
| CHDB_DATA_PATH | No | The path to the chDB data directory | :memory: |
| CLICKHOUSE_HOST | No | The hostname of your ClickHouse server | |
| CLICKHOUSE_PORT | No | The port number of your ClickHouse server (default: 8443 if HTTPS, 8123 if not) | 8443 |
| CLICKHOUSE_ROLE | No | The role to use for authentication | |
| CLICKHOUSE_USER | No | The username for authentication | |
| CLICKHOUSE_SECURE | No | Enable/disable HTTPS connection | true |
| CLICKHOUSE_VERIFY | No | Enable/disable SSL certificate verification | true |
| CLICKHOUSE_ENABLED | No | Enable/disable ClickHouse functionality | true |
| CLICKHOUSE_DATABASE | No | Default database to use | |
| CLICKHOUSE_PASSWORD | No | The password for authentication | |
| CLICKHOUSE_MCP_BIND_HOST | No | Host to bind the MCP server to when using HTTP or SSE transport | 127.0.0.1 |
| CLICKHOUSE_MCP_BIND_PORT | No | Port to bind the MCP server to when using HTTP or SSE transport | 8000 |
| CLICKHOUSE_CONNECT_TIMEOUT | No | Connection timeout in seconds | 30 |
| CLICKHOUSE_MCP_QUERY_TIMEOUT | No | Timeout in seconds for SELECT tools | 30 |
| CLICKHOUSE_MCP_SERVER_TRANSPORT | No | Transport method (stdio, http, sse) | stdio |
| CLICKHOUSE_SEND_RECEIVE_TIMEOUT | No | Send/receive timeout in seconds | 300 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_databasesA | List available ClickHouse databases Args: like: Optional LIKE pattern(s) to filter database names. Can be a single string or list of strings. Multiple patterns are combined with OR logic. not_like: Optional NOT LIKE pattern(s) to exclude database names. Can be a single string or list of strings. Multiple patterns are combined with OR logic. Returns: JSON array of database names |
| list_tablesA | List available ClickHouse tables in a database, including schema, comment, row count, and column count. Args: database: The database to list tables from like: Optional LIKE pattern(s) to filter table names. Can be a single string or list of strings. Multiple patterns are combined with OR logic. not_like: Optional NOT LIKE pattern(s) to exclude table names. Can be a single string or list of strings. Multiple patterns are combined with OR logic. page_token: Token for pagination, obtained from a previous call page_size: Number of tables to return per page (default: 50) include_detailed_columns: Whether to include detailed column metadata (default: True). When False, the columns array will be empty but create_table_query still contains all column information. This reduces payload size for large schemas. Returns: A dictionary containing: - tables: List of table information (as dictionaries) - next_page_token: Token for the next page, or None if no more pages - total_tables: Total number of tables matching the filters |
| run_select_queryB | Run a SELECT query in a ClickHouse database |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool targets a distinct action: listing databases, listing tables, and running SELECT queries. No overlap in functionality.
All tools follow a consistent verb_noun pattern: list_databases, list_tables, run_select_query. No mixing of conventions.
With only 3 tools, the set is minimal for a database server but not excessively small; it covers basic browsing and querying.
The server lacks critical operations like creating or dropping databases/tables, inserting data, or describing schemas, leaving significant gaps for typical database interactions.