Skip to main content
Glama

What changed in a product

whats_new
Read-onlyIdempotent

A product's newest releases with notes. Pass since_version (the version you run) to get only what shipped after it, with per-category change counts.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoReleases to return, default 10.
productYesProduct slug or name, e.g. "next-js" or "Next.js".
since_versionNoThe version you run. Returns only the releases above it in the history, matched exactly or as the same version spelled with fewer trailing zeros. A version we do not hold is reported as a miss rather than guessed into an ordering.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
notesNoHow the product or the version was resolved.
productYes
releasesYes
returnedYes
truncatedNo
newerCountNoReleases above the pinned version, before the limit.
changeCountsNoChange items across the whole span, even when truncated.
sinceVersionNoThe version you passed.
sinceVersionFoundNoWhether that version was found in the history. False means the releases below are the latest, not the ones after yours.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedOutput schema / properties / product / properties / archived
      Added value: +{
      +  "description": "Whether the upstream repository is archived; absent when unknown.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / product / properties / language
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / product / properties / license
      Added value: +{
      +  "description": "SPDX expression as the product's own source states it, e.g. MIT or LicenseRef-proprietary; absent when unknown.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedOutput schema / properties / product / properties / category / enum
      Previous value: -[
      -  "Developer Tools",
      -  "Frameworks & Libraries",
      -  "Languages & Runtimes",
      -  "Games",
      -  "Operating Systems",
      -  "Browsers",
      -  "Communication",
      -  "Media",
      -  "AI",
      -  "Design Tools",
      -  "Productivity",
      -  "Firmware",
      -  "Drivers"
      -]New value: +[
      +  "Developer Tools",
      +  "Frameworks & Libraries",
      +  "Languages & Runtimes",
      +  "Infrastructure & DevOps",
      +  "Databases & Data",
      +  "Security & Privacy",
      +  "Games",
      +  "Gaming Tools",
      +  "Operating Systems",
      +  "System Utilities",
      +  "Browsers",
      +  "Communication",
      +  "Media",
      +  "Creative Tools",
      +  "AI",
      +  "Productivity",
      +  "Lifestyle & Apps",
      +  "Firmware",
      +  "Drivers"
      +]
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "properties": {
      +    "changeCounts": {
      +      "additionalProperties": {
      +        "maximum": 9007199254740991,
      +        "minimum": -9007199254740991,
      +        "type": "integer"
      +      },
      +      "description": "Change items across the whole span, even when truncated.",
      +      "propertyNames": {
      +        "enum": [
      +          "added",
      +          "changed",
      +          "fixed",
      +          "removed",
      +          "deprecated",
      +          "security"
      +        ],
      +        "type": "string"
      +      },
      +      "type": "object"
      +    },
      +    "newerCount": {
      +      "description": "Releases above the pinned version, before the limit.",
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    "notes": {
      +      "description": "How the product or the version was resolved.",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "product": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "category": {
      +          "enum": [
      +            "Developer Tools",
      +            "Frameworks & Libraries",
      +            "Languages & Runtimes",
      +            "Games",
      +            "Operating Systems",
      +            "Browsers",
      +            "Communication",
      +            "Media",
      +            "AI",
      +            "Design Tools",
      +            "Productivity",
      +            "Firmware",
      +            "Drivers"
      +          ],
      +          "type": "string"
      +        },
      +        "description": {
      +          "type": "string"
      +        },
      +        "homepage": {
      +          "description": "The vendor's own site.",
      +          "type": "string"
      +        },
      +        "labels": {
      +          "description": "Provenance to keep with any quote, e.g. “Sample data”.",
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "name": {
      +          "type": "string"
      +        },
      +        "platforms": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "slug": {
      +          "type": "string"
      +        },
      +        "url": {
      +          "description": "This product's page on What's New.",
      +          "type": "string"
      +        },
      +        "vendor": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "slug",
      +        "name",
      +        "vendor",
      +        "category",
      +        "description",
      +        "url",
      +        "homepage"
      +      ],
      +      "type": "object"
      +    },
      +    "releases": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "body": {
      +            "type": "string"
      +          },
      +          "bodyTruncated": {
      +            "const": true,
      +            "description": "The body was cut at the cap; the permalink has it all.",
      +            "type": "boolean"
      +          },
      +          "changes": {
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "category": {
      +                  "enum": [
      +                    "added",
      +                    "changed",
      +                    "fixed",
      +                    "removed",
      +                    "deprecated",
      +                    "security"
      +                  ],
      +                  "type": "string"
      +                },
      +                "text": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "category",
      +                "text"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "channel": {
      +            "description": "The source's own classification, e.g. “longterm”.",
      +            "type": "string"
      +          },
      +          "date": {
      +            "description": "ISO 8601 timestamp.",
      +            "type": "string"
      +          },
      +          "labels": {
      +            "description": "Provenance to keep with any quote, e.g. “Pre-release”.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "prerelease": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "sourceUrl": {
      +            "description": "The vendor's own release notes.",
      +            "type": "string"
      +          },
      +          "summary": {
      +            "type": "string"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "description": "This release's page on What's New.",
      +            "type": "string"
      +          },
      +          "version": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "date",
      +          "url",
      +          "sourceUrl"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "returned": {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    "sinceVersion": {
      +      "description": "The version you passed.",
      +      "type": "string"
      +    },
      +    "sinceVersionFound": {
      +      "description": "Whether that version was found in the history. False means the releases below are the latest, not the ones after yours.",
      +      "type": "boolean"
      +    },
      +    "truncated": {
      +      "const": true,
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "product",
      +    "returned",
      +    "releases"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, and the description adds useful behavior beyond that: filtering by since_version and returning per-category change counts. It also indirectly conveys that omitting since_version returns the newest releases without filtering, which is helpful.

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

Conciseness5/5

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

Two sentences with no filler: the first states the tool's core function, the second explains the key optional parameter and output characteristic. It is compact, front-loaded, and every sentence contributes value.

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 output schema exists and annotations cover safety/idempotence, the description covers the essential behavioral detail (since_version filtering and per-category counts) plus the notion of newest releases. Nothing critical for calling the tool correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description essentially restates the since_version semantics already present in the schema (the version you run, only what shipped after it) without adding new parameter-level meaning.

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

Purpose4/5

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

The description clearly identifies the tool as returning a product's newest releases with notes, which is a specific verb-resource combination. It does not explicitly differentiate from sibling tools like search_releases, so the distinctiveness is somewhat implicit rather than stated.

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

Usage Guidelines3/5

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

The description gives a clear usage condition for the since_version parameter: pass the version you run to get only what shipped after it. However, it gives no explicit guidance on when to choose this tool over list_products or search_releases, leaving the choice to be inferred from context.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources