ai-mcp: support publishing MCP list changes to subscribed clients
Los mantenedores suelen responder en 1 día
@jherr ya está trabajando en esto.
Desde el 6/10/2026.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 28/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- ai, api, backend-api-design
Línea de trabajo
Start from the follow-up to #1627: how createMCPServer registers tools, resources, and prompts and currently advertises listChanged: false while rejecting subscriptions/listen. Design a public publish path for those lists, including multi-instance event sources, auth scoping, Worker-safe keepalives, and cleanup on cancel/disconnect. Done means callers can publish, subscribed clients get the matching MCP notification and a fresh list, listChanged is true only when a publication source exists, plus unit/E2E coverage, API docs, and a changeset.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Motivation
Follow-up to #1627. createMCPServer currently registers tool, resource, and prompt definitions when it builds a server. It has no public way to publish list-change events. The fix for #1627 advertises listChanged: false and rejects subscriptions/listen, so clients do not open idle streams that hang on Cloudflare Workers.
Applications with changing MCP lists need a supported way to tell connected clients to refresh. A resource template's list callback can return different entries over time, but the server cannot announce that change today.
Proposed capability
Design a public way for callers to publish tool, resource, and prompt list changes. Support MCP subscriptions/listen when a publication source is configured. The design should specify how a changed list is served on subsequent list requests, how events reach clients across server instances, and how a subscription stays healthy while no changes occur.
Acceptance criteria
- Callers can publish a change for each supported list, and subscribed clients receive the matching MCP notification and can fetch the updated list.
- The server advertises
listChanged: trueonly for lists it can publish. Without a publication source, it retains the static behavior from #1627. - Idle subscriptions send a bounded keepalive or use another Worker-compatible approach; cancellation and disconnect release their resources.
- The API defines how applications provide a shared event source for deployments with multiple instances and how events stay scoped to the correct caller when authentication is enabled.
- Unit and E2E coverage exercise publication, client refresh, idle periods, and connection cleanup. Document the API and add a changeset.
Related: #1627.
- Lenguaje dominante
- TypeScript
- Estrellas
- 3.2k
- Forks
- 361
- Merge medio
- 1 d 15 h
- PR fusionados (30 d)
- 210
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de TanStack/ai
-
summarize() sends temperature 0.3 to models that reject sampling parameters (e.g. claude-sonnet-5-5)Posiblemente ocupada @jherr la tomó hace 2 días. Abiertohas-pr waiting-on: maintainer
TanStack/ai#1703 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
ai-openrouter: malformed Chat Completions tool arguments execute as an empty objectPosiblemente ocupada @tombeckenham la tomó hace 3 días. Abiertohas-pr waiting-on: maintainer
TanStack/ai#1689 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
StreamProcessor discards metadata from REASONING_MESSAGE_STARTPosiblemente ocupada @tombeckenham la tomó hace 3 días. Abiertowaiting-on: maintainer
TanStack/ai#1667 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Async persistence restored before attach() never rejoins an in-flight runPosiblemente ocupada @tombeckenham la tomó hace 6 días. Abiertohas-pr waiting-on: maintainer
TanStack/ai#1639 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
`ai-opencode`: `RUN_FINISHED` never arrives when an adapter teardown step does not settlePosiblemente ocupada @tombeckenham la tomó hace 6 días. Abiertowaiting-on: maintainer
TanStack/ai#1638 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de TanStack/ai
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
better-auth/better-auth#11723 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
area: docs difficulty: easy documentation good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Worker-Erstellung bricht langsame Git-Worktree-Checkouts nach 20 Sekunden abPosiblemente ocupada @KajoVanBuyten la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
AgentSystemLabs/agent-office#367 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
pierrecomputer/pierre#1187 ·
Los mantenedores suelen responder en 1 día
-
area: frontend bug
Dificultad 1/5 1-3 horas Aptitud para principiantes 85/100
snapotter-hq/SnapOtter#2425 ·
Los mantenedores suelen responder en 1 día