mcpField
E
Emfirge

Emfirge

本地服务
emfirge.cloud安全43 天前更新

关于 Emfirge

Emfirge 是只读工具,可在模拟的 AWS 云分支上测试基础设施变更,再决定是否应用。它评估安全、依赖、合规、成本和配额,并在 LLM 看到 AWS 标识符前于本机进行令牌化。

主要功能

  1. 01在临时分支上模拟 AWS 变更
  2. 02接收 Terraform、CloudFormation、API 和 CLI 输入
  3. 03评估安全、依赖与合规
  4. 04比较网络暴露和估算成本
  5. 05返回通过、警告或阻止结论

适用场景

  1. 01检查移除 AWS 资源的影响
  2. 02在应用到生产环境前审查基础设施变更
  3. 03识别变更影响的合规控制项
  4. 04比较变更前后的成本与公网暴露

MCP 相关

Emfirge 提供 MCP 服务和命令行工具,供 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

为你的 Agent 提供云环境分支。

AI Agent 正开始改变真实基础设施。
Emfirge 是一套安全护栏,让它们先在你实时 AWS 环境的一个分支上尝试,
再由评估视角判断变更实际会产生什么影响。

开始使用 · 文档 · npm

由 Ansh Sonkar 构建


你的 Agent 想要“清理未使用的数据库”

如果没有 Emfirge,它会调用 DeleteDBInstance,然后你只能从值班频道得知那个数据库的用途。

有了 Emfirge,Agent 会先在分支上操作:

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?

生产环境没有受到任何影响。Agent 修改了计划,而它交给你的结果通过哈希与它通过评估的结论绑定。

简化后的输出。原因代码和消息均为引擎的实际内容。


三个层次

🧰 安全护栏:产品

Agent 在哪里工作、可以看到什么、会得到什么,以及哪些步骤不能跳过。

  • 始终只读。 Emfirge 绝不会写入你的云环境。由你或你的流水线应用已批准的变更。
  • 默认保护隐私。 在 LLM 看到 AWS 标识符之前,Emfirge 会先在你的机器上将其令牌化。
  • 不会悄悄放行。 Emfirge 无法建模的变更不能通过评估。缺少的检查会被报告,而不会被隐藏。
🌿 分支:引擎

以 Git 风格复制你的实时 AWS 模型:由一个基础快照和一份有序变更列表组成。

  • Git 风格的操作。 可以像处理代码一样创建分支、回滚、比较和丢弃。
  • 多种输入方式。 可以输入类型化变更、Terraform 计划、CloudFormation 变更集、AWS API 调用或 AWS CLI 命令。无论通过哪种方式输入,同一项变更都会得到相同结果。
  • 双向差异。 查看新增和移除的内容、哪些资源变得可以从互联网访问,以及变更前后的成本。
🔍 评估视角:衡量内容

每种评估视角都会从一个角度评判分支,并共同给出一个 pass / warn / block 结论。

评估视角要回答的问题
✅安全性是否暴露了某些内容,或打开了权限提升路径?
✅依赖关系移除它会导致什么故障?它仍在使用吗?能否恢复?
✅合规性哪些 CIS 1.5 和 SOC 2 控制项会发生变化?(控制项列表来自 Prowler 发布的数据;未覆盖的控制项绝不会判为 pass)
🟡成本变更前后成本是多少?(使用 AWS 发布的价格表,仅限 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 是一个安全工作区,而不是一个会阻止实时 apply 的门禁。


目前分支可以建模哪些变更?
资源类型添加修改删除
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 Agent 构建项目,或想聊聊 Emfirge?请发送邮件至 [email protected]。


贡献指南 · 安全 · 隐私

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。