1MCP - One MCP Server for All について
1MCPは、複数のMCPサーバーを使うチームやコーディングエージェント向けの統合ランタイムです。複数サーバーを一つのプロセスにまとめ、CLIモードでツールを段階的に発見できます。
主な機能
- 01複数のMCPサーバーを集約
- 02instructions、inspect、runによる段階的な発見
- 03クライアントやセッションに応じたテンプレートサーバー
- 04プロンプトの集約とプリセット・フィルターの適用
活用シーン
- 01複数のコーディングエージェントでMCP一覧を共有
- 02タスクごとにエージェントのツール範囲を縮小
- 03リポジトリやセッション固有のサーバーを提供
- 04フィルターとランタイムを一元管理
MCP 対応
1MCPは上流のMCPサーバーを集約し、統合ランタイムを通じてクライアントに公開します。クライアントはCLI、stdioプロキシ、またはstreamable HTTPで接続できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
http://127.0.0.1:3050/mcp?app=cursorclaude mcp add --transport http agent http://127.0.0.1:3050/mcp?app=cursor{"mcpServers":{"agent":{"type":"http","url":"http://127.0.0.1:3050/mcp?app=cursor"}}}Cursor で開く{"servers":{"agent":{"type":"http","url":"http://127.0.0.1:3050/mcp?app=cursor"}}}VS Code で開く{"mcpServers":{"agent":{"type":"http","url":"http://127.0.0.1:3050/mcp?app=cursor"}}}{"mcpServers":{"agent":{"serverUrl":"http://127.0.0.1:3050/mcp?app=cursor"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
1MCP
1MCP は、統合型 MCP ランタイムです。1mcp serve は MCP サーバーを集約し、CLI モードでは Codex、Claude、Cursor などのツールを使用するエージェント向けに、より軽量なワークフローを提供します。
1MCP を選ぶ理由
多くの MCP 環境では、やがて次の 2 種類の煩雑さが生じます。
- 設定の煩雑さ:クライアントごとに、独自の MCP 接続設定、認証方法、フィルタリングルールが必要です。
- エージェントの煩雑さ:自律型セッションでは、コンテキストに最初から多くのツールやスキーマが含まれてしまいます。
1MCP は、これら両方に対応します。
1mcp serveにより、複数の MCP サーバーを前段で集約する単一のランタイムを利用できます。- CLI モードでは、
instructions、inspect、runを使って、エージェントがツールを段階的に検出できます。 - 静的サーバーは起動時に読み込めます。一方、テンプレートサーバーはクライアントごと、またはセッションごとのコンテキストに基づいて作成されます。
- プリセット、フィルター、指示の集約により、同じランタイムをさまざまなクライアントやプロジェクトに柔軟に適応させられます。
| アプローチ | 最適な用途 | トレードオフ |
|---|---|---|
| 1MCP CLI モード | Codex、Claude、エージェントのループ | 実行中の 1mcp serve インスタンスが必要です |
| 1MCP stdio プロキシ | クライアント間での最大限の互換性 | serve への依存は変わらず、認証対応の HTTP クライアントにはより直接的な経路があります |
| 直接 streamable HTTP | MCP ネイティブの HTTP クライアント | プロジェクトコンテキストがなく、.1mcprc も使用できません。また、より広範なツール群が直接公開されます |
| カスタムプロキシ | 一時的な互換性レイヤー | 検出、フィルタリング、認証、ランタイムのライフサイクルを自分で管理します |
エージェントユーザー向けクイックスタート
このページは AI エージェントのユーザー向けに最適化されています。5 分で実現することはシンプルです。実際の 1mcp serve ランタイムを起動し、cli-setup でエージェントを接続してから、instructions -> inspect -> run のワークフローを確認します。
あなた — セットアップ: 1MCP をインストールし、上流サーバーを 1 つ追加して、ランタイムを起動します。
npm install -g @1mcp/agent
1mcp mcp add context7 -- npx -y @upstash/context7-mcp
1mcp serve
あなた — クライアントのセットアップ: 2 つ目のシェルで、エージェントを CLI モードに接続します。
1mcp cli-setup --codex
# or
1mcp cli-setup --claude --scope repo --repo-root .
AI エージェント — 起動後: このワークフローに従ってください。フックによって最新の指示がすでに届いている場合は、instructions を省略します。ランタイムは起動したままにしてください。これらのエージェントコマンドを手動で繰り返す必要はありません。起動時にガイダンスが届き、セッションの所有者が設定されることを確認してください。名前付き、または暗黙的に検出されたローカルランタイムでは、対応する Codex セッションは所有者と割り当てられたプロジェクトを自動的に解決します。Claude と、自動的な所有者の検索に対応していないホストでは、以下のコマンドに独自のブートストラップ --project-owner <own-file> を追加します。各ワーカーはそれぞれの認証情報を使用します。
# Only if current target guidance is missing or needs refreshing:
1mcp instructions
1mcp inspect context7
1mcp inspect context7/query-docs
1mcp run context7/query-docs --args '{"libraryId":"/mongodb/docs","query":"aggregation pipeline"}'
成功条件と別の方法も含む詳細な手順については、クイックスタートガイドをご覧ください。
各エージェントでは、モードを 1 つだけ選択してください。そのエージェントを CLI モードに切り替える場合は、先に以前の直接 MCP 設定を削除してください。
プロジェクトとワークツリーをまたいで作業する
リポジトリや Git ワークツリー間で、単一のローカルランタイムを使用できます。インストール済みのバックエンドを mcp setup で設定すると、エージェントは呼び出しごとにチェックアウトを選択します。
1mcp inspect codegraph --project /absolute/checkout
セッションに割り当てられたチェックアウトでは、--project を省略してください。明示的なオーバーライドを指定しても、このデフォルトは変更されません。セットアップ、プロジェクトセット、独立したワーカー、任意の準備、安全なクリーンアップについては、プロジェクトとワークツリーをまたいで作業する(中文)を参照してください。
CLI モードを使用する理由
CLI モードは、エージェント形式のセッションにおける主要なワークフローです。MCP をバックエンドプロトコルとして維持しながら、各ステップでエージェントに表示する内容を絞り込みます。
instructionsは、現在のランタイムと推奨されるフローを説明しますinspectを使うと、エージェントは必要なサーバーまたはツールのみを検出できますrunは、スキーマを確認した後に選択したツールを実行します
これにより、1mcp serve の背後にある統合ランタイムを維持したまま、エージェントのループで扱う範囲を縮小できます。
別の方法を選ぶ
Stdio プロキシ
プロジェクトコンテキストを維持しつつ、幅広いクライアントとの互換性を確保したい場合は、1mcp proxy を使用してください。
CLI モードに続く推奨の代替手段です。次の利点があります。
- ほとんどの AI クライアントがすでにサポートしている stdio トランスポートで動作します
.1mcprcを通じてプロジェクトコンテキストを維持します- プロジェクトまたはセッションのコンテキストから解決されるテンプレート MCP サーバーをサポートします
- グローバルでの一度限りのセットアップとプロジェクトごとの設定で、より簡単に導入できます
直接の stdio モードは推奨される方法ではありません。1MCP の起動は、最小構成の単独 stdio セットアップより遅いため、主にデバッグに使用します。
MCP に直接接続する
集約されたランタイムとストリーミング可能な HTTP 経由で通信したいクライアントでは、MCP への直接接続も引き続きサポートされています。
例:
{
"mcpServers": {
"1mcp": {
"url": "http://127.0.0.1:3050/mcp?app=cursor"
}
}
}
claude mcp add -t http 1mcp "http://127.0.0.1:3050/mcp?app=claude-code"
クライアントがすでに MCP にネイティブ対応していて、プロジェクトコンテキストなしで動作でき、CLI モードを使いたくない場合は、この方法を使用してください。Codex、Claude、Cursor などのエージェントループでは、まず CLI モードを、次に proxy を優先してください。
ランタイムの運用担当者
ランタイム自体を設定またはデプロイする場合は、詳しいドキュメントを参照してください。
コントリビューター
動作の仕組み
flowchart LR
A[User or Agent] --> B[1mcp serve]
B --> C[Static servers loaded at startup]
B --> D[Template servers resolved from client or session context]
A --> E[CLI mode: instructions -> inspect -> run]
E --> B
F[Direct streamable HTTP client] --> B
G[stdio-compatible client] --> H[1mcp proxy]
H --> B
1MCP は 1mcp serve の背後で集約ランタイムとして動作します。静的サーバーは起動時の設定に基づいて準備され、テンプレートサーバーはクライアントのコンテキストが判明した時点で具体化されます。また、ランタイムでは HTTP リスナーを早期に利用可能にするための非同期読み込みと、安定したツールサーフェスを実現する遅延読み込みを使用できます。指示の集約、プリセット、通知は、ランタイムの外部ではなく、ランタイムと並行して機能します。
遅延読み込みは、安定したツールサーフェスとの互換性を確保するためのオプトインモードです。バックエンドの検出および呼び出しサーフェスを tool_list、tool_schema、tool_invoke に保つことで、対応するエージェントが MCP ツールテーブルを置き換えることなく、ツールを段階的に検出できるようにします。明示的に有効化された内部管理ツールは、引き続き直接公開されます。遅延読み込みによって初期スキーマのペイロードは減少しますが、バックエンドへの接続やプロセスが減るわけではなく、同期起動時のバインドが早まることも、孤立したプロキシプロセスが修復されることもありません。非同期処理時の遅延サーバーの可視性に関する契約については、#392 を参照してください。
主な機能
- 多数の MCP サーバーを、単一の
serveプロセスの背後で統合して実行 1mcp instructions、1mcp inspect <server>、1mcp inspect <server>/<tool>、1mcp run <server>/<tool> --args '<json>'による段階的な検出に対応した CLI モード- クライアントまたはセッションごとに解決するテンプレートサーバー
- クライアントが機能の変更を反映できる場合に、HTTP リスナーを早期に利用可能にするオプトイン方式の非同期読み込み
- 安定した段階的検出用のツール構成と、より小さな初期スキーマを実現するオプトイン方式の遅延読み込み
- 管理対象の stdio バックエンドに対するオプトイン方式の自動復旧。ヘルス/ステータスの確認と、オペレーターによる再起動制御にも対応
- 静的サーバーとテンプレートを利用するサーバーを横断した指示の集約
- プリセット、フィルター、プリセット変更通知
- プロジェクトのコンテキストとテンプレートサーバーのサポートによる最大限の互換性を実現する
proxy - プロジェクトのコンテキストを必要としないネイティブ HTTP クライアント向けの、直接利用可能なストリーミング可能な HTTP MCP アクセス
一般的なユースケース
- コーディングエージェントに、安定した単一のランタイムと、より小さな作業範囲を提供します。
- 同じ MCP インベントリを Cursor、Claude Code、Codex、社内ツールで共有します。
- リポジトリ、ブランチ、セッションごとに、コンテキストに応じたテンプレートサーバーを公開します。
- アドホックなスクリプトで個別に実装する代わりに、認証、フィルタリング、プリセット、ランタイムのライフサイクルを一元管理します。
貢献/ライセンス
貢献を歓迎します。開発ワークフローについては CONTRIBUTING.md を、Apache 2.0 ライセンスについては LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。