Ollama MCP Chat について
Ollama MCP Chat は、ローカルの Ollama モデルを実行し、MCP サーバーに接続する PySide6 製デスクトップチャットアプリです。ツール呼び出し、ストリーミング応答、履歴保存、GUI でのサーバー管理に対応します。
主な機能
- 01ローカルの Ollama モデルを実行
- 02MCP サーバー経由でツールを呼び出し
- 03チャット履歴の保存と閲覧
- 04応答とツール結果のストリーミング表示
- 05GUI で MCP サーバーを管理
活用シーン
- 01ローカルの Ollama モデルとのチャット
- 02チャット中の MCP ツールの利用
- 03保存した会話の再開や確認
- 04GUI での MCP サーバー設定の追加や編集
MCP 対応
クライアントは MCP サーバー設定を読み込み、GUI でサーバーを管理し、接続してツールを呼び出します。基本的なチャットには MCP の設定は不要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Ollama MCP Chat
Ollama MCP Chat は、Ollama のローカル LLM モデルと MCP(Model Context Protocol)サーバーを統合したデスクトップチャットボットアプリケーションです。さまざまなツール呼び出しと拡張機能に対応しています。Python と PySide6 に基づく GUI を備え、MCP サーバーを通じて機能を自由に拡張できます。
このプロジェクトは、Python で GUI を備えた AI アプリケーションを作成したい開発者にとって、ベースコードとして非常に役立ちます。
主な機能
- Ollama の LLM モデルをローカルで無料実行
- MCP サーバー経由でさまざまなツールを統合して呼び出し
- チャット履歴の管理と保存
- リアルタイムのストリーミング応答とツール呼び出し結果
- 直感的に使えるデスクトップ GUI(PySide6 ベース)
- MCP サーバーの追加、編集、削除に対応した GUI
システム要件
- Python 3.12 以降
- Ollama のインストール(ローカルでの LLM 実行用)
- uv(パッケージ管理に推奨)
- MCP サーバー(実装するか、外部 MCP サーバーを使用できます)
- smithery.ai(MCP リポジトリとして推奨)
インストール
- リポジトリをクローンします
git clone https://github.com/your-repo/ollama-mcp-chat.git
cd ollama-mcp-chat
- uv をインストールします(未インストールの場合)
# Using pip
pip install uv
# Or using curl (Unix-like systems)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Or using PowerShell (Windows)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
- 依存関係をインストールします
# Install dependencies
uv sync
- Ollama をインストールし、モデルをダウンロードします
- [qwen3:14b](ollama run qwen3:14b) を推奨します
# Install Ollama (see https://ollama.ai for details)
ollama pull <model-name>
- MCP サーバーを設定します(任意)
- MCP サーバー情報を
mcp_config.jsonファイルに追加します - 例:
{
"mcpServers": {
"weather": {
"command": "python",
"args": ["./mcp_server/mcp_server_weather.py"],
"transport": "stdio"
}
}
}
実行方法
uv run main.py
- GUI が起動し、チャットや MCP ツールの利用を開始できます。
主なファイル
ui/chat_window.py:メイン GUI ウィンドウ。チャット、履歴、設定、サーバー管理を処理しますagent/chat_history.py:チャット履歴を管理し、保存と読み込みを行いますworker.py:LLM および MCP サーバーとの非同期通信を処理しますagent/llm_ollama.py:Ollama の LLM と MCP ツールを統合し、ストリーミング応答を処理しますmcp_server/mcp_manager.py:MCP サーバー設定ファイルを管理し、検証します
MCP サーバーの拡張
- 新しい MCP サーバー情報を
mcp_config.jsonに追加します - MCP サーバーの実行ファイルを実装して準備します
- アプリケーションを再起動し、GUI で MCP サーバーの一覧を確認します
チャット履歴
- すべての会話は
chat_history.jsonに自動的に保存されます - GUI から過去のチャットを読み込むか、新しいチャットを開始できます
終了コマンド
- プログラムで
quit、exit、またはbyeと入力すると終了します
注意事項
- MCP サーバーを設定していなくても、基本的な LLM チャットは動作します
- 特に大規模な LLM モデルを使用する場合は、PC のパフォーマンスとメモリ使用量に注意してください
- MCP サーバーは Python、Node.js、その他の言語で実装でき、外部 MCP サーバーにも対応しています
ライセンス
MIT ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。