ai-mcp: support publishing MCP list changes to subscribed clients
Maintainer thường phản hồi trong vòng 1 ngày
@jherr đang làm issue này rồi.
Từ ngày 6/10/2026.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 28/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- typescript
- Lĩnh vực
- ai, api, backend-api-design
Hướng nghiên cứu
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.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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.
- Ngôn ngữ chính
- TypeScript
- Star
- 3.2k
- Fork
- 361
- Merge trung bình
- 1 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 210
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của TanStack/ai
-
summarize() sends temperature 0.3 to models that reject sampling parameters (e.g. claude-sonnet-5-5)Có thể đã có người làm @jherr đã nhận 2 ngày trước. Đang mởhas-pr waiting-on: maintainer
TanStack/ai#1703 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
ai-openrouter: malformed Chat Completions tool arguments execute as an empty objectCó thể đã có người làm @tombeckenham đã nhận 3 ngày trước. Đang mởhas-pr waiting-on: maintainer
TanStack/ai#1689 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
StreamProcessor discards metadata from REASONING_MESSAGE_STARTCó thể đã có người làm @tombeckenham đã nhận 3 ngày trước. Đang mởwaiting-on: maintainer
TanStack/ai#1667 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Async persistence restored before attach() never rejoins an in-flight runCó thể đã có người làm @tombeckenham đã nhận 6 ngày trước. Đang mởhas-pr waiting-on: maintainer
TanStack/ai#1639 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
`ai-opencode`: `RUN_FINISHED` never arrives when an adapter teardown step does not settleCó thể đã có người làm @tombeckenham đã nhận 6 ngày trước. Đang mởwaiting-on: maintainer
TanStack/ai#1638 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Issue tương tự
-
bug help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
agent-task risk:low
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 88/100
guyellis/http-status-check#512 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
microsoft/playwright#43327 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
microsoft/TypeScript#64758 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
opensearch-project/OpenSearch-Dashboards#12937 ·
Maintainer thường phản hồi trong vòng 2 ngày