Make the per-version wire packages private (mcp_types._v*) (#3191)

This commit is contained in:
Max 2026-07-27 22:16:48 +01:00 • committed by GitHub
commit b9422f1c9b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 133 additions and 127 deletions

View file

@ -6,8 +6,8 @@ from types import MappingProxyType, UnionType
from typing import Any, get_args
import mcp_types as types
import mcp_types.v2025_11_25 as v2025
import mcp_types.v2026_07_28 as v2026
import mcp_types._v2025_11_25 as v2025
import mcp_types._v2026_07_28 as v2026
import pydantic
import pytest
from mcp_types import methods
@ -295,11 +295,11 @@ EMPTY_CLIENT_RESPONSE_METHODS = frozenset({"ping"})
# Pre-2026 versions share the 2025-11-25 surface package.
PACKAGE_BY_VERSION = {
"2024-11-05": "mcp_types.v2025_11_25",
"2025-03-26": "mcp_types.v2025_11_25",
"2025-06-18": "mcp_types.v2025_11_25",
"2025-11-25": "mcp_types.v2025_11_25",
"2026-07-28": "mcp_types.v2026_07_28",
"2024-11-05": "mcp_types._v2025_11_25",
"2025-03-26": "mcp_types._v2025_11_25",
"2025-06-18": "mcp_types._v2025_11_25",
"2025-11-25": "mcp_types._v2025_11_25",
"2026-07-28": "mcp_types._v2026_07_28",
}
# The reserved `params._meta` entries the 2026 surface accepts on every request.

View file

@ -7,8 +7,8 @@ from types import ModuleType
import mcp_types as monolith
import mcp_types._types as _types
import mcp_types.v2025_11_25 as v2025_11_25
import mcp_types.v2026_07_28 as v2026_07_28
import mcp_types._v2025_11_25 as v2025_11_25
import mcp_types._v2026_07_28 as v2026_07_28
import pytest
from pydantic import BaseModel
@ -19,116 +19,116 @@ ENVELOPE_FIELDS: frozenset[str] = frozenset({"jsonrpc", "id"})
# Surface classes whose monolith counterpart has a different name (key: "<surface_tail>.<ClassName>").
NAME_MAP: dict[str, type[BaseModel]] = {
# v2025_11_25
"v2025_11_25.Argument": monolith.CompletionArgument,
"v2025_11_25.Context": monolith.CompletionContext,
"v2025_11_25.Data": monolith.ElicitationRequiredErrorData,
"v2025_11_25.Elicitation": monolith.ElicitationCapability,
"v2025_11_25.Elicitation1": monolith.TasksElicitationCapability,
"v2025_11_25.ElicitationCompleteNotification": monolith.ElicitCompleteNotification,
"v2025_11_25.Params": monolith.CancelTaskRequestParams,
"v2025_11_25.Params1": monolith.ElicitCompleteNotificationParams,
"v2025_11_25.Params2": monolith.GetTaskPayloadRequestParams,
"v2025_11_25.Params3": monolith.GetTaskRequestParams,
"v2025_11_25.Error": monolith.ErrorData,
"v2025_11_25.JSONRPCErrorResponse": monolith.JSONRPCError,
"v2025_11_25.JSONRPCResultResponse": monolith.JSONRPCResponse,
"v2025_11_25.Prompts": monolith.PromptsCapability,
"v2025_11_25.Requests": monolith.ClientTasksRequestsCapability,
"v2025_11_25.Requests1": monolith.ServerTasksRequestsCapability,
"v2025_11_25.Resources": monolith.ResourcesCapability,
"v2025_11_25.Roots": monolith.RootsCapability,
"v2025_11_25.Sampling": monolith.SamplingCapability,
"v2025_11_25.Sampling1": monolith.TasksSamplingCapability,
"v2025_11_25.Tasks": monolith.ClientTasksCapability,
"v2025_11_25.Tasks1": monolith.ServerTasksCapability,
"v2025_11_25.Tools": monolith.TasksToolsCapability,
"v2025_11_25.Tools1": monolith.ToolsCapability,
# v2026_07_28
"v2026_07_28.Argument": monolith.CompletionArgument,
"v2026_07_28.Context": monolith.CompletionContext,
"v2026_07_28.Data": monolith.MissingRequiredClientCapabilityErrorData,
"v2026_07_28.Data1": monolith.UnsupportedProtocolVersionErrorData,
"v2026_07_28.Elicitation": monolith.ElicitationCapability,
"v2026_07_28.Error": monolith.ErrorData,
"v2026_07_28.JSONRPCErrorResponse": monolith.JSONRPCError,
"v2026_07_28.JSONRPCResultResponse": monolith.JSONRPCResponse,
"v2026_07_28.Prompts": monolith.PromptsCapability,
"v2026_07_28.Resources": monolith.ResourcesCapability,
"v2026_07_28.Sampling": monolith.SamplingCapability,
"v2026_07_28.Tools": monolith.ToolsCapability,
# _v2025_11_25
"_v2025_11_25.Argument": monolith.CompletionArgument,
"_v2025_11_25.Context": monolith.CompletionContext,
"_v2025_11_25.Data": monolith.ElicitationRequiredErrorData,
"_v2025_11_25.Elicitation": monolith.ElicitationCapability,
"_v2025_11_25.Elicitation1": monolith.TasksElicitationCapability,
"_v2025_11_25.ElicitationCompleteNotification": monolith.ElicitCompleteNotification,
"_v2025_11_25.Params": monolith.CancelTaskRequestParams,
"_v2025_11_25.Params1": monolith.ElicitCompleteNotificationParams,
"_v2025_11_25.Params2": monolith.GetTaskPayloadRequestParams,
"_v2025_11_25.Params3": monolith.GetTaskRequestParams,
"_v2025_11_25.Error": monolith.ErrorData,
"_v2025_11_25.JSONRPCErrorResponse": monolith.JSONRPCError,
"_v2025_11_25.JSONRPCResultResponse": monolith.JSONRPCResponse,
"_v2025_11_25.Prompts": monolith.PromptsCapability,
"_v2025_11_25.Requests": monolith.ClientTasksRequestsCapability,
"_v2025_11_25.Requests1": monolith.ServerTasksRequestsCapability,
"_v2025_11_25.Resources": monolith.ResourcesCapability,
"_v2025_11_25.Roots": monolith.RootsCapability,
"_v2025_11_25.Sampling": monolith.SamplingCapability,
"_v2025_11_25.Sampling1": monolith.TasksSamplingCapability,
"_v2025_11_25.Tasks": monolith.ClientTasksCapability,
"_v2025_11_25.Tasks1": monolith.ServerTasksCapability,
"_v2025_11_25.Tools": monolith.TasksToolsCapability,
"_v2025_11_25.Tools1": monolith.ToolsCapability,
# _v2026_07_28
"_v2026_07_28.Argument": monolith.CompletionArgument,
"_v2026_07_28.Context": monolith.CompletionContext,
"_v2026_07_28.Data": monolith.MissingRequiredClientCapabilityErrorData,
"_v2026_07_28.Data1": monolith.UnsupportedProtocolVersionErrorData,
"_v2026_07_28.Elicitation": monolith.ElicitationCapability,
"_v2026_07_28.Error": monolith.ErrorData,
"_v2026_07_28.JSONRPCErrorResponse": monolith.JSONRPCError,
"_v2026_07_28.JSONRPCResultResponse": monolith.JSONRPCResponse,
"_v2026_07_28.Prompts": monolith.PromptsCapability,
"_v2026_07_28.Resources": monolith.ResourcesCapability,
"_v2026_07_28.Sampling": monolith.SamplingCapability,
"_v2026_07_28.Tools": monolith.ToolsCapability,
}
# Surface classes with no monolith equivalent (envelope wrappers, JSON-Schema fragments modelled as `dict`).
SKIP: frozenset[str] = frozenset(
{
# v2025_11_25
"v2025_11_25.AnyOfItem",
"v2025_11_25.BooleanSchema",
"v2025_11_25.Error1",
"v2025_11_25.Icons",
"v2025_11_25.InputSchema",
"v2025_11_25.Items",
"v2025_11_25.Items1",
"v2025_11_25.LegacyTitledEnumSchema",
"v2025_11_25.Meta",
"v2025_11_25.NumberSchema",
"v2025_11_25.OneOfItem",
"v2025_11_25.OutputSchema",
"v2025_11_25.RequestedSchema",
"v2025_11_25.ResourceRequestParams",
"v2025_11_25.StringSchema",
"v2025_11_25.TaskAugmentedRequestParams",
"v2025_11_25.TitledMultiSelectEnumSchema",
"v2025_11_25.TitledSingleSelectEnumSchema",
"v2025_11_25.URLElicitationRequiredError",
"v2025_11_25.UntitledMultiSelectEnumSchema",
"v2025_11_25.UntitledSingleSelectEnumSchema",
# v2026_07_28
"v2026_07_28.AnyOfItem",
"v2026_07_28.BooleanSchema",
"v2026_07_28.CallToolResultResponse",
"v2026_07_28.ClientNotification",
"v2026_07_28.CompleteResultResponse",
"v2026_07_28.DiscoverResultResponse",
"v2026_07_28.Error1",
"v2026_07_28.Error2",
"v2026_07_28.Error3",
"v2026_07_28.GetPromptResultResponse",
"v2026_07_28.HeaderMismatchError",
"v2026_07_28.Icons",
"v2026_07_28.InputSchema",
"v2026_07_28.InternalError",
"v2026_07_28.InvalidParamsError",
"v2026_07_28.InvalidRequestError",
"v2026_07_28.Items",
"v2026_07_28.Items1",
"v2026_07_28.LegacyTitledEnumSchema",
"v2026_07_28.ListPromptsResultResponse",
"v2026_07_28.ListResourceTemplatesResultResponse",
"v2026_07_28.ListResourcesResultResponse",
"v2026_07_28.ListToolsResultResponse",
"v2026_07_28.MetaObject",
"v2026_07_28.MethodNotFoundError",
"v2026_07_28.MissingRequiredClientCapabilityError",
"v2026_07_28.NotificationMetaObject",
"v2026_07_28.NumberSchema",
"v2026_07_28.OneOfItem",
"v2026_07_28.OutputSchema",
"v2026_07_28.Params",
"v2026_07_28.ParseError",
"v2026_07_28.ReadResourceResultResponse",
"v2026_07_28.RequestMetaObject",
"v2026_07_28.RequestedSchema",
"v2026_07_28.ResourceRequestParams",
"v2026_07_28.ResultMetaObject",
"v2026_07_28.StringSchema",
"v2026_07_28.SubscriptionsListenResultMeta",
"v2026_07_28.TitledMultiSelectEnumSchema",
"v2026_07_28.TitledSingleSelectEnumSchema",
"v2026_07_28.UnsupportedProtocolVersionError",
"v2026_07_28.UntitledMultiSelectEnumSchema",
"v2026_07_28.UntitledSingleSelectEnumSchema",
# _v2025_11_25
"_v2025_11_25.AnyOfItem",
"_v2025_11_25.BooleanSchema",
"_v2025_11_25.Error1",
"_v2025_11_25.Icons",
"_v2025_11_25.InputSchema",
"_v2025_11_25.Items",
"_v2025_11_25.Items1",
"_v2025_11_25.LegacyTitledEnumSchema",
"_v2025_11_25.Meta",
"_v2025_11_25.NumberSchema",
"_v2025_11_25.OneOfItem",
"_v2025_11_25.OutputSchema",
"_v2025_11_25.RequestedSchema",
"_v2025_11_25.ResourceRequestParams",
"_v2025_11_25.StringSchema",
"_v2025_11_25.TaskAugmentedRequestParams",
"_v2025_11_25.TitledMultiSelectEnumSchema",
"_v2025_11_25.TitledSingleSelectEnumSchema",
"_v2025_11_25.URLElicitationRequiredError",
"_v2025_11_25.UntitledMultiSelectEnumSchema",
"_v2025_11_25.UntitledSingleSelectEnumSchema",
# _v2026_07_28
"_v2026_07_28.AnyOfItem",
"_v2026_07_28.BooleanSchema",
"_v2026_07_28.CallToolResultResponse",
"_v2026_07_28.ClientNotification",
"_v2026_07_28.CompleteResultResponse",
"_v2026_07_28.DiscoverResultResponse",
"_v2026_07_28.Error1",
"_v2026_07_28.Error2",
"_v2026_07_28.Error3",
"_v2026_07_28.GetPromptResultResponse",
"_v2026_07_28.HeaderMismatchError",
"_v2026_07_28.Icons",
"_v2026_07_28.InputSchema",
"_v2026_07_28.InternalError",
"_v2026_07_28.InvalidParamsError",
"_v2026_07_28.InvalidRequestError",
"_v2026_07_28.Items",
"_v2026_07_28.Items1",
"_v2026_07_28.LegacyTitledEnumSchema",
"_v2026_07_28.ListPromptsResultResponse",
"_v2026_07_28.ListResourceTemplatesResultResponse",
"_v2026_07_28.ListResourcesResultResponse",
"_v2026_07_28.ListToolsResultResponse",
"_v2026_07_28.MetaObject",
"_v2026_07_28.MethodNotFoundError",
"_v2026_07_28.MissingRequiredClientCapabilityError",
"_v2026_07_28.NotificationMetaObject",
"_v2026_07_28.NumberSchema",
"_v2026_07_28.OneOfItem",
"_v2026_07_28.OutputSchema",
"_v2026_07_28.Params",
"_v2026_07_28.ParseError",
"_v2026_07_28.ReadResourceResultResponse",
"_v2026_07_28.RequestMetaObject",
"_v2026_07_28.RequestedSchema",
"_v2026_07_28.ResourceRequestParams",
"_v2026_07_28.ResultMetaObject",
"_v2026_07_28.StringSchema",
"_v2026_07_28.SubscriptionsListenResultMeta",
"_v2026_07_28.TitledMultiSelectEnumSchema",
"_v2026_07_28.TitledSingleSelectEnumSchema",
"_v2026_07_28.UnsupportedProtocolVersionError",
"_v2026_07_28.UntitledMultiSelectEnumSchema",
"_v2026_07_28.UntitledSingleSelectEnumSchema",
}
)