devcontainer-mcp: AIエージェントに独自の開発環境を与え、あなたの環境は守る

devcontainer-mcpは、AIコーディングエージェント(Copilot、Claude、Cursor、その他MCPクライアント)が、ローカルDocker、DevPod、GitHub Codespacesの3つのバックエンドで開発コンテナを作成、管理、操作できるようにするMCPサーバーです。エージェントは隔離されたコンテナ内でコードをビルド、テスト、出荷します。ラップトップはクリーンなままです。
問題
AIエージェントがコードを実行すると、ホストマシン上で実行されるため、以下の問題が発生します:
- ホストの汚染 — エージェントがパッケージをインストールし、PATHを変更し、ビルドアーティファクトを残す
- 「私のマシンでは動く」 — エージェントがローカルのツールチェーンが本番環境と一致していると仮定する
- 隔離の欠如 — あるプロジェクトの依存関係が別のプロジェクトを壊す
- セキュリティリスク — エージェントがユーザーの権限で任意のコマンドを実行する
- ハードウェアの制約 — ローカルマシンのリソースに制限される
解決策
devcontainer仕様は、再現可能なコンテナベースの開発環境をすでに定義しています。devcontainer-mcpは、45のMCPツール(認証、devcontainer CLI、DevPod、Codespacesバックエンドにわたる)を公開し、任意のAIエージェントが以下の操作を実行できるようにします:
- 任意のリポジトリから開発コンテナを起動 — ローカル、クラウドVM、またはCodespacesで
- コンテナ内でコマンドを実行 — ビルド、テスト、リンター、何でも
- ライフサイクルを管理 — 停止、再起動、完了時に削除
- クラウドプロバイダー(GitHub、AWS、Azure、GCP)に対して認証 — 生のトークンを見ることなく
クイックインストール
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/aniongithub/devcontainer-mcp/main/install.sh | bashWindows(WSL経由):
Invoke-RestMethod https://github.com/aniongithub/devcontainer-mcp/releases/latest/download/install.ps1 | Invoke-ExpressionバイナリはWSL内で実行されます。Windows上のMCPクライアントは、wsl ~/.local/bin/devcontainer-mcp serve で起動します。WSL 2が必要です。
バックエンドCLI(devpod、devcontainer、gh)は実行時に検出されます。不足している場合、MCPサーバーはインストール手順を含む役立つエラーを返します。バイナリはlinux-x64、linux-arm64、darwin-x64、darwin-arm64で利用可能です。
3つのバックエンド、1つのインターフェース
| バックエンド | 最適な用途 | 必要条件 | 認証が必要? |
|---|---|---|---|
| devcontainer CLI | ローカルDocker — 高速、シンプル | @devcontainers/cli + Docker | いいえ |
| DevPod | マルチクラウド: Docker、K8s、AWS、Azure、GCP | DevPod CLI | オプション |
| Codespaces | GitHubホストのクラウド環境 | gh CLI | はい |
認証ブローカー
エージェントは生のトークンを決して見ません。代わりに:
auth_status(provider)— 利用可能なアカウントとスコープを一覧表示auth_login(provider, scopes?)— ログインを開始、ブラウザを開き、デバイスコードを処理auth_select(id)— アクティブなアカウントを切り替えauth_logout(id)— 資格情報を取り消し
サポートされているプロバイダー: GitHub、AWS、Azure、GCP、Kubernetes。Codespacesツールは認証ハンドル(例:github-aniongithub)を必要とします。MCPサーバーは、各呼び出しでCLIのネイティブキーリングを介して実際のトークンに解決します。
ワークフロー例
エージェント: 「このプロジェクトをビルドしましょう...」
auth_status("github")→ アカウントを選択codespaces_create(auth: "github-you", repo: "your/repo")codespaces_ssh(auth: "github-you", codespace: "...", command: "cargo build")- ✅ クラウドでビルド完了。あなたのラップトップは何もしませんでした。
📖 全文を読む: HN AI Agents
👀 See Also

AIエージェントのための複雑な検索パイプラインを、シンプルなgitコマンドで置き換える
ある開発者が、3GBのDockerイメージを、AIエージェントがgit log、grep、git diffなどの読み取り専用シェルコマンドをメモリリポジトリで直接実行できる単一ツールに置き換えました。

the-knowledge-guy: あなたの本棚をクロードコードスキルで学習パートナーに変える
Claude Codeスキルセットで、PDF/EPUBの書籍をローカルで取り込み、質問に答えたり、トピックごとに学んだり、チートシートを抽出できます。すべての処理はライブラリ全体の引用付きで行われます。

Loom: 複雑なAIタスクのためのローカル実行ハーネス
Loomは、複雑なタスクを管理するために設計されたオープンソースのローカル実行ハーネスです。約50のツール、繰り返し可能なワークフローのためのカスタムパッケージプラグインシステム、CLIとMCPサーバーインターフェースを備えた構造化されたプロセスを提供します。

AutoSkillUpdate:古いスキルを検出するClaudeコードプラグイン
AutoSkillUpdateは、コードベースをスキャンし、既存のスキルと比較してドリフトを特定するオープンソースのClaude Codeプラグインです。ファイルパスと行参照を含むドリフトレポートを提供し、ユーザーの確認を得て古くなったスキルを書き換えるオプションを提供します。