Proposal: export urlElicitationMiddleware
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 50/100
Direzione di ricerca
Start in mcp/client.go and read urlElicitationMiddleware, including its TODO about exporting it. Compare the proposed exported middleware, a ClientOptions option, and the alternative decoding helper before settling the public API. Done means clients can handle -32042 elicitations without decoding the error data themselves.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Checklist
- I searched the existing issues, and this has not been reported before.
- This is a real problem that I ran into myself, using the latest release of the SDK.
- I ran into it in a production system, not in a toy example, a benchmark, or an automated or AI-driven scan of the code.
- I (a human) examined the relevant SDK code, and wrote or reviewed every line of this report. It is not unreviewed AI output.
- This report is brief and concise, and sticks to the facts needed to understand the problem.
What problem are you trying to solve?
Our client handles URL mode elicitations in its ElicitationHandler. On 2026-07-28 the input requests of a tool result reach that handler. On 2025-11-25 a -32042 error does not: CallTool returns the *jsonrpc.Error, so we decode its elicitations data ourselves to get the same ElicitParams.
urlElicitationMiddleware in mcp/client.go already turns -32042 into handler calls, but it is unexported (see its TODO(rfindley) about exporting it). It returns a handler error wrapped, so it also works for a client that can't wait in-process: our handler returns an error carrying the URL and we pause the task for a person.
Where did you hit this?
kagent's Go ADK agent runtime relays an MCP server's URL elicitation to the person as an A2A input-required task (kagent-dev/kagent#3500).
What would help?
Export the middleware, e.g. func URLElicitationMiddleware() Middleware, or an option on ClientOptions that installs it. A smaller alternative: an exported helper that decodes -32042 data into []*ElicitParams, the inverse of URLElicitationRequiredError.
AI assistance: used to check the SDK code paths and draft this report.
- Lingua principale
- Go
- Stelle
- 5.3k
- Fork
- 607
- Merge medio
- 1g 17h
- PR unite (30g)
- 80
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di modelcontextprotocol/go-sdk
-
Expose generic `SendNotification` on `ServerSession` for custom protocol extensionsForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertaneeds investigation
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
modelcontextprotocol/go-sdk#745 · 13 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
mcp: ClientSession.CallTool omits Mcp-Param-* headers unless the tool is in the ListTools cache, so a call without a prior tools/list is rejectedForse già presa @huynle-dev l’ha presa 2 giorni fa. Aperta
Difficoltà 4/5 1-2 giorni Idoneità per principianti 35/100
modelcontextprotocol/go-sdk#1481 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
mcp: list_changed can only be broadcast; a server cannot notify one session (2026-07-28 subscriptions/listen)Forse già presa @huynle-dev l’ha presa 2 giorni fa. Aperta
Difficoltà 4/5 1-2 giorni Idoneità per principianti 32/100
modelcontextprotocol/go-sdk#1480 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
mcp: Client.Connect falls back to initialize after a 401 on server/discover, running the authorization flow twiceForse già presa @kerthans l’ha presa 15 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
modelcontextprotocol/go-sdk#1423 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
jsonrpc: decimal and exponent integer IDs still lose precision after #1401Forse già presa @skosovsky l’ha presa 20 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
modelcontextprotocol/go-sdk#1404 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di modelcontextprotocol/go-sdk
Issue simili
-
Add an MCP server: imageatApertaneeds-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
stacklok/toolhive-catalog#1890 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
integrations/terraform-provider-github#3719 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Wayfinder sample agents don't reach the Data Plane on the quickstart packForse già presa Una pull request collegata a questa issue è aperta o già unita. ApertaType/Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
thunder-id/thunderid#6402 ·
I maintainer di solito rispondono entro 1 giorno
-
GoStratumEngineApertaaddition
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
awesome-selfhosted/awesome-selfhosted-data#3290 ·
I maintainer di solito rispondono entro 1 giorno
-
log4j2.xml from orchestration.extraConfiguration is rendered twice, and the install fails when orchestration.log4j2 is also setForse già presa @irisfield l’ha presa oggi. Apertaplatform/local
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
camunda/camunda-platform-helm#7854 ·
I maintainer di solito rispondono entro 1 giorno