Skip to content

Design MRTR-based elicitation and sampling passthrough for vMCP #5759

Description

@JAORMX

Part of #5743 (Workstream C: 2026-07-28 stateless readiness).

Work

vMCP has no sampling passthrough and no backend→client elicitation passthrough today (only composer-driven form elicitation; TODO at pkg/vmcp/client/client.go:833). Rather than building these on the 2025-11-25 server-initiated request model — deprecated in 2026-07-28 — design them MRTR-first:

  • Backend returns resultType: "input_required" with inputRequests → vMCP surfaces it to the client → client retries with inputResponses → vMCP replays to the backend with correlation via requestState.
  • Covers elicitation (form + URL modes) and sampling uniformly, since MRTR replaces both.
  • For 2025-11-25 backends that still issue true server-initiated requests, either bridge them into MRTR toward 2026-07-28 clients or scope support to matching protocol pairs — decide in design.

Depends on: the vMCP stateless design issue. Supersedes building legacy sampling/elicitation passthrough.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageIssue needs initial triage by a maintainer

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions