Skip to main content
Glama

check_stack

Check running component versions against published release facts to surface upgrade paths, security fixes, and breaking changes that require action.

Instructions

Check the user's running component versions against known facts. Versions are compared INSIDE THIS SERVER PROCESS — only project slugs are sent upstream, and this tool never calls the server-side /v1/upgrade endpoint. Run the server yourself and running versions never leave your infrastructure; on the hosted endpoint they transit server memory only and are not logged. Returns, per component, the facts from releases NEWER than the running version (the upgrade path). Default is a briefing: summary counts, then critical/high facts split by whether the caller still has to check something — action_required applies to everyone, check_config applies only if its applies_if holds against the running configuration (resolve it before recommending; an unmet condition is not a reason to upgrade, it is a precondition for later — fixed_in is the minimum version to be on before enabling that feature). One line each for the rest, and the same advisory fixed on several release branches collapsed into one entry (shown at the advisory's group-maximum severity). Pass version_source per component (where you read the version — e.g. a daemonset image tag, or that the user stated it): it is echoed back as an audit trail. This server cannot see your environment, so it cannot verify a version or its source; a running version older than every release on record is flagged in note, which is the only cross-check available here. Use detail:"full" for every fact verbatim (capped at 50 per component with relevant_facts_omitted — narrow with severity_min or target_version), target_version to limit to one upgrade hop, severity_min to filter. Components with zero facts carry tracked:true|false — tracked:false means the project is NOT covered by ratatosk, so the absence of facts is no-coverage, not safety. In brief mode, facts sharing one quoted sentence are merged with their ids listed together. Drill down with get_release or facts_by_entity.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
detailNobrief (default): summary + critical/high facts + one-liners for the rest; full: every fact verbatim
componentsYesthe running stack to check
severity_minNoonly facts at or above this severity: info|low|medium|high|critical
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It is exceptionally transparent: explains that versions are compared in-process, only project slugs are sent upstream, never calls the /v1/upgrade endpoint, does not log on hosted endpoint, and cannot verify versions. It also discloses edge-case behavior like tracked:false, ignored target_version, and applies_if precondition logic.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph lacking any formatting (bullets, sections). While every sentence carries information, the wall of text is difficult to parse and repeats some schema details (e.g., target_version behavior). It would benefit from structured breaks to improve scannability, especially for an AI agent parsing the text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multi-component checks, modes, filters, no output schema), the description is remarkably complete. It explains return behavior, default briefing, how facts are grouped, severity filtering, and the privacy model. There are no significant gaps that would leave an agent uncertain about what the tool does or returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (baseline 3), but the description adds meaningful semantics beyond the schema. For example, it elaborates the briefing logic (action_required vs check_config, applies_if resolution, group-max severity merging) and clarifies the audit purpose of version_source. It does not cover every parameter interaction, but it substantially enriches understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'Check the user's running component versions against known facts.' It clearly distinguishes itself from siblings by explaining its unique role (version comparison, upgrade path) and explicitly references 'get_release' and 'facts_by_entity' for drill-down, making its niche clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides strong context on when to use the tool (checking a running stack) and how to tailor it via detail, target_version, and severity_min. It references alternatives at the end ('Drill down with get_release or facts_by_entity'). It does not explicitly state exclusions (e.g., 'use list_facts instead when...') but the guidance is sufficient for an agent to choose it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/garlicKim21/ratatosk-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server