Aggrete

io.github.Aggrete由 GitHub 帳號 Aggrete 發布v0.8.3更新於 Oct 24, 2026

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

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

Aggrete 是本地 MCP 策略代理,在呼叫上游連接器之前,依行為準則文件與跨呼叫累積的使用者記憶檢查工具呼叫。

可以做什麼
預演一組規劃中的工具呼叫,在取得任何資料之前給出允許或拒絕的結論,並在拒絕時引用對應的政策條款。依 YAML 行為準則跨連接器執行策略,並使用跨呼叫、跨工作階段累積的每位使用者記憶。對結果中的電子郵件、社會安全號碼、卡號與權杖進行去識別化,並向無權呼叫的使用者隱藏相應工具。在工作階段讀取過不可信內容後拒絕寫入操作,並標記工具描述中的隱藏指令。將呼叫暫停等待人工核准,並把每個決定寫入雜湊鏈稽核日誌,同時提供指標與健康檢查端點。掃描現有 MCP 用戶端設定,找出跨伺服器的外洩路徑、遭投毒的描述與設定中的密鑰。
適用情境
當同時使用多個 MCP 連接器、風險來自把單獨無害的呼叫組合起來時適用;也適合在持有敏感資料的連接器前加一道可稽核、由策略驅動的關卡。在擴大部署前用掃描強化現有 MCP 設定同樣有用。
執行需求
以本地 stdio 程序執行,透過 pip 或 uv 從 PyPI 安裝並以 uvx 啟動;示範模式不需要設定、驗證或網路。實際使用需要代理設定檔與 YAML 政策文件。清單中未宣告任何環境變數或標頭。
安裝前請注意
它自行保管上游憑證,並可選擇代表個別使用者行事,因此本身成為敏感的憑證持有者。它會拒絕、去識別化、隱藏工具,並可暫停呼叫等待核准,還會寫入可能轉送到 SIEM 或 OpenTelemetry 收集器的稽核日誌。README 說明 stdio 身分僅供參考,呼叫後的拒絕無法撤回已取得的資料,且拉開請求間隔即可繞過彙總限制。

安裝

在 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,提交 8f7c337

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.8.3最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分