关于 Almega
Almega 是一款开源 MCP 服务,在 AI Agent 操作外设置固定策略边界,涵盖支付及其他敏感操作。运营者定义限额和审批规则,Agent 通过受控工具执行操作,所有请求都会记录。
主要功能
- 01按 Agent 设置操作边界
- 02支付限额与类别白名单
- 03敏感操作需人工审批
- 04按策略拦截或放行操作
- 05仅追加式审计账本
- 06查询策略状态的工具与资源
适用场景
- 01限制 Agent 的支付金额和类别
- 02要求部署或删除前先审批
- 03执行前审查待处理操作
- 04查看 Agent 的策略和审计记录
MCP 相关
向 MCP 客户端提供策略、请求、支付、审批和审计工具,以及账本、策略框架和待处理操作资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🛡️ Almega — 面向 AI Agent 的不可变委派框架
把所有工作都委派给你的 Agent——但它们无法越过设定的边界。
一次设定好边界。你的 Agent 可以在其中自由运行。任何敏感操作—— 花钱、删除文件、部署到生产环境、发送电子邮件——都会暂停,等待你一键批准。一切操作都会记录在案。一个开源的 MCP 服务。
问题:你想委派工作,而不是时时看管
Agent 的意义就是接手工作,让你可以离开。但它一旦开始自主行动,就可能花钱、触碰生产环境、删除数据、调用工具——而你无法真正控制它到底做了什么。
看似诱人的解决办法,是把规则写进提示词:“别花超过 50 美元,别碰生产环境。”**这行不通。**只要任务驱动模型不再遵守指令,它就会违背指令;网页上的提示词注入也可能覆盖指令,循环中的 Bug 更可能完全忽略指令。指令只是愿望。
**边界必须设在 Agent之外——这样 Bug、攻击或 Agent 本身都无法靠花言巧语越过边界。**这就是 Almega。
工作原理
人类只需设定一次框架(Agent 没有工具可以修改框架):
set_frame(
"ops-bot",
allow=["read", "search"], # runs free
require_approval=["payment", "deploy", "file.delete"], # pauses for you
block=["shell.exec"], # never
default="approval", # unknown action → ask you (fail-safe)
monthly_limit=200, allow_categories=["api", "saas"], approve_above=50, # payment sub-frame
)
之后,Agent 在执行任何敏感操作前都会发起请求,由 Almega 在框架之外作出决定:
request("ops-bot", "read", "read config.yaml") # → ALLOWED (runs free)
request("ops-bot", "deploy", "deploy build #418 to prod") # → AWAITING_YOU
request("ops-bot", "shell.exec", "rm -rf /") # → BLOCKED
pay("ops-bot", "openai.com", 12, "api") # → ALLOWED (under your cap)
pay("ops-bot", "vendor.io", 800, "retail") # → BLOCKED (off-frame)
等待批准的操作会暂停,直到你点击一次:
approve("act_0002") # deploy → cleared to run
reject("act_0003", "not that database")
每一次尝试——无论是获准、拦截还是暂缓——都会记录到只追加的审计账本中。
支付只是受保护操作的一种
Almega 最初是面向 Agent 的钱包——为每个 Agent 设定支出限额并要求人工批准,底层采用真正的 Stripe Issuing 测试模式后端(不涉及真实资金)。钱包仍然可用:运行 almega-wallet。在 Gate 中,pay() 是内置的旗舰操作——使用同一个 Gate 和同一套审批流程。它的意义在于保护你希望在执行前由人工参与的任何操作,而不只是支付。
工具
| 工具 | 功能 |
|---|---|
set_frame | 定义 Agent 的不可变边界(仅限操作者) |
request | Gate——Agent 在执行敏感操作前发起请求 → ALLOWED / BLOCKED / AWAITING_YOU |
pay | 旗舰支付示例(基于 request 的便捷封装) |
approve / reject | 人工批准或拒绝暂缓的操作 |
pending | 待审批收件箱 |
ledger | 完整审计日志 |
get_frame | 查看框架和当前累计支出 |
此外还提供资源:almega://ledger、almega://frames、almega://pending。
为你自己的工具加上 Gate
使用 @gated 包装任意工具,这样它的实际代码就无法在框架之外运行——受 Gate 保护的是操作本身,而不只是响应:
from almega_gateway import gated, approve_and_run
@gated("file.delete")
def delete_file(path): ... # the dangerous part
delete_file("customers.db") # → held; the file is NOT deleted
# ...you review and approve, then:
approve_and_run(action_id) # → only now does it actually run
被拦截或未经批准的调用不会产生任何副作用。透明的网关可将 Almega 放在任意 MCP 服务前面,自动为每个工具加上 Gate,无需进行任何代码改造。它基于这一能力构建,即将推出。
安装
pip install almega-mcp # or: uvx almega-mcp
已列入官方 MCP 注册表,名称为 io.github.almega-ai/almega-mcp。采用 MIT 许可证。
为什么选 Almega,而不是大厂的方案
Stripe、Rain 和 AWS 正在构建 Agent 支付控制方案——封闭、仅限支付,并锁定在各自的平台上。Almega 则刻意选择相反的道路:
- 开源且原生支持 MCP——你的 Agent 可以将 Gate 作为原生工具使用,无需额外粘合代码。
- 保护所有操作,而不只是支付——支付、工具调用、删除、部署、电子邮件。
- 没有供应商锁定——你的控制层位于任何支付通道之上;更换支付通道,Almega 仍可继续使用。
决定 Agent 是否应该执行操作的机制,不应该由单一支付供应商掌控。
后续计划(路线图)
- The Almega Gateway — 将它放在其他 MCP 工具前面,即可自动拦截每次敏感调用,无需埋点。(这才是妙处;上述工具只是基础。)
- 持久化、审批仪表板、团队策略、审计导出、SSO——团队愿意付费购买的治理层。
目前它只是一个演示项目(数据存储在内存中)。重点是让大家在五分钟内看懂这个模型。
正在构建能真正执行任务的 Agent 吗?我很期待听到你对框架模型和 MCP 接口的反馈——你希望拦截哪些操作?还缺少什么?
(创始成员可按创始人专属价格永久锁定托管版本——Gateway + 审批仪表板:alemgaai.netlify.app。上面的服务免费,且可由你自行保留。)
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。