Skip to content

MCP server fails to initialize with VS Code Insiders: Unrecognized field "form" in elicitation capabilities #8015

Closed

Description

@razvanz

Describe the bug

When attempting to connect to the Metals MCP server from VS Code Insiders, the initialization fails with a deserialization error related to the elicitation.form capability field.

Error message

2025-12-08 10:48:35.521 [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"])

MCP Configuration

{
  "mcpServers": {
    "activity-log-metals": {
      "type": "sse",
      "url": "http://localhost:43305/sse"
    }
  }
}

Environment

  • VS Code Version: VS Code Insiders (December 2025)
  • OS: Linux
  • Metals Version: 1.6.4

Analysis

The error suggests that the MCP Java SDK used by Metals doesn't recognise the form field within the elicitation capabilities that VS Code Insiders is sending during the InitializeRequest. This appears to be a version incompatibility between VS Code's MCP client implementation and the MCP SDK version used by Metals.

Expected behaviour

The Metals MCP server should successfully initialise when connecting from VS Code Insiders, either by supporting the newer elicitation.form capability or by gracefully ignoring unknown fields during deserialization.

Potential fix

Update the Model Context Protocol Java SDK dependency to a version that includes support for the elicitation capability schema, or configure Jackson to ignore unknown properties during deserialization.

Activity

  1. tgodzik commented on Dec 8, 2025

    @tgodzik
    Contributor

    Thanks for reporting! I am doing an update in #8016, that should help

  2. susuro commented on Dec 27, 2025

    @susuro

    After changing Metals version to "1.6.4+56-8bf8f1e0-SNAPSHOT"

    2025.12.27 20:18:32 INFO  Started: Metals version 1.6.4+56-8bf8f1e0-SNAPSHOT in folders '/Users/...' for client Visual Studio Code 1.107.1.
    

    I'm still getting this error:

    2025-12-27 20:18:59.590 [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"])
    
  3. tgodzik commented on Dec 29, 2025

    @tgodzik
    Contributor

    Let me double check what is going on

  4. tgodzik commented on Dec 29, 2025

    @tgodzik
    Contributor

    Looks like it's still an issue in modelcontextprotocol/java-sdk#724

  5. skylayer commented on Jan 11, 2026

    @skylayer

    Hi @tgodzik,

    Just a heads up that the upstream modelcontextprotocol/java-sdk v0.17.1 was released recently.

    Release: https://github.com/modelcontextprotocol/java-sdk/releases/tag/v0.17.1

    Could you please take a look? Hopefully, this unblocks the fix for Metals. Thanks!

  6. tgodzik commented on Jan 12, 2026

    @tgodzik
    Contributor

    We are already on that version, so we should be good. I am planning afull release soon

  7. added this to the Metals v1.6.5 milestone on Jan 20, 2026
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

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions