Mmcp.market

ClickHouse MCP server

by ClickHouse·io.github.ClickHouse/mcp-clickhouse·v0.6.0

Official ClickHouse MCP server for querying and exploring ClickHouse clusters and chDB.

A85/100grade A
What users say
No reviews yet
Be the first
Safety scan
A85/100

full report

Adoption
Widely used

877 stars56k downloads/wk

Reviews

Write one

Nobody has reviewed ClickHouse yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

ClickHouse tools

No tool declarations could be read from the package source. They show once the server is installed.

Public scan report

scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it

no findings
  • Code scan13 source files scanned25/25
  • Live reliabilityno gateway calls yet and no remote to proben/a
  • Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 2 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
Overall 85/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

What the publisher says

From the ClickHouse repository's README, as published. We do not edit it. Read it on GitHub

ClickHouse MCP Server

<!-- mcp-name: io.github.ClickHouse/mcp-clickhouse -->

An MCP server for ClickHouse.

The server implements MCP 2026-07-28 and supports legacy initialize handshakes from 2024-11-05 through 2025-11-25. Modern clients use sessionless requests and server/discover. Existing clients can continue to negotiate the legacy protocol.

[!NOTE]

HTTP requests without MCP-Protocol-Version are routed through legacy handling so

clients from before 2025-06-18 can continue to connect. MCP 2026-07-28 permits

this behavior on servers that support those clients. Modern clients should send the

header on every POST request.

Features

ClickHouse Tools

ClickHouse tool responses are JSON-encoded strings. Integers outside [-9007199254740991, 9007199254740991] are returned as decimal strings to preserve exact values in JavaScript clients. This applies to query rows and integer table metadata. Safe-range integers and booleans keep their JSON types.

  • run_query
  • Execute SQL queries on your ClickHouse cluster.
  • Input: query (string): The SQL query to execute.
  • Optional input: params (object): Named values for ClickHouse {name:Type} placeholders. See Query parameters.
  • Queries run in read-only mode by default (CLICKHOUSEALLOWWRITE_ACCESS=false), but writes can be enabled explicitly if needed.
  • DESCRIBE () and EXPLAIN ESTIMATE run here too and are optional ways to inspect a query's result schema or its estimated reads. See Checking a query before running it.
  • list_databases
  • List all databases on your ClickHouse cluster.
  • list_tables
  • List tables in a database with pagination.
  • Required input: database (string).
  • Optional inputs:
  • like / not_like (string): Apply LIKE or NOT LIKE filters to table names.
  • page_token (string): Single-use token returned by a previous call. It is retained for up to one hour.
  • page_size (int, default 50): Number of tables returned per page; must be greater than 0.
  • includedetailedcolumns (bool, default true): When false, omits column metadata for lighter responses while keeping the full createtablequery.
  • Response shape:
  • tables: Array of table objects for the current page.
  • nextpagetoken: Pass this single-use value back before it expires to fetch the next page, or null when there are no more tables.
  • total_tables: Total count of tables that match the supplied filters.

Query parameters

Pass values separately from SQL through the optional params object:

{
  "query": "SELECT {id:UInt32} AS id, {name:String} AS name",
  "params": {"id": 13, "name": "O'Reilly"}
}

Use ClickHouse's {name:Type} placeholders without quoting them. Keep the opening brace, name, and colon adjacent, as in {id:UInt32}. Spaces after the colon and within the type are supported, as in {id: UInt32} and {amount:Decimal(18, 4)}. For compatibility across supported driver versions, start names with a letter or underscore and use only letters, digits, and underscores. Python-style %s or %(name)s formatting and the driver's $name$ raw binary parameters are not supported. Calls with only query still work. Omitting params, passing null, or passing an empty object leaves the query unbound.

Parameter values can be JSON strings, numbers, booleans, null, or arrays, provided they match the declared ClickHouse type:

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Install directly

claude mcp add mcp-clickhouse -- uvx mcp-clickhouse
Add to Cursor

ClickHouse: common questions

Is ClickHouse MCP server safe?
Yes, by our scan: it is graded A (85/100). Read the ClickHouse safety report
How do I install ClickHouse?
It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
Does ClickHouse need an API key?
Yes. The registry entry asks for CLICKHOUSE_PASSWORD.
Is ClickHouse maintained?
The last commit was 2 days ago (2026-09-18). The latest release is v0.6.0.
What can I use instead of ClickHouse?
Servers from other publishers that do the same job: Clickhouse MCP server and ClickHouse MCP server.

Alternatives to ClickHouse

Same job from other publishers: the closest match first, then the best rated.

  • Clickhouse
    ClickHouse query & management for AI agents — SQL-classified read/write/destructive gating.
    B
  • ClickHouse
    Read-only MCP server for ClickHouse metadata, parameterized queries, and plan analysis.
    B

More from ClickHouse