MCP-CLI-HOST について
MCP-CLI-HOST は、LLM が Model Context Protocol 経由で外部ツールを呼び出せるコマンドライン型の MCP クライアントです。OpenAI、Azure OpenAI、Deepseek、Ollama、Gemini などのモデルに対応し、複数のモデルと MCP サーバーをターミナルから統一的に扱いたいユーザーに向いています。
主な機能
- 01複数の MCP サーバーへの同時接続
- 02ツールの動的な検出と統合
- 03サーバーの場所と引数の設定
- 04コンテキスト管理のためのメッセージ履歴ウィンドウ
- 05Sampling、Roots、Elicitation、リソース、プロンプトへの対応
- 06Streamable HTTP のリモートサーバー対応
活用シーン
- 01複数の LLM と対話しながらローカルまたはリモートのツールを呼び出す
- 02SQLite やファイルシステムなどの MCP サーバーを通じてデータを照会・操作する
- 03実行時に特定のツールを除外して利用可能な機能を制御する
MCP 対応
MCP クライアントとして ~/.mcp.json などの設定を読み込み、STDIO および Streamable HTTP 形式の MCP サーバーに接続します。サーバーが提供するツール、リソース、プロンプトを LLM から利用できるようにします。
詳細
MCPCLIHost 🤖
LLM(大規模言語モデル)がModel Context Protocol(MCP)を通じて外部ツールとやり取りできるようにするCLIホストアプリケーションです。現在、Openai、Azure Openai、Deepseek、Ollamaのモデルをサポートしています。
英語 | 簡体字中国語
外観 🤠

機能 ✨
- 複数のLLMモデルとの対話型会話
- 複数のMCPサーバーの同時利用をサポート
- 動的なツールの検出と統合
- MCPサーバーの場所と引数を設定可能
- コンテキスト管理用のメッセージ履歴ウィンドウを設定可能
- サーバー側のエラーを監視/追跡
- Sampling、Roots、Elicitation、リソースの取得、プロンプトをサポート
- 実行中に特定のツールを除外可能
- 接続時にMCPサーバーカードを表示
- ツール呼び出しの出力から画像を表示
最新の更新 💌
- [2025-11-26] ツール呼び出しの出力から画像を表示する機能をサポート
- [2025-07-18] Streamable HTTP mcp serverをサポート。OAuthプロセスはまだサポートされていません
- [2025-07-02] Elicitationをサポート
- [2025-06-27] MCPサーバーの
Promptsに対応:リンク - [2025-06-20] MCPサーバーの
Resourcesに対応:リンク
環境設定 🔧
- OpenaiとDeepseekの場合:
export OPENAI_API_KEY='your-api-key'
Openaiのデフォルトのbase_urlは「https://api.openai.com/v1」です。
Deepseekの場合は「https://api.deepseek.com」です。`--base-url`で変更できます。
- Ollamaの場合は、まずセットアップが必要です:
- https://ollama.ai からOllamaをインストールします
- 使用するモデルをプルします:
ollama pull mistral
- Ollamaが実行中であることを確認します:
ollama serve
- Azure Openaiの場合:
export AZURE_OPENAI_DEPLOYMENT='your-azure-deployment'
export AZURE_OPENAI_API_KEY='your-azure-openai-api-key'
export AZURE_OPENAI_API_VERSION='your-azure-openai-api-version'
export AZURE_OPENAI_ENDPOINT='your-azure-openai-endpoint'
- Google Geminiの場合
export GEMINI_API_KEY='your-gemini-api-token'
インストール 📦
pip install mcp-cli-host
設定 ⚙️
MCPCLIHostは設定ファイルを~/.mcp.jsonから自動的に検出します。--configフラグを使って、カスタムの場所を指定することもできます:
STDIO mcp server
{
"mcpServers": {
"sqlite": {
"command": "uvx",
"args": [
"mcp-server-sqlite",
"--db-path",
"/tmp/foo.db"
]
},
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/tmp"
]
}
}
}
各MCPサーバーエントリーには、次の項目が必要です:
command:実行するコマンド(例:uvx、npx)args:コマンドの引数の配列:- SQLiteサーバーの場合:データベースのパスを指定した
mcp-server-sqlite - ファイルシステムサーバーの場合:ディレクトリのパスを指定した
@modelcontextprotocol/server-filesystem
- SQLiteサーバーの場合:データベースのパスを指定した
リモートmcp server(Streamable HTTPのみサポート)
{
"mcpServers": {
"github": {
"url": "https://api.githubcopilot.com/mcp/",
"headers": {"Authorization": "Bearer <your PAT>"}
}
}
}
使い方 🚀
MCPCLIHostは、統一されたインターフェースを通じてさまざまなAIモデルとやり取りできるCLIツールです。MCPサーバーを通じて、さまざまなツールをサポートします。
利用可能なモデル
モデルは--model(-m)フラグで指定できます:
- Deepseek:
deepseek:deepseek-chat - OpenAI:
openai:gpt-4 - Ollamaモデル:
ollama:modelname - Azure Openai:
azure:gpt-4-0613 - Gemini:
gemini:gemini-2.5-flash
例
# Use Ollama with Qwen model
mcpclihost -m ollama:qwen2.5:3b
# Use Deepseek
mcpclihost -m deepseek:deepseek-chat --sys-prompt 'You are a slightly playful assistant, please answer questions in a cute tone!'
フラグ
--config string:設定ファイルの場所(デフォルトは$HOME/mcp.json)--debug:デバッグログを有効にする--message-window int:コンテキストに保持するメッセージ数(デフォルト:10)-m, --model string:使用するモデル(形式:provider:model)(デフォルトは"anthropic:claude-3-5-sonnet-latest")--base-url string:OpenAI APIのベースURL(デフォルトはapi.openai.com)--roots string:MCPクライアントがサーバーに公開するファイルシステムの「roots」--sys-prompt string:システムプロンプト
対話型コマンド
チャット中に、次のコマンドを使用できます:
/help:利用可能なコマンドを表示/tools:利用可能なすべてのツールを一覧表示/exclude_tool tool_name:特定のツールを会話から除外/resources:利用可能なすべてのリソースを一覧表示/get_resource:URIで特定のリソースを取得。例:/get_resource resource_uri/prompts:利用可能なすべてのプロンプトを一覧表示/get_prompt:名前で特定のプロンプトを取得。例:/get_prompt prompt_name/servers:設定済みのMCPサーバーを一覧表示/history:会話履歴を表示/quit:いつでも終了
MCPサーバーとの互換性 🔌
MCPCliHostは、MCPに準拠するあらゆるサーバーで動作します。例やリファレンス実装については、MCP Servers Repositoryを参照してください。
既知の問題 🐛
SamplingとElicitationのシナリオで「Ctrl+c」を入力すると、asyncio.exceptions.CancelledErrorのようなエラーが発生してプロセスがクラッシュします。この問題は後日解決する予定です。
ライセンス 📄
このプロジェクトは Apache 2.0 License の下でライセンスされています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。