MCP サーバーの追加
このページでは、Elftia で MCP サーバーを追加して設定する方法を説明します。Elftia は 3 種類のトランスポートをサポートしており、それぞれ設定手順が少し異なります。
MCP 管理ページを開く
- 左側のナビゲーションバーで MCP Servers ページをクリックします
- 右上の Add ボタンをクリックします
- 表示されたフォームで Form Input モードを選択します
JSON Import モードを使ってサーバーを一括追加することもできます。詳しくは JSON 一括インポート を参照してください。
Stdio サーバーの追加
Stdio は最も一般的なトランスポートで、ローカルのコマンドラインから起動する MCP サーバー(npm や pip パッケージなど)に使用されます。
設定手順
- Server name — 認識しやすい名前を入力します(例:
filesystem) - Transport type —
Stdioを選択します - Command — サーバーを起動するコマンドを入力します(例:
npx) - Arguments — 1 行に 1 つずつ引数を入力します:
-y@modelcontextprotocol/server-filesystem/path/to/allowed/directory
- Environment variables(任意)—
KEY=VALUE形式で 1 行に 1 つずつ入力します:API_KEY=your-api-keyDEBUG=true - Save をクリックします
設定フィールドの説明
| フィールド | 必須 | 説明 |
|---|---|---|
| Server name | はい | 一意の識別子。既存のサーバー名と重複してはいけません |
| Command | はい | 実行可能なコマンド。例: npx、uvx、node、python |
| Arguments | いいえ | コマンドに渡す引数のリスト。1 行に 1 つずつ指定します |
| Environment variables | いいえ | 子プロセス用の追加環境変数。現在のシステム環境を継承します |
一般的な Stdio サーバーの例
ファイルシステムサーバー:
| フィールド | 値 |
|---|---|
| Command | npx |
| Arguments | -y , @modelcontextprotocol/server-filesystem , /Users/yourname/Documents |
Brave Search サーバー:
| フィールド | 値 |
|---|---|
| Command | npx |
| Arguments | -y , @modelcontextprotocol/server-brave-search@latest |
| Environment variables | BRAVE_API_KEY=your-brave-api-key |
Tavily Search サーバー:
| フィールド | 値 |
|---|---|
| Command | npx |
| Arguments | -y , tavily-mcp@latest |
| Environment variables | TAVILY_API_KEY=your-tavily-api-key |
SSE サーバーの追加
SSE(Server-Sent Events)は、HTTP の長時間接続で通信するリモートホスト型の MCP サーバーに使用されます。
設定手順
- Server name — 名前を入力します(例:
web-search) - Transport type —
SSEを選択します - URL — サーバーの SSE エンドポイントアドレスを入力します
- Request headers(任意)—
Key=Value形式で 1 行に 1 つずつ入力します:Authorization=Bearer your-tokenX-API-Key=your-api-key - Environment variables(任意)— Stdio と同じです
- Save をクリックします
設定フィールドの説明
| フィールド | 必須 | 説明 |
|---|---|---|
| Server name | はい | 一意の識別子 |
| URL | はい | MCP サーバーの SSE エンドポイント URL |
| Request headers | いいえ | 認証などに使用する HTTP リクエストヘッダー |
| Environment variables | いいえ | 追加の環境変数 |
SSE サーバーの例
Zhipu Web Search:
| フィールド | 値 |
|---|---|
| URL | https://api.z.ai/api/mcp/web_search_prime/mcp |
| Request headers | Authorization=Bearer your-zhipu-api-key |
HTTP サーバーの追加
HTTP トランスポート(Streamable HTTP)は MCP 2025-03-26 仕様に基づく、より新しいトランスポートオプションです。
設定手順
- Server name — 名前を入力します
- Transport type —
HTTPを選択します - URL — サーバーの HTTP エンドポイントアドレスを入力します
- Request headers(任意)— SSE と同じです
- Save をクリックします
設定フィールドの説明
使用するトランスポートプロトコルだけが異なり、それ以外は SSE と同じです。
| フィールド | 必須 | 説明 |
|---|---|---|
| Server name | はい | 一意の識別子 |
| URL | はい | MCP サーバーの HTTP エンドポイント URL |
| Request headers | いいえ | HTTP リクエストヘッダー |
| Environment variables | いいえ | 追加の環境変数 |
HTTP サーバーの例
Zhipu Web Reader:
| フィールド | 値 |
|---|---|
| URL | https://api.z.ai/api/mcp/web_reader/mcp |
| Request headers | Authorization=Bearer your-zhipu-api-key |
依存関係チェック
Stdio サーバーを追加するとき、Elftia は必要な CLI ツールがインストールされているかを自動的に確認します:
| コマンド | 確認内容 | 自動インストール方法 |
|---|---|---|
npx / npm / node | Node.js ランタイム | Windows: winget; macOS: Homebrew; その他: 手動インストールを案内 |
uv / uvx | uv Python パッケージマネージャー | 公式インストールスクリプトで自動インストール |
不足している依存関係が検出されると、Elftia は自動インストール、または手動ダウンロードページへのリンクを提示するプロンプトを表示します。
依存関係チェックの動作
- まずシステム PATH でコマンドを探します
- 見つからない場合は、一般的なインストールディレクトリ(
~/.local/bin、~/.cargo/bin、npm グローバルディレクトリなど)を自動的にスキャンします - インストール後、利用可能かどうかを自動的に確認します
- 自動インストールできない依存関係については、ダウンロードページへのリンクを提供します
接続をテストする
サーバーを追加したら、すぐに接続をテストすることをおすすめします:
- MCP サーバー一覧で対象のサーバーを見つけます
- Test ボタンをクリックします
- 接続とツール検出が完了するまで待ちます
- 成功すると、ツール名の一覧とともに
Connected successfully. Found N tools.というメッセージが表示されます
公式プリセットを使用する
Elftia には、ワンクリックインストールに対応した一般的な MCP サーバー向けのプリセット設定が含まれています:
- MCP Servers ページで Official タブに切り替えます
- 利用可能なプリセットを参照します(カテゴリでフィルター: 検索、ビジョン、Web 閲覧、コードリポジトリなど)
- Install ボタンをクリックします
- API キーが必要な場合、システムは設定済みの LLM プロバイダーから自動関連付けを試みます。見つからない場合は、手動で入力する必要があります
現在サポートされている公式プリセット:
| プリセット | カテゴリ | トランスポート | API キーが必要 |
|---|---|---|---|
| MiniMax Coding Plan MCP | 汎用 | Stdio | はい |
| Zhipu Vision MCP | ビジョン | Stdio | はい |
| Zhipu Web Search | 検索 | HTTP | はい |
| Zhipu Web Reader | Web 閲覧 | HTTP | はい |
| Zhipu Zread | コードリポジトリ | HTTP | はい |
| Tavily Search | 検索 | Stdio | はい |
| Brave Search | 検索 | Stdio | はい |
トラブルシューティング
コマンドが見つからない
症状: Stdio サーバーを追加するときに、コマンドが存在しないというメッセージが表示される。
解決策:
- 関連するランタイムがインストールされていることを確認します(Node.js、Python など)
- ターミナルでコマンドを手動実行して確認します
- Elftia を再起動して PATH 環境変数を更新します
- コマンド名の代わりにフルパスを使用します(例:
/usr/local/bin/npx)
接続タイムアウト
症状: 接続テスト時に長時間応答がない。
解決策:
- ネットワーク接続を確認します(SSE/HTTP サーバーの場合)
- URL が正しいことを確認します。特にポートとパスを確認してください
- ファイアウォールやプロキシが接続をブロックしていないか確認します
- Stdio サーバーの場合、コマンドが正常に起動できることを確認します
認証エラー
症状: 接続は成功するが、ツール呼び出しが認証関連エラーで失敗する。
解決策:
- API キーが環境変数に正しく設定されていることを確認します
- SSE/HTTP サーバーの場合、リクエストヘッダー内の認証情報が正しい形式であることを確認します
- Bearer トークン形式に注意してください:
Authorization=Bearer your-token
ツールが表示されない
症状: サーバーには正常に接続できたが、会話にツールが表示されない。
解決策:
- サーバーが有効状態(
isActiveが true)であることを確認します - MCP モードが
disabledに設定されていないか確認します - 手動モードでは、サーバーが選択されていることを確認します
- Discover ボタンを使ってツール一覧を手動で更新してみます
- ツールキャッシュは 5 分ごとに期限切れになります。キャッシュが更新されるのを待つか、再接続してください
次のステップ
- JSON 一括インポート — JSON 経由で複数のサーバーをすばやくインポートする
- MCP ツールの使用 — 会話中にツールがどのように使用されるかを学ぶ