ClickHouse/mcp-clickhouse

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works · Linux / Luna: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/ClickHouse--mcp-clickhouse.svg).

mcp-server

Works

README claims checked out on 2 recorded setups.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyesyes

Linux / Haiku 5.5: yes · Oct 25, 2026 · 4bc1c2c094b4 · claude-code / 2.1.310 (Claude Code)
Recorded operation: <guest-path> · local stdio MCP start + initialize + tools/list

Linux / Luna: yes · Oct 25, 2026 · 4bc1c2c094b4 · codex / codex-cli 0.163.0
Recorded operation: uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse · local stdio MCP start + initialize + tools/list

Does what it says
2 of 2 claims checked out
  • run_query executes SQL queries on the ClickHouse cluster: Real input produced the expected result: coldpass-ok

    Source: Execute SQL queries on your ClickHouse cluster.

    Input: {"tool": "run_query", "arguments": {"query": "SELECT 'coldpass-ok' AS marker"}}

    Expected: query result containing coldpass-ok

    Command: <guest-path> tools/call {"tool": "run_query", "arguments": {"query": "SELECT 'coldpass-ok' AS marker"}}

    Observed: coldpass-ok\"]]}", "type": "text"}], "isError": false, "structuredContent": {"result": "{\"columns\": [\"marker\"], \"rows\": [[\"coldpass-ok\"]]}"}}

  • run_query binds named {name:Type} parameters from the params object: Real input produced the expected result: O'Reilly

    Source: SELECT {id:UInt32} AS id, {name:String} AS name

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

    Expected: result row containing O'Reilly

    Command: <guest-path> tools/call {"tool": "run_query", "arguments": {"query": "SELECT {id:UInt32} AS id, {name:String} AS name", "params": {"id": 13, "name": "O'Reilly"}}}

    Observed: O'Reilly\"]]}", "type": "text"}], "isError": false, "structuredContent": {"result": "{\"columns\": [\"id\", \"name\"], \"rows\": [[13, \"O'Reilly\"]]}"}}

MCP
Yes, observed
Local or hosted
local
Local: runs on your machine
Needs keys or browser
None seen
Maintained
Maintained
actively maintained: last commit 4 days ago; 27 commits and 27 merged PRs in 90 days; 4 open issues, 5 open PRs; 27 of 30 recent threads got a maintainer reply, median first reply 329.8h; latest release 2026-09-21

Last commit Oct 21, 2026

Setup time
4 min 8 s
4 min 8 s to a working result
Issue
none found in recorded check
Examples
1 of 1 ran as expected
  • Lint check from the README Running tests section: command completed successfully

    Source: README.md: uv run ruff check . # run linting

    Input: ruff check . in the checkout

    Expected: All checks passed!

    Command: uv run ruff check .

    Observed: All checks passed!

  • Documented pytest suite against a live ClickHouse (README Running tests): Not replayed as a pass. The suite needs a live ClickHouse from docker compose (test-services), and Docker is absent in this guest. Run without CLICKHOUSE_HOST/USER/PASSWORD: <secret> passed, 7 skipped, 1 xfailed, 101 failed, 46 errors; failures are 'Missing required environment variables: CLICKHOUSE_HOST, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD'.

    Source: README.md: uv run pytest -v tests

    Expected: documented command completes successfully

    Observed: Not replayed as a pass. The suite needs a live ClickHouse from docker compose (test-services), and Docker is absent in this guest. Run without CLICKHOUSE_HOST/USER/PASSWORD: <secret> passed, 7 skipped, 1 xfailed, 101 failed, 46 errors; failures are 'Missing required environment variables: CLICKHOUSE_HOST, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD'.

Evidence
README behavior checked
Agent interfaces
MCP
MCP

Observed interfaces were exercised by the checker. Documentation alone does not confirm compatibility.

MCP context
3 tools · about 957 tokens
3 tools · about 957 tokens

Largest returned tools/list page in these observations. Compact UTF-8 definition bytes ÷ 4, rounded up; approximate, excluding client framing and tool results. This is context size, not proof that every tool works.

Measured on linux with Haiku 5.5 · Oct 25, 2026 on 4bc1c2c094b4

Tested with
Claude Code / Haiku 5.5
  • Linux: Claude Code / Haiku 5.5 · agent 2.1.310 (Claude Code) · Checked operation passed · Oct 25, 2026 on 4bc1c2c094b4

Each entry describes its recorded operation and source revision.

Safety
Made outbound connections: yes (hosts not recorded) by mcp-clickhouse

Review signals across current setups: connection review. 10 listed items (named-host connections, static matches, dependency advisories) are below and do not change this verdict. 2 static matches retained as context.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 9 distinct locations. 2 findings. 11 attributed processes.

OSV reports a known vulnerability in this dependency version. 3 distinct locations. 5 findings.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written.

Full event, path and process lists for each observed setup:

Repair history and test corrections
Current diagnosis: unknown · pending

native agent CLI failed: Traceback (most recent call last): File "[redacted-secret].py", line 72, in <module> if __name__=='__main__':sys.exit(main) ~~~~^^ File "[redacted-secret].py", line 41, in main os.execvpe(argv[0],argv,os.environ) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen os>", line 613, in execvpe File "<frozen os>", line 627, in _execvpe FileNotFoundError: [Errno 2] No such file or directory: '[redacted-secret].local/sha

Repair record fix-6bab1e1251f6d705ba35 · current status JSON. Original run outcomes remain unchanged.

Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation <guest-path> · local stdio MCP start + initialize + tools/list

Agent-reported scope: Run SQL through the mcp-clickhouse stdio MCP server (run_query tool) against a ClickHouse server, including named parameter binding.

MCP server returned: mcp-clickhouse · version 0.7.0.

MCP tools returned: list_databases, list_tables, run_query. Tool listing does not establish authenticated tool-call success.

Run details
run
ClickHouse--mcp-clickhouse-claude-haiku-5-5-1792977739381636778
date
Oct 25, 2026
time to working
247.9s
product hosting / execution
Local stdio MCP server in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.310 (Claude Code)
platform
linux
reported cost
$0.018187
Recorded source
https://github.com/ClickHouse/mcp-clickhouse
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "4bc1c2c094b4b31b97014b846d04e1a0f9173602", "url": "https://github.com/ClickHouse/mcp-clickhouse"}
Test version
readme-ca496ea10bb07418d1d8f1c256c2433a55547acc0fb62d8b6d86ae33c976fbfa
revision
4bc1c2c094b4b31b97014b846d04e1a0f9173602
Whose fault: not assigned · resolved

Safety: Review signals: 1 connection review, 5 known vulnerability. 1 static matches retained as context.

Review signals: 1 connection review, 5 known vulnerability. 1 static matches retained as context.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 9 distinct locations. 10 attributed processes.

OSV reports a known vulnerability in this dependency version. 3 distinct locations. 5 findings.

1 hardcoded secret matches retained as context; full list in the evidence.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • run_query executes SQL queries on the ClickHouse cluster: Real input produced the expected result: coldpass-ok

    Source: Execute SQL queries on your ClickHouse cluster.

    Input: {"tool": "run_query", "arguments": {"query": "SELECT 'coldpass-ok' AS marker"}}

    Expected: query result containing coldpass-ok

    Command: <guest-path> tools/call {"tool": "run_query", "arguments": {"query": "SELECT 'coldpass-ok' AS marker"}}

    Observed: coldpass-ok\"]]}", "type": "text"}], "isError": false, "structuredContent": {"result": "{\"columns\": [\"marker\"], \"rows\": [[\"coldpass-ok\"]]}"}}

  • run_query binds named {name:Type} parameters from the params object: Real input produced the expected result: O'Reilly

    Source: SELECT {id:UInt32} AS id, {name:String} AS name

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

    Expected: result row containing O'Reilly

    Command: <guest-path> tools/call {"tool": "run_query", "arguments": {"query": "SELECT {id:UInt32} AS id, {name:String} AS name", "params": {"id": 13, "name": "O'Reilly"}}}

    Observed: O'Reilly\"]]}", "type": "text"}], "isError": false, "structuredContent": {"result": "{\"columns\": [\"id\", \"name\"], \"rows\": [[13, \"O'Reilly\"]]}"}}

Examples

  • Lint check from the README Running tests section: command completed successfully

    Source: README.md: uv run ruff check . # run linting

    Input: ruff check . in the checkout

    Expected: All checks passed!

    Command: uv run ruff check .

    Observed: All checks passed!

  • Documented pytest suite against a live ClickHouse (README Running tests): Not replayed as a pass. The suite needs a live ClickHouse from docker compose (test-services), and Docker is absent in this guest. Run without CLICKHOUSE_HOST/USER/PASSWORD: <secret> passed, 7 skipped, 1 xfailed, 101 failed, 46 errors; failures are 'Missing required environment variables: CLICKHOUSE_HOST, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD'.

    Source: README.md: uv run pytest -v tests

    Expected: documented command completes successfully

    Observed: Not replayed as a pass. The suite needs a live ClickHouse from docker compose (test-services), and Docker is absent in this guest. Run without CLICKHOUSE_HOST/USER/PASSWORD: <secret> passed, 7 skipped, 1 xfailed, 101 failed, 46 errors; failures are 'Missing required environment variables: CLICKHOUSE_HOST, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD'.

Local or hosted: local

What the agent did

Run SQL through the mcp-clickhouse stdio MCP server (run_query tool) against a ClickHouse server, including named parameter binding.

cd <guest-path> && ls -la && git status 2>&1 | head -3; python3 --version; id -u; cat README.md | head -200
cd <guest-path> && cat .python-version pyproject.toml; grep -n -i "install\|uv \|quick\|getting started\|docker\|run" README.md | head -80; which uv; cat /etc/os-release | head -2; ls <guest-path> /inputs 2>&1
cd <guest-path> && sed -n 200,300p README.md
cd <guest-path> && sed -n 300,360p README.md; sed -n 462,530p README.md; (which docker clickhouse; ss -ltn 2>/dev/null | grep -E '8123|9000'; echo done)
cd <guest-path> && uv --version && timeout 600 uv sync --python 3.12 2>&1 | tail -15; ls .venv/bin | grep -i clickhouse
timeout 15 curl -sS -m 10 "https://sql-clickhouse.clickhouse.com:8443/?query=SELECT%201" ; echo " rc=$?"; echo "CDP:"; timeout 10 curl -sS -m 8 $CDP_URL/json/version; echo " rc=$?"
cd <guest-path> && sed -n 360,380p README.md; grep -n "CLICKHOUSE_HOST\|CLICKHOUSE_PORT\|CLICKHOUSE_SECURE\|MCP_TRANSPORT\|MCP_SERVER_TRANSPORT" README.md | head; wc -l <guest-path>; grep -n "def \|argv" <guest-path> | head -80
timeout 20 curl -sS -m 15 "https://sql-clickhouse.clickhouse.com:8443/?user=demo&query=SELECT%20version(),%20'hello'" ; echo " rc=$?"; sed -n 43,50p <guest-path>
grep -n "'env'" <guest-path> | head; sed -n 420,480p <guest-path>
cd <guest-path> && ls -la .coldpass; cat > .coldpass/probe.json <<'EOF'
{"kind":"mcp","argv":["<guest-path>"],"cwd":"<guest-path>","tool":"run_query","arguments":{"query":"SELECT 'coldpass-ok' AS marker"},"expected_text":"coldpass-ok","env":{"CLICKHOUSE_HOST":"sql-clickhouse.clickhouse.com","CLICKHOUSE_PORT":"8443","CLICKHOUSE_USER":"demo","CLICKHOUSE_PASSWORD":"","CLICKHOUSE_SECURE":"true","CLICKHOUSE_VERIFY":"true","CLICKHOUSE_CONNECT_TIMEOUT":"30"}}
EOF
python3 -I -c 'import json;print(json.load(open("<guest-path>"))["tool"])'
cd <guest-path> && cat > .coldpass/claims.json <<'EOF'
[{"kind":"claim","claim":"run_query executes SQL queries on the ClickHouse cluster","source":"Execute SQL queries on your ClickHouse cluster.","input":"SELECT 'coldpass-ok' AS marker","expected":"query result containing coldpass-ok","probe_kind":"mcp","argv":["<guest-path>"],"tool":"run_query","arguments":{"query":"SELECT 'coldpass-ok' AS marker"},"expected_text":"coldpass-ok","cwd":"<guest-path>","env":{"CLICKHOUSE_HOST":"sql-clickhouse.clickhouse.com","CLICKHOUSE_PORT":"8443","CLICKHOUSE_USER":"demo","CLICKHOUSE_PASSWORD":"","CLICKHOUSE_SECURE":"true","CLICKHOUSE_VERIFY":"true","CLICKHOUSE_CONNECT_TIMEOUT":"30"}},
{"kind":"claim","claim":"run_query binds named {name:Type} parameters from the params object","source":"SELECT {id:UInt32} AS id, {name:String} AS name","input":"SELECT {id:UInt32} AS id, {name:String} AS name with id=13 and name=O'Reilly","expected":"result row containing O'Reilly","probe_kind":"mcp","argv":["<guest-path>"],"tool":"run_query","arguments":{"query":"SELECT {id:UInt32} AS id, {name:String} AS name","params":{"id":13,"name":"O'Reilly"}},"expected_text":"O'Reilly","cwd":"<guest-path>","env":{"CLICKHOUSE_HOST":"sql-clickhouse.clickhouse.com","CLICKHOUSE_PORT":"8443","CLICKHOUSE_USER":"demo","CLICKHOUSE_PASSWORD":"","CLICKHOUSE_SECURE":"true","CLICKHOUSE_VERIFY":"true","CLICKHOUSE_CONNECT_TIMEOUT":"30"}}]
EOF
python3 -I -c 'import json;print(len(json.load(open("<guest-path>"))))'; <env-var>=<guest-path> timeout 900 python3 -I <guest-path> --validate --replay 2>&1 | tail -60
cd <guest-path> && grep -rn -i "schedule\|cron\|while True\|--once\|webhook" mcp_clickhouse/ | head; ls tests test-services; sed -n 1,30p mcp_clickhouse/main.py | head -40
cd <guest-path> && sed -n 208,222p mcp_clickhouse/auth.py; grep -n "CLICKHOUSE_HOST\|localhost\|8123" tests/conftest.py | head -5; timeout 900 uv run --python 3.12 --extra dev pytest -q tests 2>&1 | tail -25
cd <guest-path> && timeout 300 uv run --python 3.12 --extra dev pytest -q tests/test_tool.py::TestClickhouseTools::test_list_databases 2>&1 | grep -E "KeyError|Error|environ|CLICKHOUSE" | head -8; grep -n "environ\[" tests/conftest.py | head -5
cd <guest-path> && uv run ruff check . 2>&1 | tail -5; echo rc=$?
cd <guest-path> && cat > .coldpass/examples.json <<'EOF'
[{"kind":"example","claim":"Lint check from the README Running tests section","source":"README.md: uv run ruff check . # run linting","input":"ruff check . in the checkout","expected":"All checks passed!","argv":["uv","run","ruff","check","."],"cwd":"<guest-path>","env":{},"expected_text":"All checks passed!"},
{"kind":"example","claim":"Documented pytest suite against a live ClickHouse (README Running tests)","source":"README.md: uv run pytest -v tests","reason":"Not replayed as a pass. The suite needs a live ClickHouse from docker compose (test-services), and Docker is absent in this guest. Run without CLICKHOUSE_HOST/USER/PASSWORD: <secret> passed, 7 skipped, 1 xfailed, 101 failed, 46 errors; failures are 'Missing required environment variables: CLICKHOUSE_HOST, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD'."}]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"reason":"Entry points inspected: mcp_clickhouse/main.py runs a stdio or HTTP MCP server via mcp.run(), with no cron, scheduler, --once, --now, or webhook trigger. The only while-loop (mcp_clickhouse/auth.py:216) walks up directories to find a .env file. Request-driven tool calls are the product's operation and are covered by the MCP probe and claims.","checks":[]}
EOF
python3 -I -c 'import json;[json.load(open("<guest-path>"+f)) for f in ["examples.json","cycles.json"]];print("ok")'
cd <guest-path> && cat > .coldpass/report.json <<'EOF'
{"outcome":"working","fault_owner":null,"operation":"Run SQL through the mcp-clickhouse stdio MCP server (run_query tool) against a ClickHouse server, including named parameter binding.","operation_scope":"Local Linux guest, Python 3.12 via uv, public ClickHouse SQL playground sql-clickhouse.clickhouse.com:8443 as user demo (README's documented playground config). Read-only default. Docker and a local ClickHouse were not available, so the docker compose test suite was not run against a live server. CDP browser endpoint not needed: this is an MCP stdio server.","steps":["uv sync --python 3.12 (README Development: uv sync --all-extras --dev; run without --all-extras)","Start server: .venv/bin/mcp-clickhouse (README Configuration/Claude Desktop entry)","MCP tools/call run_query with query SELECT 'coldpass-ok' AS marker -> returned coldpass-ok","MCP tools/call run_query with SELECT {id:UInt32} AS id, {name:String} AS name and params id=13, name=O'Reilly -> returned [13, O'Reilly]","uv run ruff check . -> All checks passed!"],"deviations":["Checker path /inputs/coldpass-preflight.py does not exist in this guest; used <guest-path> with the same flags as instructed.","README 'uv run pytest -v tests' needs a live ClickHouse (docker compose test-services). Docker not present; the run gave 700 passed, 7 skipped, 1 xfailed, 101 failed, 46 errors, all from missing CLICKHOUSE_HOST/USER/PASSWORD. Recorded as a prerequisite, not a product fault.","Used the README's 'uv sync' dev install instead of the PyPI install path; the README's pip route was not exercised.","Playground connection: the demo user works over HTTP; the README's password is an empty string."],"stuck_step":null,"main_blocker":null,"plain_failure":null,"suggested_fix":null}
EOF
<env-var>=<guest-path> timeout 900 python3 -I <guest-path> --validate --replay 2>&1 | python3 -I -c 'import sys,json; t=sys.stdin.read(); d=json.loads(t[t.index("{"):]); print("valid:",d["valid"]); print("problems:",d["problems"]); r=d.get("replay",{}); print("replay:",r.get("status")); print({k:(v if not isinstance(v,(dict,list)) else "...") for k,v in r.get("details",{}).items()})' ; echo rc=$?
Earlier attempts (1)

Luna

Native agent · Checked operation passed

Checked operation uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse · local stdio MCP start + initialize + tools/list

Agent-reported scope: Run an embedded chDB SQL query through the MCP tool run_chdb_select_query.

MCP server returned: mcp-clickhouse · version 0.7.0.

MCP tools returned: list_databases, list_tables, run_query, run_chdb_select_query. Tool listing does not establish authenticated tool-call success.

Run details
run
ClickHouse--mcp-clickhouse-gpt-6-luna-1792968762701050179
date
Oct 25, 2026
time to working
103.3s
product hosting / execution
Local stdio MCP server in the guest
recorded operation scope
product operation
model
gpt-6-luna
agent / version
codex / codex-cli 0.163.0
platform
linux
reported cost
not reported (not assumed free)
Recorded source
https://github.com/ClickHouse/mcp-clickhouse
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "4bc1c2c094b4b31b97014b846d04e1a0f9173602", "url": "https://github.com/ClickHouse/mcp-clickhouse"}
Test version
readme-a17389bda4cc696f9601c0c4ff1b2c16e23bfa1d907883b715ccdd9e92ddec56
revision
4bc1c2c094b4b31b97014b846d04e1a0f9173602
Whose fault: not assigned · resolved

Safety: Review signals: 1 connection review, 5 known vulnerability. 1 static matches retained as context.

Review signals: 1 connection review, 5 known vulnerability. 1 static matches retained as context.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 1 attributed processes.

PID 1998: <guest-path> · mcp-clickhouse

OSV reports a known vulnerability in this dependency version. 3 distinct locations. 5 findings.

1 hardcoded secret matches retained as context; full list in the evidence.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • Execute SQL queries using chDB's embedded ClickHouse engine.: Real input produced the expected result: 42

    Source: * Execute SQL queries using [chDB](https://github.com/chdb-io/chdb)'s embedded ClickHouse engine.

    Input: {"tool": "run_chdb_select_query", "arguments": {"query": "SELECT 42 AS answer"}}

    Expected: 42

    Command: uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse tools/call {"tool": "run_chdb_select_query", "arguments": {"query": "SELECT 42 AS answer"}}

    Observed: 42}]", "type": "text"}], "isError": false, "structuredContent": {"result": "[{\"answer\": 42}]"}}

Examples

  • README chDB tool usage: command completed successfully

    Source: README.md, chDB Tools

    Input: SELECT 42 AS answer

    Expected: 42

    Command: uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse

    Observed: ───────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────╮ │ 🎉 Update available: 4.1.3 │ │ Run: pip install --upgrade fastmcp │ ╰──────────────────────────────────────────────────────────────────────────────╯ [10/25/26 22:54:43] INFO Starting MCP server transport.py:242 'mcp-clickhouse' with transport 'stdio'

Local or hosted: local

What the agent did

Run an embedded chDB SQL query through the MCP tool run_chdb_select_query.

pwd; id -u; python3 --version; rg --files -g 'README*' -g 'pyproject.toml' -g 'requirements*.txt' -g 'Dockerfile*' -g '*.yml' -g '*.yaml' -g 'package.json' | head -80
ls -la; find . -maxdepth 3 -type f | head -100; sed -n '1,240p' README.md
grep -nE '^## |^### |uv run|pip install|run_chdb|stdio|quickstart|CLICKHOUSE_HOST' README.md | tail -100; cat .python-version; cat pyproject.toml; cat fastmcp.json; cat server.json | head -60
sed -n '290,380p' README.md; sed -n '650,700p' README.md; sed -n '1135,1150p' README.md; command -v uv || true; command -v sudo
CLICKHOUSE_HOST=localhost CLICKHOUSE_USER=default CLICKHOUSE_PASSWORD= uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse --help
sed -n '146,154p' README.md; sed -n '1,180p' mcp_clickhouse/chdb_backend.py
sed -n '1,160p' <guest-path>; find .coldpass -maxdepth 2 -type f -print -exec cat {} \;
sed -n '1,100p' mcp_clickhouse/main.py; grep -R "initialize\|tools/call\|CHDB_ENABLED" -n tests/conftest.py mcp_clickhouse/main.py mcp_clickhouse/mcp_server.py
printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"coldpass","version":"1"}}}' '{"jsonrpc":"2.0","method":"notifications/initialized"}' '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"run_chdb_select_query","arguments":{"query":"SELECT 42 AS answer"}}}' | CHDB_ENABLED=true CLICKHOUSE_HOST=localhost CLICKHOUSE_USER=default CLICKHOUSE_PASSWORD= uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse
sed -n '1,100p' mcp_clickhouse/mcp_server.py; python3 - <<'PY'
import inspect, fastmcp
PY
grep -n "def mcp\|call_tool\|async def" <guest-path> | tail
sed -n '382,460p' <guest-path>
sed -n '460,486p' <guest-path>
mkdir -p .coldpass; cat > .coldpass/probe.json <<'EOF'
{"kind":"mcp","argv":["uv","run","--with","mcp-clickhouse[chdb]","--python","3.12","mcp-clickhouse"],"cwd":"<guest-path>","env":{"CHDB_ENABLED":"true","CLICKHOUSE_HOST":"localhost","CLICKHOUSE_USER":"default","CLICKHOUSE_PASSWORD":""},"tool":"run_chdb_select_query","arguments":{"query":"SELECT 42 AS answer"},"expected_text":"42"}
EOF
cat > .coldpass/claims.json <<'EOF'
[{"kind":"claim","claim":"Execute SQL queries using chDB's embedded ClickHouse engine.","source":"* Execute SQL queries using [chDB](https://github.com/chdb-io/chdb)'s embedded ClickHouse engine.","input":"SELECT 42 AS answer","expected":"42","probe_kind":"mcp","argv":["uv","run","--with","mcp-clickhouse[chdb]","--python","3.12","mcp-clickhouse"],"tool":"run_chdb_select_query","arguments":{"query":"SELECT 42 AS answer"},"expected_text":"42","env":{"CHDB_ENABLED":"true","CLICKHOUSE_HOST":"localhost","CLICKHOUSE_USER":"default","CLICKHOUSE_PASSWORD":""},"cwd":"<guest-path>"}]
EOF
cat > .coldpass/examples.json <<'EOF'
[{"kind":"example","claim":"README chDB tool usage","source":"README.md, chDB Tools","input":"SELECT 42 AS answer","expected":"42","argv":["uv","run","--with","mcp-clickhouse[chdb]","--python","3.12","mcp-clickhouse"],"cwd":"<guest-path>","env":{"CHDB_ENABLED":"true","CLICKHOUSE_HOST":"localhost","CLICKHOUSE_USER":"default","CLICKHOUSE_PASSWORD":""},"expected_text":"42","tool":"run_chdb_select_query","arguments":{"query":"SELECT 42 AS answer"}}]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"reason":"Inspected README entrypoints and main.py: the product serves MCP requests and has no scheduler, loop trigger, webhook, or one-shot cycle behavior.","checks":[]}
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay
cat > .coldpass/report.json <<'EOF'
{"outcome":"working","fault_owner":null,"operation":"Run an embedded chDB SQL query through the MCP tool run_chdb_select_query.","operation_scope":"stdio MCP server, Python 3.12.3, and optional chDB dependency; no external ClickHouse service required for this query.","steps":["Read README.md and confirmed Python 3.12 is recommended and supported.","Installed and launched with the documented uv run --with 'mcp-clickhouse[chdb]' --python 3.12 mcp-clickhouse command.","Enabled chDB and called run_chdb_select_query with SELECT 42 AS answer; received [{\"answer\": 42}].","Validated and replayed probe, README claim, example, and cycle inspection with the Coldpass checker; all passed."],"deviations":["The first manually piped MCP exchange ended with Connection closed before the tool call; the supplied checker replay uses proper stdio MCP framing and successfully executed the real query."],"stuck_step":null,"main_blocker":null,"plain_failure":null,"suggested_fix":null}
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay; cat .coldpass/report.json