In-depth architectural comparison of the WaveHouse Cloud and MCP Clickhouse MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
WaveHouse Cloud
Databases · Local stdio
Quality: 37/100 (Fair) | Auth: No auth required
MCP Clickhouse
Databases · Local stdio
Quality: 65/100 (Great) | Auth: other
Verdict Summary: Choose WaveHouse Cloud if you need specialized Databases tools running via a local process. Choose MCP Clickhouse if your workspace requires Databases integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
W
Choose WaveHouse Cloud when:
You need dedicated capabilities in the Databases domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
WaveHouse Cloud is categorized under Databases and uses a local stdio subprocess. In contrast, MCP Clickhouse belongs to Databases using local stdio subprocess. Select WaveHouse Cloud when you need capabilities focused on databases and MCP Clickhouse when you require tools for databases.
List available ClickHouse tables in a database, including schema, comment,
row count, and column count.
Integers outside [-9007199254740991, 9007199254740991] in table metadata are
returned as decimal strings.
Pagination tokens are single-use and retained for up to one hour.
run_query
Execute SQL queries in ClickHouse. Queries run in read-only mode by default. Bind optional params by name with {name:Type} placeholders, such as {name:String} or {vector:Array(Float32)}. Values may be JSON scalars, nulls, or arrays. Pass exact large integers as decimal strings. JSON lists and objects cannot bind to Tuple and Map types. Python percent formatting and $name$ raw binary parameters are not supported. Parameter values stay out of the MCP server's normal SQL log lines, but may appear in errors and backend logs. Set CLICKHOUSE_ALLOW_WRITE_ACCESS=true to allow DDL and DML operations. Set CLICKHOUSE_ALLOW_DROP=true to additionally allow destructive operations (DROP, TRUNCATE, DELETE, UPDATE, REPLACE TABLE/PARTITION, CREATE OR REPLACE, CLEAR COLUMN/INDEX/PROJECTION, DETACH PERMANENTLY). That gate is a best-effort accident guard, not a security boundary. Integers outside [-9007199254740991, 9007199254740991] are returned as decimal strings. Two optional checks also run through this tool. Use DESCRIBE (<query>) when you need a query's output columns and types; it inspects the result schema and surfaces analysis errors such as an unknown column, but a query that describes cleanly can still fail at runtime. Consider EXPLAIN ESTIMATE <query> before a SELECT that could be expensive; it returns the estimated parts, rows and marks read from MergeTree family tables, which is not run time and not result size. Neither runs the query body, though analysis can execute scalar subqueries.