ratatosk-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**Ratatosk reads CNCF release notes every hour. Your agents get the changes.**
English · 한국어 · 日本語
---
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.9.1 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_stack and 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, or deprecated: what kind of thing it is.
- **bucket** — action (applies to everyone), check (only if applies_if
matches 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.
| Tool | What it does |
|---|---|
| check_stack | Takes the component versions you run and returns the changes on your upgrade path, split by bucket: action_required applies to everyone, check_config only if its applies_if holds. The comparison happens inside the server process — which is your own process when you self-host (how your component versions are handled) |