/ ディレクトリ / プレイグラウンド / 1MCP Agent
● コミュニティ 1mcp-app ⚡ 即起動

1MCP Agent

作者 1mcp-app · 1mcp-app/agent

使用する全 MCP サーバーを 1 つのエンドポイントに集約する。設定の共有・認証の共有・名前空間付きツール名、そして変更はここ 1 箇所で済む。

1mcp/agent は MCP サーバーを統合するプロキシ。全てのサーバー(filesystem・github・postgres・sentry など)を一度設定すれば、クライアント(Claude Desktop / Cursor / Cline)から見えるのは 1 つの MCP だけ。ツールは名前空間で管理され(github__create_issue など)、エージェントが各サーバーの起動・ヘルスチェックを担当。クライアントを再起動せずに設定をホットリロードできる。

なぜ使うのか

主な機能

ライブデモ

実際の動作

onemcp-agent.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "onemcp-agent": {
      "command": "npx",
      "args": [
        "-y",
        "@1mcp/agent"
      ]
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "onemcp-agent": {
      "command": "npx",
      "args": [
        "-y",
        "@1mcp/agent"
      ]
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "onemcp-agent": {
      "command": "npx",
      "args": [
        "-y",
        "@1mcp/agent"
      ]
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "onemcp-agent": {
      "command": "npx",
      "args": [
        "-y",
        "@1mcp/agent"
      ]
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "onemcp-agent",
      "command": "npx",
      "args": [
        "-y",
        "@1mcp/agent"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "onemcp-agent": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@1mcp/agent"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add onemcp-agent -- npx -y @1mcp/agent

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: 1MCP Agent

20 以上の MCP サーバーを 1 つのエンドポイントに集約する

👤 多数の MCP を設定しているパワーユーザー ⏱ ~25 min intermediate

使うタイミング: claude_desktop_config.json に 20 件以上のエントリがあり、サーバーの追加・削除が煩わしくなっているとき。

前提条件
  • 1mcp のインストール — npx -y @1mcp/agent(またはドキュメントに従って恒久的にインストール)
フロー
  1. 既存のサーバーを 1mcp の設定に移行する
    Use onemcp-agent. Convert my current MCP client config into a 1mcp config file with each server prefixed by its name.✓ コピーしました
    → 全サーバーとプレフィックスを含む 1mcp.config.json が生成される
  2. クライアントを 1mcp に向ける
    Replace my client's MCP config with a single entry pointing at 1mcp; keep a backup.✓ コピーしました
    → クライアントから見えるサーバーが 1 つになり、プレフィックス付きのツールが一覧表示される
  3. 新しいサーバーをホットアドする
    Add the new arxiv MCP to 1mcp config and reload — without restarting Claude Desktop.✓ コピーしました
    → 次の list_tools 更新で新しいツールが表示される

結果: 全 MCP サーバーの唯一の管理場所が整い、反復作業が速くなる。

注意点
  • プレフィックス付きでツール名が長くなる — サーバーごとに短いプレフィックスのエイリアスを使う(gh・fs・pg など)

チーム共有の MCP スタックを開発用マシンで運用する

👤 共有インフラを使う小規模開発チーム ⏱ ~45 min advanced

使うタイミング: チーム全員が同じ承認済み MCP サーバーと機密情報を共有し、設定を重複させたくないとき。

前提条件
  • 到達可能なホスト — 認証付き SSE / HTTP トランスポートを公開した状態で開発用マシンで 1mcp を実行する
フロー
  1. 設定を集約する
    Configure 1mcp on the dev box with our team's MCP set + shared auth tokens. Expose via authenticated SSE.✓ コピーしました
    → スタックが稼働し、SSE エンドポイントがベアラートークンを要求する
  2. 1 つのクライアント設定を配布する
    Generate per-developer client snippets pointing to the shared SSE URL with their personal bearer.✓ コピーしました
    → 開発者 1 人につき 1 つのスニペットが生成される

結果: 各自が 20 件の設定を管理することなく、チームが承認済みの MCP セットを使える。

注意点
  • 単一ホストは単一障害点になる — ローカル設定へのフォールバック手順を文書化する。またはロードバランサー背後にレプリカを構成する

信頼できない MCP を 1mcp の背後に隔離する

👤 コミュニティの MCP を試しているセキュリティ意識の高いユーザー ⏱ ~30 min advanced

使うタイミング: サードパーティ MCP を試したいが、完全な環境やファイルシステムへのアクセスを与えたくないとき。

フロー
  1. コンテナ内で 1mcp を実行する
    Set up 1mcp in a Docker container with minimal env; mount only ./scratch/. Add the untrusted MCP under a 'sandbox' prefix.✓ コピーしました
    → コンテナが起動し、sandbox MCP から見えるのは sandbox/ のツールのみ
  2. 1 つのタスクに限定して使用する
    Run the experimental task only with sandbox__ tools.✓ コピーしました
    → タスクが完了し、コンテナ外への影響がない

結果: 重要な情報を渡さずに信頼できないサーバーを試せる。

注意点
  • コンテナ内からでもネットワークにアクセスできることを忘れる — 外部通信が問題になる場合は --network none または制限付きネットワーク名前空間を使用する

組み合わせ

他のMCPと組み合わせて10倍の力を

onemcp-agent + filesystem + github

日常使いのサーバーセットを集約するアグリゲータとして設定する

Configure 1mcp with filesystem (prefix fs) + github (prefix gh) + postgres (prefix pg). Use fs__read_file and gh__create_issue from one client.✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
list_servers ヘルスチェック・デバッグ 0
reload_config config_path? 1mcp.config.json を編集した後 0
restart_server server_name 子サーバーが正常に動作しないとき 0
<prefix>__<tool> as per child tool 全ての子ツールはプレフィックス付きで公開される depends on child server

コストと制限

運用コスト

APIクォータ
呼び出しごとのオーバーヘッドはごくわずか
呼び出しあたりのトークン
0 — プロキシが通過させるだけ。ツールリストのコストは子サーバーの合計
金額
無料
ヒント
使用頻度の低い子サーバーは削除せず設定フラグで無効化する。プロンプトをスリムに保てる

セキュリティ

権限、シークレット、影響範囲

最小スコープ: Whatever child servers need
認証情報の保管: 子サーバーの環境変数は 1mcp.config.json に集約される。このファイルを厳重に保護すること
データ送信先: 子サーバーが行う通信に依存する。1mcp 自体はリモート SSE を設定しない限り外部通信しない
絶対に付与しない: 機密情報を含む設定ファイルを誰でも読めるパーミッションにしない

トラブルシューティング

よくあるエラーと対処法

子サーバーが起動しない

その子サーバーの stderr を 1mcp のログで確認する。通常は環境変数の欠如またはコマンドパスの誤り

確認: Try the child's command standalone in a terminal
ツール名が衝突する

設定でサーバーごとのプレフィックスを追加または短縮する

確認: list_servers shows current prefixes
ホットリロードで変更が反映されない

トランスポートモードやポートの変更は再起動が必要。影響する子サーバーで restart_server を実行するか、1mcp 全体を再起動する

最初のレスポンスが遅い

子サーバーはデフォルトで遅延起動する。頻繁に使うサーバーは 'eager: true' を設定する

代替案

1MCP Agent 他との比較

代替案代わりに使う場面トレードオフ
metamcpUI で管理できてチームワークフローを持つアグリゲータが欲しいときより重い。意見が強い
mcp-router (TheLunarCompany/lunar)ガバナンスと監査ログが必要な場合(エンタープライズ向け)機能面が大きい。セットアップに手間がかかる

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る