このガイドでは、OllamaでClickHouse MCPサーバーを使用する方法を説明します。
Ollama をインストールする
Ollama は、お使いのマシン上で大規模言語モデル (LLM) を実行するためのライブラリです。 利用可能なモデルの種類も豊富で、簡単に使えます。
Ollama は Mac、Windows、Linux 向けに ダウンロードページ からダウンロードできます。
Ollama を実行すると、モデルの実行に使えるローカルサーバーがバックグラウンドで起動します。
また、ollama serve を実行してサーバーを手動で起動することもできます。
インストール後は、次のようにしてモデルをお使いのマシンにダウンロードできます。
ollama pull qwen3:8bモデルがローカルマシンにない場合は、これによりローカルマシンに取得されます。 ダウンロード後、次のようにモデルを実行できます:
ollama run qwen3:8bダウンロード済みのモデルは、次のように一覧表示できます。
ollama lsNAME ID SIZE MODIFIED
qwen3:latest 500a1f067a9f 5.2 GB 3 days agoダウンロードしたmodelの詳細情報を確認するには、次のコマンドを使用します。
ollama show qwen3 Model
architecture qwen3
parameters 8.2B
context length 40960
embedding length 4096
quantization Q4_K_M
Capabilities
completion
tools
Parameters
repeat_penalty 1
stop "<|im_start|>"
stop "<|im_end|>"
temperature 0.6
top_k 20
top_p 0.95
License
Apache License
Version 2.0, January 2004この出力から、デフォルトのqwen3モデルのパラメータ数は80億をわずかに超えていることがわかります。
MCPHostをインストールする
本稿執筆時点 (2025年7月) では、OllamaでMCPサーバーを利用するためのネイティブな機能はありません。 ただし、MCPHost を使えば、MCPサーバーと連携してOllamaのモデルを実行できます。
MCPHostはGoアプリケーションであるため、使用するマシンにGoがインストールされていることを確認してください。 その後、次のコマンドを実行してMCPHostをインストールできます。
go install github.com/mark3labs/mcphost@latestバイナリは ~/go/bin にインストールされるため、そのディレクトリが PATH に含まれていることを確認する必要があります。
ClickHouse MCP serverの設定
MCPHost を使用すると、YAML または JSON ファイルで MCPサーバーを設定できます。 MCPHost は、ホームディレクトリ内で次の順序で設定ファイルを探します。
.mcphost.ymlまたは.mcphost.json(推奨).mcp.ymlまたは.mcp.json(後方互換性のため)
標準の MCP 設定ファイルで使用される構文と似た構文を使用します。
以下は ClickHouse MCP server の設定例です。これを ~/.mcphost.json ファイルに保存します。
{
"mcpServers": {
"mcp-ch": {
"type": "local",
"command": ["uv",
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.10",
"mcp-clickhouse"
]
}
}
}標準のMCP設定ファイルとの主な違いは、type を指定する必要がある点です。
type は、MCPサーバーで使用するトランスポートの種類を示すために使われます。
local→ stdio トランスポートremote→ ストリーミング可能なトランスポートbuiltin→ inprocess トランスポート
また、以下の環境変数も設定する必要があります。
export CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com
export CLICKHOUSE_USER=demo
export CLICKHOUSE_PASSWORD=""MCPHost の実行
ClickHouse MCPサーバーの設定が完了したら、次のコマンドでMCPHostを実行できます:
mcphost --model ollama:qwen3あるいは、特定の設定ファイルを使用する場合は:
mcphost --model ollama:qwen3 --config ~/.mcphost.json 次のような出力が表示されるはずです。
┃ ┃
┃ Model loaded: ollama (qwen3) ┃
┃ MCPHost System (09:52) ┃
┃ ┃
┃ ┃
┃ Model loaded successfully on GPU ┃
┃ MCPHost System (09:52) ┃
┃ ┃
┃ ┃
┃ Loaded 3 tools from MCP servers ┃
┃ MCPHost System (09:52) ┃
┃ ┃
Enter your prompt (Type /help for commands, Ctrl+C to quit, ESC to cancel generation)MCPサーバーを一覧表示するには、/servers コマンドを使用できます。
┃ ┃
┃ ## Configured MCP servers ┃
┃ ┃
┃ 1. mcp-ch ┃
┃ MCPHost System (10:00) ┃
┃利用可能なツールを一覧表示するには、/tools を実行します:
┃ ## Available Tools ┃
┃ ┃
┃ 1. mcp-ch__list_databases ┃
┃ 2. mcp-ch__list_tables ┃
┃ 3. mcp-ch__run_select_queryその後、ClickHouse SQL Playground で利用可能なデータベースやテーブルについて、モデルに質問できます。
私たちの経験では、小規模なモデルを使う場合 (デフォルトの qwen3 モデルは 80 億パラメータです) 、何をしてほしいのかをより具体的に指示する必要があります。 たとえば、いきなり特定のテーブルに対してクエリを実行するよう求めるのではなく、まずデータベースとテーブルの一覧を表示するよう明示的に依頼する必要があります。 この問題は、より大規模なモデル (例: qwen3:14b) を使うことである程度緩和できますが、一般的なハードウェアでは動作が遅くなります。