Files
wehub-resource-sync e04ed9c211
CF: Deploy Dev Docs / deploy (push) Has been cancelled
Sync Labels / build (push) Has been cancelled
tests / unit tests (macos-latest) (push) Has been cancelled
tests / unit tests (windows-latest) (push) Has been cancelled
tests / unit tests (ubuntu-latest) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:32:45 +08:00

38 lines
2.3 KiB
Markdown

---
title: "Versioning Policy"
type: docs
weight: 10
description: How MCP Toolbox manages versions and breaking changes.
---
MCP Toolbox for Databases follows [Semantic Versioning](https://semver.org/).
## Definition of the Public API
For the purposes of this policy, the "Public API" includes:
* **Server**
* **CLI:** The execution engine and lifecycle manager for tool hosting.
* **Configuration Manifests:** The structural specification of `tools.yaml`.
* **Pre-built Configs:** Curated sets of tools (and other MCP primitives) including the CLI flag, source configuration, toolsets names, and tools.
* **MCP versions**: Supporting MCP revisions and transport protocols.
* **Client SDKs:** Both the foundational "Base SDKs" and the orchestration-specific "Integrated SDKs".
## What Constitutes a Breaking Change (Major Version Bump)
A major version bump (e.g., v1.x.x to v2.0.0) is required for the following modifications:
* **Server:** Supporting MCP revisions and transport protocols.
* **CLI & Config:** Removing existing CLI flags or introducing backwards-incompatible changes to the core configuration format.
* **Pre-built Configs:** Renaming or removing the name of a pre-built toolset. Agents rely on the toolset names for discovery, so altering them breaks downstream integrations.
* **Client SDKs:** Removing or renaming public methods, modifying expected input payload structures, or changing expected return types.
* **MCP Protocol Support:** Removing support for an existing MCP protocol version. Until official MCP protocol guidelines dictate otherwise, dropping an MCP version counts as a major breaking change. A deprecation warning will be provided prior to removal, aligning with typical new specification cycle timelines.
## What is NOT a Breaking Change (Minor/Patch Version)
The following changes will **not** trigger a major version bump:
* **Server**
* **Pre-built Config Modifications:** Adding, removing, or renaming individual tools within a pre-built toolset, as well as modifying server description, prompts, resources, tool descriptions or inputs, are treated as non-breaking changes.
* **Experimental Features:** Features or wrapper packages explicitly documented as "Preview" or "Beta" may introduce breaking changes without a major version bump to the core project.