Skip to main content
Glama

Breaking Changes & Migration Data

Server Details

What breaks when you upgrade a package, and what to use instead - from official docs.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.5/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool serves a distinct role: list_packages for discovery, get_breaking_changes for detailed data, and check_upgrade_safety for an actionable summary. No two tools overlap in purpose, making selection straightforward.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (list_packages, get_breaking_changes, check_upgrade_safety). The verbs clearly indicate the action and the nouns the target, creating a predictable and readable naming scheme.

Tool Count5/5

Three tools are well-scoped for a focused migration data server: one for discovering coverage, one for retrieving details, and one for safety checks. This is neither minimal nor excessive, fitting the domain perfectly.

Completeness5/5

The server covers the full workflow: identify if a package is tracked, retrieve comprehensive breaking change details, and get upgrade safety guidance. No obvious gaps such as missing version comparisons or update/save operations are needed in this read-only context.

Available Tools

3 tools
check_upgrade_safetyAInspect

Given a package and the version you are upgrading TO, return a concise checklist an agent can act on: the count of breaking changes, the highest-risk removals, whether automated codemods exist, and the recommended upgrade path. Use before performing an upgrade.

ParametersJSON Schema
NameRequiredDescriptionDefault
packageYes
target_versionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

With no annotations available, the description bears the full burden. It clearly discloses the output behavior—returns a checklist with counts, risks, codemods, and recommended path—and implies a read-only operation by saying 'return a concise checklist'. It could add more about edge cases or failure modes, but the core behavior is transparent.

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, front-loaded with the key information, no redundancy. Every phrase adds 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?

The tool is simple (2 parameters) and has an output schema, so the description needn't detail return values. It gives the purpose, the exact inputs, the output contents, and a clear usage context. This is sufficient for an agent to select and invoke the tool.

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

Parameters5/5

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

The input schema has no descriptions (0% coverage), so the description must compensate. It does so by explaining both parameters: 'Given a package and the version you are upgrading TO'—clarifying that target_version is the destination version. This fully covers the parameter semantics.

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 uses the verb 'return' with a specific resource ('a concise checklist') and enumerates its contents (breaking changes count, high-risk removals, codemods, upgrade path). This clearly differentiates it from sibling get_breaking_changes, which likely just lists breaking changes.

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?

It explicitly states 'Use before performing an upgrade', giving a clear when-to-use scenario. However, it does not mention alternatives or exclusions, so it misses the top score.

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

get_breaking_changesAInspect

Get breaking changes for a package upgrade: removed APIs with their replacements and the reason for each, changed defaults, behavior changes, known incompatible dependencies, official source URL, and codemod/automated-fix commands. Omit version to get every tracked version. Use this instead of relying on training data, which may predate the release.

ParametersJSON Schema
NameRequiredDescriptionDefault
packageYes
versionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It fully discloses the nature of the returned data and the version omission behavior. It does not mention potential side effects or prerequisites, but the tool is clearly a read-only query and the disclosed details are sufficient for safe invocation.

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?

The description is two sentences with no filler. The first sentence densely covers the purpose and full content list, while the second gives a crucial usage directive. It is front-loaded with the verb and object, making it scannable and efficient.

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 that an output schema exists, the return format is already handled. The description thoroughly enumerates the scope of breaking changes, mentions the official source URL, and provides a behavioral caveat about version omission. This is sufficient for an agent to decide when and how to invoke the tool.

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?

The schema coverage is 0%, so the description must compensate. It clarifies that 'version' can be omitted to retrieve all tracked versions, and it contextualizes 'package' as the subject of an upgrade. It does not specify formatting requirements for 'package,' but that is trivially inferable from the tool name and use case.

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 states a clear and specific action: 'Get breaking changes for a package upgrade,' and enumerates the exact content (removed APIs, replacements, reasons, changed defaults, behavior changes, dependencies, source URL, codemod commands). This makes it unmistakably distinct from sibling tools like list_packages and check_upgrade_safety.

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 explicitly instructs to 'Use this instead of relying on training data, which may predate the release,' providing a clear when-to-use directive. It also explains the optional version behavior with 'Omit version to get every tracked version.' However, it does not directly contrast the sibling tools, so some context for choosing among alternatives is missing.

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

list_packagesAInspect

List every package with breaking-change data available, including tracked versions and how many breaking changes each has. Call this first if you are unsure whether a package is covered.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It explicitly states the tool lists packages and returns tracked versions and breaking-change counts, implying a safe, read-only operation. It does not mention side effects, pagination, or performance, but for a simple list operation the description is transparent enough about what to expect.

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, front-loaded with the main action and output details, followed by a usage hint. Every word earns its place; no fluff or repetition.

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?

For a simple list tool with no parameters and an output schema, the description is complete. It covers what the tool does, what information it returns, and when to use it. The presence of an output schema handles return format details, so no further elaboration is needed.

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?

The tool has zero parameters, so the schema is empty. The description adds meaning by explaining the purpose and what the returned data represents, which is more valuable than the schema alone. Given the baseline for no parameters is 4, this is appropriate.

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 uses a specific verb ('list') and clearly defines the resource ('every package with breaking-change data available') and the output contents (tracked versions, counts). It differentiates from siblings by framing itself as a coverage discovery tool, distinct from check_upgrade_safety and get_breaking_changes which likely target specific packages.

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 explicit guidance: 'Call this first if you are unsure whether a package is covered.' This clearly indicates when to use the tool, though it does not name specific alternatives or exclusions. The context is sufficient for an agent to decide when to invoke it.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources