Skip to content

Elicitation migration #2972

Description

@g2vinay

Objective: Rebuild user-consent flows to the RC multi-round model and keep security behavior correct.

Work items:

  1. Replace or adapt the current wrapper in core/Microsoft.Mcp.Core/src/Extensions/McpServerElicitationExtensions.cs to the RC client/server API.
  2. Update core/Microsoft.Mcp.Core/src/Areas/Server/Commands/ToolLoading/BaseToolLoader.cs so consent checks work with request-scoped multi-round interactions.
  3. Ensure sensitive or destructive operations still fail closed when elicitation is unavailable.
  4. Decide whether current consent UI text should stay as-is or be revised to reflect the new request/response flow.
  5. Add tests for accept, decline, cancel, and continuation behavior.

Acceptance criteria:

  • A sensitive tool call can start, pause for consent, resume, and complete under the new protocol.
  • No consent request escapes the active request lifecycle.
  • Client-not-supported paths still fail safely.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestserver-Azure.McpAzure.Mcp.Servertools-CoreAZMCP Core functionality that all other tools build on top of

    Fields

    No fields configured for Feature.

    Projects

    Status
    Untriaged

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions