メインコンテンツまでスキップ

JSON 一括インポート

フォームからサーバーを 1 つずつ追加する方法に加えて、Elftia では JSON 設定を使用して複数の MCP サーバーを一度にインポートすることもできます。これは、特に次のような場面で便利です。

  • 別のツール(Claude Desktop や Cursor など)から MCP 設定を移行する
  • チーム内で統一されたサーバー設定を共有する
  • 新しいデバイスで MCP 環境をすばやく復元する
  • 関連する複数のサーバーを 1 回の操作で設定する

JSON インポートを開く

  1. MCP Servers ページを開きます
  2. Add ボタンをクリックします
  3. 表示されたフォームで JSON Import モードに切り替えます

JSON 形式

推奨形式: mcpServers 一括設定

これは推奨される JSON 形式で、Claude Desktop や同様のツールで使用される設定形式と互換性があります。複数のサーバーを一度に追加できます。

{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search@latest"],
"env": {
"BRAVE_API_KEY": "your-brave-api-key"
}
},
"web-reader": {
"url": "https://api.example.com/mcp",
"headers": {
"Authorization": "Bearer your-token"
}
}
}
}

単一サーバー形式

サーバーを 1 つだけ追加する場合は、簡略化された形式を使用できます。

{
"name": "my-server",
"type": "stdio",
"command": "npx",
"args": ["-y", "@example/mcp-server"]
}

JSON フィールドの説明

mcpServers 形式

mcpServers オブジェクトでは、各キーがサーバー名で、その値が設定オブジェクトです。

フィールド必須説明
commandstringStdio の場合は必須起動コマンド
argsstring[]いいえコマンド引数
envobjectいいえ環境変数のキーと値のペア
urlstringSSE/HTTP の場合は必須サーバーエンドポイント URL
headersobjectいいえHTTP リクエストヘッダー
typestringいいえトランスポート種別: stdiosse、または http

:::info 型の自動推論 type フィールドが指定されていない場合、システムが自動的に推論します。

  • command がある → stdio
  • url がある → sse :::

単一サーバー形式

フィールド必須説明
namestringはいサーバー名
typestringいいえトランスポート種別。自動的に推論されます
commandstringStdio の場合は必須起動コマンド
argsstring[]いいえコマンド引数
envobjectいいえ環境変数
urlstringSSE/HTTP の場合は必須サーバーエンドポイント URL
headersobjectいいえHTTP リクエストヘッダー

完全な例

例 1: ファイルシステム + 検索

{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/projects"]
},
"tavily-search": {
"command": "npx",
"args": ["-y", "tavily-mcp@latest"],
"env": {
"TAVILY_API_KEY": "tvly-xxxxxxxxxxxxx"
}
}
}
}

例 2: GitHub + データベース

{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxx"
}
},
"sqlite": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sqlite", "/path/to/database.db"]
}
}
}

例 3: ローカルサーバーとリモートサーバーの混在

{
"mcpServers": {
"local-files": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"web-search": {
"url": "https://api.z.ai/api/mcp/web_search_prime/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
},
"web-reader": {
"url": "https://api.z.ai/api/mcp/web_reader/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}

例 4: Python ツール(uvx を使用)

{
"mcpServers": {
"minimax-tools": {
"command": "uvx",
"args": ["minimax-coding-plan-mcp", "-y"],
"env": {
"MINIMAX_API_KEY": "your-minimax-key",
"MINIMAX_API_HOST": "https://api.minimaxi.com"
}
}
}
}

インポートの流れ

  1. JSON の内容を入力フィールドに貼り付けます
  2. システムが JSON 形式をリアルタイムで検証し、エラーがある場合は入力欄の下に表示します
  3. 検証に通ったら、Save をクリックします
  4. Stdio サーバーの場合、システムが必要な依存関係(npxuvx など)を自動的に確認します
  5. 依存関係が不足している場合は、インストールを促すプロンプトが表示されます
  6. すべてのサーバーが追加されると、サーバー一覧が自動的に更新されます

検証ルール

  • JSON は有効な JSON である必要があります
  • mcpServers 形式: 各サーバー設定には、commandurl、または type の少なくとも 1 つを含める必要があります
  • 単一サーバー形式: stdio 型には command が必要です。http/sse 型には url が必要です
  • サーバー名は既存のサーバー名と重複してはいけません

デバイス間で設定を共有する

設定をエクスポートする

現時点では、Elftia の MCP 設定はローカルの mcp-config ファイルに保存されています。次の手順で共有できます。

  1. MCP サーバー一覧ページでサーバーを編集し、完全な設定を確認します
  2. 設定を手動で JSON 形式にまとめ、共有用のファイルとして保存します

Claude Desktop から移行する

以前に Claude Desktop で MCP サーバーを設定していた場合は、その設定ファイルから mcpServers セクションを直接コピーできます。

  1. Claude Desktop の設定ファイル(通常は ~/.claude/config.json)を開きます
  2. mcpServers セクションを見つけます
  3. 上記で説明した JSON として整形します
  4. JSON Import を使用して Elftia にインポートします

:::caution 重要な注意事項

  • インポートする前に、環境変数内の API キーやその他の機密値が正しいことを確認してください
  • 設定をエクスポートする際は、API キーやその他の機密情報を公開しないよう注意してください
  • ファイルパスは、対象デバイス上の実際のパスに合わせて調整する必要があります :::

トラブルシューティング

JSON 形式エラー

症状: JSON を入力すると、下に赤いエラーメッセージが表示されます。

解決策:

  • JSON 構文を確認します(括弧、引用符、カンマが対応しており、正しい位置にある必要があります)
  • JSON 整形ツールを使用して形式を検証します
  • エスケープ文字に注意します(例: Windows パスのバックスラッシュは \\ と記述する必要があります)

一部のサーバーを追加できない

症状: 一括インポート後、一部のサーバーが一覧に表示されません。

解決策:

  • サーバー名が重複していないか確認します(名前は一意である必要があります)
  • コンソールにエラーメッセージがないか確認します
  • 追加に失敗したサーバーを、フォームから個別に追加してみます

次のステップ