{
  "run_id": "ClickHouse--mcp-clickhouse-claude-haiku-5-5-1792977739381636778",
  "checker": {
    "claims": [
      {
        "claim": "run_query executes SQL queries on the ClickHouse cluster",
        "command": "<guest-path> tools/call {\"tool\": \"run_query\", \"arguments\": {\"query\": \"SELECT 'coldpass-ok' AS marker\"}}",
        "evidence": "coldpass-ok\\\"]]}\", \"type\": \"text\"}], \"isError\": false, \"structuredContent\": {\"result\": \"{\\\"columns\\\": [\\\"marker\\\"], \\\"rows\\\": [[\\\"coldpass-ok\\\"]]}\"}}",
        "expected": "query result containing coldpass-ok",
        "input": "{\"tool\": \"run_query\", \"arguments\": {\"query\": \"SELECT 'coldpass-ok' AS marker\"}}",
        "kind": "claim",
        "outcome": "Real input produced the expected result: coldpass-ok",
        "source": "Execute SQL queries on your ClickHouse cluster.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "run_query binds named {name:Type} parameters from the params object",
        "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\"}}}",
        "evidence": "O'Reilly\\\"]]}\", \"type\": \"text\"}], \"isError\": false, \"structuredContent\": {\"result\": \"{\\\"columns\\\": [\\\"id\\\", \\\"name\\\"], \\\"rows\\\": [[13, \\\"O'Reilly\\\"]]}\"}}",
        "expected": "result row containing O'Reilly",
        "input": "{\"tool\": \"run_query\", \"arguments\": {\"query\": \"SELECT {id:UInt32} AS id, {name:String} AS name\", \"params\": {\"id\": 13, \"name\": \"O'Reilly\"}}}",
        "kind": "claim",
        "outcome": "Real input produced the expected result: O'Reilly",
        "source": "SELECT {id:UInt32} AS id, {name:String} AS name",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "Scheduled or looping main behavior",
        "command": "",
        "evidence": "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.",
        "expected": "identify the product trigger",
        "input": "source inspection",
        "kind": "cycle",
        "outcome": "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.",
        "source": "repository entry points",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "<guest-path>"
      ],
      "kind": "mcp",
      "scope": "product operation",
      "serverInfo": {
        "name": "mcp-clickhouse",
        "version": "0.7.0"
      },
      "tool_result": {
        "_meta": {
          "fastmcp": {
            "wrap_result": true
          }
        },
        "content": [
          {
            "text": "{\"columns\": [\"marker\"], \"rows\": [[\"coldpass-ok\"]]}",
            "type": "text"
          }
        ],
        "isError": false,
        "structuredContent": {
          "result": "{\"columns\": [\"marker\"], \"rows\": [[\"coldpass-ok\"]]}"
        }
      },
      "tool_result_checked": true,
      "tool_schema_bytes": 3827,
      "tools": [
        "list_databases",
        "list_tables",
        "run_query"
      ],
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "Lint check from the README Running tests section",
        "command": "uv run ruff check .",
        "deferred": false,
        "evidence": "All checks passed!",
        "expected": "All checks passed!",
        "input": "ruff check . in the checkout",
        "kind": "example",
        "outcome": "command completed successfully",
        "returncode": 0,
        "source": "README.md: uv run ruff check . # run linting",
        "verdict": "yes"
      },
      {
        "claim": "Documented pytest suite against a live ClickHouse (README Running tests)",
        "command": "",
        "deferred": false,
        "evidence": "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'.",
        "expected": "documented command completes successfully",
        "input": "",
        "kind": "example",
        "outcome": "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",
        "verdict": "blocked"
      }
    ],
    "status": "PASS"
  },
  "diagnosis": null
}
