Aggrete

io.github.aggrete由 GitHub 账号 aggrete 发布v0.13.4更新于 Oct 24, 2026

MCP policy proxy: enforces a code of conduct across connectors before the upstream is called.

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

本地 MCP 策略代理,在调用上游前依据行为准则策略和跨调用用户记忆检查每次连接器调用。

可以做什么
预演一组计划中的工具调用,在获取任何数据前给出允许或拒绝的结论,并在拒绝时引用对应策略条款;列出可用于检验策略引擎的场景;扫描现有 MCP 客户端配置,找出跨服务器的泄露路径、工具描述中的隐藏指令、配置中的密钥以及绕过代理的服务器,并可选写入修复;从结果中脱敏邮箱、社保号、卡号和令牌,并隐藏用户无权调用的工具;将调用挂起等待人工从 Slack、终端或控制台批准;记录哈希链审计日志并提供指标与健康检查端点。
适用场景
当多个 MCP 连接器涉及相互重叠的敏感数据,需要按组合规则判断、在取数前拒绝并留下审计记录,而不只是逐服务器授权时适用。也适合在推广现有 MCP 配置前先做一次扫描加固。
运行要求
以 Python 包形式通过 pip 或 uvx 在本地以 stdio 运行;实际使用需要 YAML 策略文件和代理配置,演示模式无需配置、认证或网络。它自行保管上游凭据,可选支持按用户代授权访问以及通过 Slack 进行人工审批。
安装前请注意
它位于其他连接器之前并保管其上游凭据,需妥善保护其配置。调用后的拒绝只能脱敏,无法撤回已获取的数据。stdio 身份仅为建议性,真正执行需要可流式 HTTP 加 OAuth,并阻止直接授予连接器权限。聚合规则可通过拉长请求间隔或在其未代理的系统间改写来规避,且它不是网关:没有多租户、令牌保险库或高可用。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Aggrete,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Aggrete

[PyPI version] [Python versions] [License] [Glama quality] [FOSSA Status]

An MCP proxy that enforces a code-of-conduct document across connectors, with per-user memory that accumulates across calls.

Four individually-authorized questions can assemble a layoff list — no single one is sensitive, so no guardrail fires. Aggrete is the layer that catches the combination: is this call, together with everything this person already pulled today, something the code of conduct forbids?

Try it live — nothing to install · or uvx aggrete --demo

Start with a scan

bash
pip install aggrete && aggrete scan

Finds every MCP server your clients use, connects to each, and prints what no per-server scanner does: tool combinations across servers that form a leak path, hidden instructions in descriptions, secrets in client configs, servers that bypass the proxy. --fix writes the config and policy that close them. Details.

Install

bash
pip install aggrete                 # or: uv tool install aggreteuvx aggrete --demo                  # the walkthrough — no config, auth, or networkaggrete --config proxy.config.yaml  # run it for real

The one example

The check tool dry-runs a plan and returns the verdict before anything is fetched:

Plan check: REFUSED.  1. hr__recent_joiners     [hr-personnel]  ->  allowed  2. finance__budget_roles  [finance-comp]  ->  allowed  3. ops__oncall_draft      [ops-rota]      ->  REFUSED   COC-HR-004     Personnel, compensation, and operational rosters may not be combined to     derive the planned departure of identifiable individuals.

Each call is fine alone. The third completes a forbidden set across three domains that overlap on the same people, so it's denied before the upstream call — the data is never fetched.

What it does

  • Refuses before fetching, using a YAML policy and per-user memory across calls and sessions — not single-call authorization.
  • Redacts emails, SSNs, cards, and tokens from results before they reach the model; hides walled tools from users who can't call them.
  • Shields against prompt injection — any write after a session reads untrusted content is refused — and against tool poisoning, flagging hidden instructions in tool descriptions.
  • Holds upstream credentials itself (confused-deputy safe), with optional per-user on-behalf-of access.
  • Audits tamper-evidently — every decision is one hash-chained JSON line (aggrete-audit), forwarded to a SIEM or an OpenTelemetry collector, with Prometheus metrics and health endpoints for operations.
  • Ask before you act — check previews any sequence, scenarios lists things to try.
  • Hold for a human — action: approve pauses a call until the clause owner approves it, from Slack, the terminal, or the console; the approval is a time-limited, audited grant.

Learn more

  • Writing policy — the coc.yaml schema, rule types, arg_match, and drafting from your handbook with aggrete-ingest
  • Deploying — architecture, the deploy matrix, HTTP + OAuth, connecting Claude, and per-user credentials
  • Building a connector — expose read/write tools and govern any system (Google Drive is the reference)
  • Adapter mode — run the engine inside agentgateway (native ExtMCP over gRPC, aggrete extmcp), Docker MCP Gateway, IBM ContextForge or any AuthZEN-speaking gateway
  • What it does not stop — supply chain, host execution, client bugs, memory poisoning: where a proxy is the wrong control and what is
  • Scanning — aggrete scan hardens an existing MCP setup: cross-server leak paths, poisoned descriptions, secrets in configs, proxy bypasses, and a one-command fix
  • Conformance — aggrete conformance runs sixteen checks against the real components and maps them onto the OWASP MCP Top 10, OWASP Agentic Top 10, CoSAI and AIUC-1; --url runs the same scenarios black-box against any gateway (latest report)
  • Roadmap — shipped, in progress, and planned
  • Agent skill — teach Claude Code or any MCP client to set up and operate Aggrete: /plugin marketplace add aggrete/aggrete, or read skill://aggrete/SKILL.md from a running proxy

Honest limitations

  • Post-call denial redacts, it does not un-fetch — prefer rules decidable pre-call.
  • stdio identity is advisory — real enforcement needs streamable HTTP with OAuth and IdP-level blocking of direct connector grants, so the proxy is the only path.
  • Aggregation can only be narrowed, not solved — a user who spaces requests beyond the window, or paraphrases across systems the proxy doesn't front, gets through. This raises the cost and creates the audit trail; it isn't a ceiling.
  • Not a gateway — no multi-tenancy, token vault, or HA. For production, run it behind agentgateway, Docker's gateway or IBM ContextForge and let them call it (adapter mode).

mcp-name: io.github.aggrete/aggrete

来源:README.md,提交 7da4844

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

6
  1. v0.13.4最新Oct 11, 2026
  2. v0.13.2Oct 11, 2026
  3. v0.12.0Sep 22, 2026
  4. v0.11.0Sep 19, 2026
  5. v0.10.0Sep 18, 2026
  6. v0.9.0Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分