Skip to content

HTTP MCP Server does not work with VSCode as an MCP Client in Stateless mode #5133

Closed

Description

@aparikh36

Bug description
Built an HTTP MCP Server using Spring AI. Works fine in Streamable mode locally though would prefer Stateless in order to be able to deploy to the cloud.

Environment
Please provide as many details as possible: Spring AI version, Java version, which vector store you use if any, etc
Spring Boot 3.5.9, Java 21, Spring AI 1.1.2 Maven project.

VSCode Version: 1.107.1 (Universal)
Commit: 994fd12f8d3a5aa16f17d42c041e5809167e845a
Date: 2025-12-17T14:15:14.850Z (4 days ago)
Electron: 39.2.3
ElectronBuildId: 12895514
Chromium: 142.0.7444.175
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Darwin arm64 25.2.0

Steps to reproduce
Run the MCP Server locally.
Connect to VSCode (Cmd + P) -> MCP: Add Server -> Enter URL Add: http://localhost:8080/mcp
Hit Start in mcp.json

Expected behavior
A clear and concise description of what you expected to happen.

Minimal Complete Reproducible example
Fails with:
Fails with error:
2025-12-21 12:27:57.295 [info] Connection state: Starting
2025-12-21 12:27:57.312 [info] Starting server from LocalProcess extension host
2025-12-21 12:27:57.312 [info] Connection state: Running
2025-12-21 12:27:57.408 [error] Error: MPC -32603: Unrecognized field "form" (class io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation), not marked as ignorable (0 known properties: ])
at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: io.modelcontextprotocol.spec.McpSchema$InitializeRequest["capabilities"]->io.modelcontextprotocol.spec.McpSchema$ClientCapabilities["elicitation"]->io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation["form"])
at O8i.O (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2265:35574)
at O8i.L (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2265:35369)
at Sce.value (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2265:34358)
at E.C (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:29:2349)
at E.fire (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:29:2568)
at bMs.pushMessage (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:604:55563)
at gli.$onDidReceiveMessage (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:604:52099)
at YRt.S (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3894:40815)
at YRt.Q (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3894:40593)
at YRt.M (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3894:39681)

Activity

  1. changed the title [-]HTTP MCP Server does not work with VSCode/Claude Code as an MCP Client in Stateless mode[/-] [+]HTTP MCP Server does not work with VSCode as an MCP Client in Stateless mode[/+] on Dec 21, 2025
  2. hocinehacherouf commented on Dec 22, 2025

    @hocinehacherouf

    Hello, I am confirming this issue. Since the VS Code update (1.107), I am unable to connect to my MCP stateless server. I've tested this on Spring AI 1.1.0 and 1.1.2 with the same result.

    Environment:

    • Spring Boot: 3.5.8
    • Java: 21
    • VS Code: 1.107.1

    Error Log from VS Code:

    2025-12-22 18:12:36.502 [info] Connection state: Starting
    2025-12-22 18:12:36.502 [info] Starting server from LocalProcess extension host
    2025-12-22 18:12:36.503 [info] Connection state: Running
    2025-12-22 18:12:36.874 [error] Error: MPC -32603: Unrecognized field "form" (class io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation), not marked as ignorable (0 known properties: ])
     at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: io.modelcontextprotocol.spec.McpSchema$InitializeRequest["capabilities"]->io.modelcontextprotocol.spec.McpSchema$ClientCapabilities["elicitation"]->io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation["form"])
        at R8i.O (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:2265:35574)
        at R8i.L (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:2265:35369)
        at Sce.value (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:2265:34358)
        at E.C (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:29:2349)
        at E.fire (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:29:2568)
        at cMs.pushMessage (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:604:55563)
        at lli.$onDidReceiveMessage (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:604:52099)
        at zRt.S (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3894:40815)
        at zRt.Q (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3894:40593)
        at zRt.M (vscode-file://vscode-app/c:/Users/*******/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:3894:39681)
    

    VS Code Details:

    Version: 1.107.1 (user setup)
    Commit: 994fd12f8d3a5aa16f17d42c041e5809167e845a
    Date: 2025-12-17T14:15:14.850Z
    Electron: 39.2.3
    ElectronBuildId: 12895514
    Chromium: 142.0.7444.175
    Node.js: 22.21.1
    V8: 14.2.231.21-electron.0
    OS: Windows_NT x64 10.0.26100
    
  3. flopevel commented on Dec 30, 2025

    @flopevel

    Hi, We are experiencing the same problem:
    2025-12-30 15:52:00.279 [error] Error: MPC -32603: Unrecognized field "form" (class io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation), not marked as ignorable (0 known properties: ])
    We have a reactive MCP server with type: ASYNC y protocol: STATELESS

  4. devxb commented on Jan 8, 2026

    @devxb

    I resolved this issue by using a filter.

    I registered a filter at the servlet level, and when an MCP request comes in, the filter removes elicitation.form from the request payload before it is processed.

    There is already a related PR that addresses this issue, and I think it should be merged:
    modelcontextprotocol/java-sdk#725

    spring-ai-starter-mcp-server-webmvc:1.1.2

  5. added a commit that references this issue on Jan 20, 2026
    eb03b47
  6. added a commit that references this issue on Jan 22, 2026
    d81e47d
  7. added 2 commits that reference this issue on Jan 24, 2026
    ac47a76
    a306567
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions