mcpField
E
Emfirge

Emfirge

ローカル
emfirge.cloudセキュリティ43 日前に更新

Emfirge について

Emfirgeは、モデル化したAWSクラウドのブランチでインフラ変更を試す読み取り専用ハーネスです。適用前にセキュリティ、依存関係、コンプライアンス、コスト、上限を評価し、AWS識別子はLLMに渡る前にローカルでトークン化します。

主な機能

  1. 01使い捨てブランチでAWS変更をモデル化
  2. 02Terraform、CloudFormation、API、CLI入力に対応
  3. 03セキュリティ、依存関係、コンプライアンスを評価
  4. 04ネットワーク公開範囲と推定コストを比較
  5. 05pass、warn、blockの判定を返却

活用シーン

  1. 01AWSリソース削除の影響を確認
  2. 02本番適用前にインフラ変更をレビュー
  3. 03変更による影響を受けるコンプライアンス統制を特定
  4. 04変更前後のコストと公開範囲を比較

MCP 対応

EmfirgeはMCPサーバーとCLIを備え、MCPクライアントからAWSのスキャンやモデル化したブランチの操作を行えます。サーバーは読み取り専用で評価し、承認済み変更をクラウドに適用しません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"theanshsonkar-emfirge": {
"command": "npx",
"args": [
"-y",
"@emfirge/mcp"
],
"env": {
"EMFIRGE_PRIVACY": "<EMFIRGE_PRIVACY>",
"EMFIRGE_BASE_URL": "<EMFIRGE_BASE_URL>"
}
}
}
}
起動コマンドnpx -y @emfirge/mcp
設定が必要な環境変数
EMFIRGE_PRIVACYTokenization mode: strict (default), balanced, or off
EMFIRGE_BASE_URLBackend URL — override to point at a self-hosted backend

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@emfirge/mcp0.2.1

ツール

7

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

🛡️ Emfirge

エージェントにクラウドのブランチを与えましょう。

AI エージェントは、実際のインフラストラクチャを変え始めています。
Emfirge は、稼働中の AWS のブランチ上で、まず試せるようにするハーネスです。
変更が実際に何をするのかを示すレンズで評価します。

始める · ドキュメント · npm

Ansh Sonkar が開発


エージェントが「使っていないデータベースを整理」したがっています

Emfirge がなければ、エージェントは DeleteDBInstance を呼び出し、そのデータベースの用途をオンコールチャンネルで知ることになります。

Emfirge があれば、エージェントはまずブランチ上で実行します。

you    ▸ Clean up the unused databases in us-east-1.

agent  ▸ I tried it on a branch first. Verdict: BLOCK

         ✗ recently_used
           CloudWatch metrics show a deleted resource was used in the last 90 days
           → orders-db

         ✗ data_store_deleted_no_recovery_point
           Deleted data store has no recovery point
           → orders-db

         Branch #2, deleting only legacy-reports-db, passes.
         Want the exact API call for that one?

本番環境には何も触れていません。エージェントは計画を変更し、あなたに渡す内容は、合格した判定にハッシュでひも付けられています。

出力は簡略化されています。理由コードとメッセージは、エンジンが実際に出力するものです。


3 つのレイヤー

🧰 ハーネス:プロダクト

エージェントが作業する場所、参照できる内容、受け取る結果、そして省略できないことを定めます。

  • 常に読み取り専用です。 Emfirge はクラウドに書き込みません。承認済みの変更は、あなたまたはパイプラインが適用します。
  • デフォルトでプライベートです。 LLM が参照する前に、AWS の識別子はあなたのマシン上でトークン化されます。
  • 黙って合格にはしません。 Emfirge がモデル化できない変更は pass になりません。チェックの不足は隠さず報告します。
🌿 ブランチ:エンジン

稼働中の AWS をモデル化した Git スタイルのコピーです。ベーススナップショットと、順序付けされた変更のリストで構成されます。

  • Git スタイルの操作。 コードの場合と同じように、フォーク、ロールバック、比較、破棄ができます。
  • さまざまな入力に対応。 型付き変更、Terraform のプラン、CloudFormation の変更セット、AWS API 呼び出し、AWS CLI コマンドを入力できます。同じ変更であれば、どの方法で入力しても同じ結果になります。
  • 両側の差分を表示。 追加・削除された内容、インターネットから到達可能になった内容、変更前後のコストを確認できます。
🔍 レンズ:評価する項目

各レンズが異なる観点からブランチを評価し、結果を統合して 1 つの pass / warn / block を出します。

レンズ確認する内容
✅セキュリティ何かが公開される、または権限昇格の経路が開かれることはありますか?
✅依存関係これを削除すると何が壊れますか?まだ使用されていますか?復旧できますか?
✅コンプライアンスCIS 1.5 と SOC 2 のどの統制が切り替わりますか?(統制リストは Prowler が公開しているデータに基づきます。カバーされていない統制が pass になることはありません)
🟡コスト変更前後のコストはいくらですか?(AWS が公開する Price List に基づきます。us-east-1 のみ。LCU は含みません)
🟡制限AWS のクォータに達しますか?(初期段階では AWS のデフォルトクォータを使用します)
🔜独自のレンズ独自の評価器を用意し、同じブランチの仕様に対して実行できます。

試してみる

npx @emfirge/mcp install

次に、アシスタントに次のように伝えます。

Help me set up Emfirge, then scan arn:aws:iam::123456789012:role/EmfirgeReadOnly in us-east-1

アカウント ID はプレースホルダーです。セットアップでは、読み取り専用ロール用のワンクリック CloudFormation リンクが用意されます。スタックはいつでも削除して、アクセスを取り消せます。

インストーラーは Claude Desktop、Claude Code、Cursor、Kiro、Cline、Continue、Codex をセットアップします。また、ほかの MCP クライアントも手動で設定できます。API またはブランチ CLIも利用できます。すべてのツールについては、MCP READMEをご覧ください。


信頼性を重視した設計

エンジンのすべての動作は、番号付きの法則によって定められています。これは常に成立しなければならないプロパティテストです。現在までに48個あり、たとえば次のようなものがあります。

L1: 空のブランチは、ライブスキャンとまったく同じスコアになります。
L7: 同じスナップショットと変更には、常に同じ判定が返されます。
L9: お客様の識別子がフリーテキストの出力に現れることはありません。
L12: 証拠によって判定が厳しくなることはあっても、緩くなることはありません。
L21: Terraform のセキュリティグループルールと、それに相当する AWS API 呼び出しには、同じ判定が返されます。

チェックには手書きのリストではなく、公開ソースを使用しています。pathfinding.cloud のエスカレーションパス、policy_sentry の IAM データ、AWS スキーマ、Prowler のコンプライアンスデータ、AWS Price List がその例です。Checkov は各ブランチの判定でアドバイザリースキャナーとして実行されます(警告を出しますが、それ自体でブロックすることはありません)。Trivy は無効になっています。すべての CI 実行でスコアカードが公開されます。

Emfirge が主張しないこと: ブランチはお客様のクラウドをモデル化したものであるため、pass は証拠であり、保証ではありません。チェックの一部でもスキップされた場合は、その旨が判定に表示されます。現時点で Emfirge は安全なワークスペースであり、ライブの適用をブロックするゲートではありません。


ブランチで現在モデル化できる変更
リソースタイプ追加変更削除
EC2 インスタンス、セキュリティグループ、RDS インスタンス、S3 バケット、Lambda 関数、ネットワーク ACL✅✅✅
IAM ロール(信頼ポリシーを含む)✅✅✅
IAM ユーザー、NAT ゲートウェイ✅
RDS スナップショット✅✅
EBS ボリューム✅✅
EBS スナップショット✅
ルートテーブル✅✅
IAM ロールポリシー✅

ライブの GET /branches/capabilities エンドポイントが正式な一覧です。また、GET /branches/field-catalog には、設定可能なすべてのフィールドと、それが表す AWS API メンバーが記載されています。ほとんどのリソースタイプには tags もあり、タグを変更するとユーザータグのセット全体が置き換わります。モデル化されていない項目がある場合、判定の信頼度は下がり、合格にはなりません。

リポジトリの構成とライセンス
パス内容ライセンス
backend/エンジン:コレクター、グラフ、ブランチ、入力アダプター、レンズ、判定、ハンドバックAGPL-3.0
mcp/@emfirge/mcp、MCP サーバーおよび CLIApache-2.0
site/emfirge.cloud/docs のドキュメントAGPL-3.0
iam-role.yaml読み取り専用の顧客ロールAGPL-3.0

開発者

Emfirge は Ansh Sonkar(@theanshsonkar)が設計・開発しています。エンジン、ブランチモデル、レンズ、MCP を手がけています。

AWS 上で AI エージェントを開発している方、または Emfirge について話したい方は、[email protected] までメールでご連絡ください。


コントリビューション · セキュリティ · プライバシー

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。