Skip to content

fix: MCP 2025-11-25 elicitation enum schemas lose enum constraints during decoding #8063

Description

@lloydrichards

Problem

Elicitation form schemas containing enum definitions can be decoded as the broader string-schema variant. Because the string variant accepts the same base shape, enum-specific fields such as enum, oneOf, and legacy enumNames can be stripped before the request is sent.

The external conformance scenarios expose the problem for MCP 2025-11-25:

  • elicitation-sep1034-defaults
  • elicitation-sep1330-enums

Observed behavior

A valid enum schema is projected as a plain string schema or loses enum-specific information, causing the elicitation adapter checks to fail.

Expected behavior

Valid single-select, multi-select, and legacy titled enum schemas should preserve their enum constraints and titles through decoding and protocol projection.

Regression coverage

Add schema and adapter tests covering:

  • enum with enumNames;
  • oneOf titled choices;
  • multi-select enum values;
  • defaults on enum-backed elicitation fields.

The encoded elicitation request should retain the original constraints.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions