Skip to content

Bug: MCP auth fails because of unrecognised elicitation.form field #25322

Description

@fourslashw

Graylog mcp does not work in latest versions of cloud code because graylog does not recognise params.capabilities.elicitation.form field, which is part of the MCP standart: https://modelcontextprotocol.io/specification/2025-11-25/client/elicitation

Possible Solution

Allow unknown fields in Elicitation class or define it to MCP specs

Current workaround

Use Claude 2.1.6 where elicitation is disabled

Steps to Reproduce (for bugs)

Fails with elicitation.from:

  curl -s -X POST https://MYGRAYLOGSERVER/api/mcp \
    -H "Content-Type: application/json" \
    -H "Accept: application/json, text/event-stream" \
    -H "Authorization: Basic MYTOKENHERE" \
    -d '{
      "jsonrpc": "2.0",
      "id": 0,
      "method": "initialize",
      "params": {
        "protocolVersion": "2024-11-05",
        "capabilities": {
          "elicitation": {
            "form": {}
          },
          "roots": { "listChanged": true },
          "sampling": {}
        },
        "clientInfo": {
          "name": "claude-code",
          "version": "2.1.74"
        }
      }
    }'


{"jsonrpc":"2.0","id":0,"error":{"code":-32603,"message":"Unrecognized field \"form\" (class io.modelcontextprotocol.spec.McpSchema$ClientCapabilities$Elicitation), not marked as ignorable (0 known properties: ])\n 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\"])"}}

Works without:

curl -s -X POST https://MYGRAYLOGSERVER/api/mcp \
     -H "Content-Type: application/json" \
     -H "Accept: application/json, text/event-stream" \
     -H "Authorization: Basic MYTOKENHERE" \
     -d '{
       "jsonrpc": "2.0",
       "id": 0,
       "method": "initialize",
       "params": {
         "protocolVersion": "2024-11-05",
         "capabilities": {
           "elicitation": {
           },
           "roots": { "listChanged": true },
           "sampling": {}
         },
         "clientInfo": {
           "name": "claude-code",
           "version": "2.1.74"
         }
       }
     }'

{"jsonrpc":"2.0","id":0,"result":{"protocolVersion":"2025-06-18","capabilities":{"prompts":{"listChanged":false},"resources":{"subscribe":false,"listChanged":false},"tools":{"listChanged":false}},"serverInfo":{"name":"Graylog","version":"7.0.5+1a1d8ce"}}}

Your Environment

  • Graylog Version: 7.0.5+1a1d8ce
  • Java Version: openjdk 21.0.10 2026-01-20
  • OpenSearch Version: -
  • MongoDB Version: -
  • Operating System: -
  • Browser version: -

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions