
Ratatosk Mcp
io.github.garlicKim21由 GitHub 帳號 garlicKim21 發布v0.9.1更新於 Oct 24, 2026
CNCF release intelligence: typed changes from release notes; check_stack compares versions locally.
概覽
提供經 AI 分析、依類型歸類的 CNCF 版本說明變更,讓助理檢查升級路徑、依實體查找變更並瀏覽版本發佈。
- 可以做什麼
- 檢查技術堆疊:將你執行的元件版本與版本變更比對,分為必須處理與視設定而定兩類
- 瀏覽變更流:依專案、類別或分桶篩選變更,並以 since 游標分頁
- 依實體反查:找出涉及某個具體識別碼(如 CVE 編號、CRD、功能開關、參數或設定欄位)的所有變更
- 檢視事項與版本:查看某個事項出現在哪些版本中,或查看單一版本的完整內容、摘要與原始說明連結
- 了解專案:列出追蹤中的專案及其標準 slug,並以單行摘要列出某專案的最新版本
- 適用情境
- 適合維運 Envoy、Istio 等 CNCF 專案時,讓助理回答升級前該做什麼、找出安全修補、破壞性變更與棄用項目,或在本地同步版本情報。
- 執行需求
- 以本地 stdio 程序執行(Docker 映像、Helm chart 或原始碼建置),也可改用託管的遠端端點。不需帳號或 API 金鑰。自架需要 Docker 或 Go 原始碼建置,並需能連線上游 API。託管端點依呼叫方限制每分鐘 60 次工具呼叫。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Ratatosk Mcp,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
ratatosk-mcp
Ratatosk reads CNCF release notes every hour. Your agents get the changes.
In Norse myth, Ratatoskr is the squirrel that carries messages up and down the world tree. This one carries release intelligence. ratatosk.io watches 76 CNCF projects and turns every release note into typed, entity-level changes: security fixes, breaking changes, removals, deprecations, changed defaults — each one classified by how you should act on it now. Routine lines are recorded too, but kept out of the way.
This repository is the MCP server that hands those changes to your agent as tools. MCP (Model Context Protocol) is the open standard AI agents use to call external tools; any MCP-capable client — Claude Code, Claude Desktop, kagent, your own SDK agent — can connect. No account, no API key.
Two ways to connect
Hosted — nothing to install. Register https://ratatosk.io/mcp as a
remote MCP server in any client that supports remote connectors. The hosted
endpoint allows each caller 60 tool calls a minute, counted per caller rather
than pooled — for polling or CI workloads, self-host. With the Claude Code
CLI:
Self-hosted — the same server, running as your own process. Run it with Docker, the Helm chart, or a source build. With Claude Code and Docker installed:
0.10.0 is the current release; use latest to follow new ones.
Either way, verify the connection:
Then ask your agent a question the tools can answer:
You: "We run envoy v1.36.8 and istio 1.30.1. Anything we must do before upgrading?"
Your agent calls
check_stackand answers from the record: the CVEs fixed after your version, the APIs removed on your upgrade path, the defaults that changed — separated into what applies to everyone and what applies only if your configuration matches. Each change carries a verbatim quote from the release notes as evidence.
One entry from a real check_stack answer, as the agent receives it
(istio, measured 2026-08-20):
applies_if is a condition the agent evaluates, not prose to read: a stack
that runs no JWKS resolver skips this entry without asking anyone. The answer
also carries its own privacy line, verbatim: "versions were compared locally;
only project slugs were sent to the server."
Other clients (Claude Desktop, kagent, in-cluster agents) and the full setup reference: see the install guide.
Tools
Two things the tools speak in. A change is one thing a release did, taken from an official release note and tied to the exact identifiers it touches (a CVE id, a flag, a CRD, a config field), with a verbatim quote as evidence. Every change carries three axes:
- family —
security,breaking, ordeprecated: what kind of thing it is. - bucket —
action(applies to everyone),check(only ifapplies_ifmatches your setup),plan(announced for later),other(the full record). - applies_if — a boolean expression you can evaluate against your own manifests, not prose to read.
A matter is the issue underneath, identified by matter_key and stable
across releases and branches: the same security roll-up landing on five
branches shares one key. Severity lives on the cited advisories and is read
from the ledger's current value, not frozen at analysis time.
Full per-tool parameters, example calls, and measured responses live in the tools reference.
How your component versions are handled
Self-hosted: check_stack sends only project slugs to the server and
compares versions locally, inside this process — the versions you pass it
never reach ratatosk.io. The server publishes changes; your agent decides what
applies. The version normalizer is bundled (internal/version), so range
comparison happens client-side too. This holds for upgrade questions as well:
the upstream API has a convenience endpoint (/v1/upgrade/{project}) that
receives caller-supplied versions — check_stack does not call it; the
comparison is in the source you can read.
One limit on that guarantee: it covers check_stack. Tools that take a
version as an argument — get_release(project, version) — put that version
in the upstream request path, because fetching a specific release means
naming it. That named path is not kept on my side, though: before a log line
is written, query strings are stripped and /v1/releases/… and
/v1/upgrade/… paths are reduced to their prefix, so neither the slug nor
the version lands in a log.
Hosted: your check_stack arguments (the versions you run) pass through
the server's memory to produce the same answer, and are not written down.
Here is what each layer on the way keeps:
- The hosted MCP process itself logs only its startup line — a normal request adds nothing.
- The upstream API's request log writes one line only when the caller sends a
traceparent, and that line carries a normalized endpoint label and the trace id — never a path, query, or body. - The front-door access log strips query strings, reduces
/v1/releases/…and/v1/upgrade/…paths to their prefix, masks caller IPs, and has no field for request bodies.
The hosted endpoint runs with its audit stream off, and I keep it off — not
recording request content is the operating stance for that endpoint. One
boundary I do not control: connection metadata on the CDN leg
follows the CDN provider's own policy. If your requirements rule out that transit,
self-host: then only project slugs leave your infrastructure on a
check_stack call.
Self-hosting adds the opposite capability: an opt-in audit stream
(MCP_AUDIT=metadata or full) that records who called which tool, emitted
inside your own infrastructure into your own collectors. The hosted endpoint
has none by design. Details in the install guide.
Documentation
- Install & usage — hosted endpoint · local stdio · in-cluster (Helm) · kagent (한국어 · 日本語)
- Helm chart — values, kagent toggle (한국어 · 日本語)
- kagent example — manifests + ratatosk-agent (한국어 · 日本語)
- Contributing · Security policy
Upstream API
This server is a thin client over the public REST API. If you would rather
call it directly, GET /v1 on ratatosk.io describes itself. No API key; rate
limited at 1200 requests per minute per IP.
Data & terms
The data is served free of charge by ratatosk.io — a term that may change,
with advance notice — under its terms of service.
Analyses are AI-generated reference information with no warranty — check the
original release notes before acting, especially when an agent acts on your
behalf. Original notes belong to their respective projects; responses that
carry a full note include an attribution notice (raw_notes_notice).
License
The code in this repository is licensed under Apache-2.0.
來源:README.md,提交 b2e0d33
工具
0版本歷史
2- v0.9.1最新Sep 29, 2026
- v0.9.0Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分