You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add TaskStore and InMemoryTaskStore for task state management #694
I went through the ts implementation at packages/core/src/experimental/tasks/ and the python implementation at src/mcp/shared/experimental/tasks/.
The plan is to follow the spec: TaskStore + TaskMessageQueue as separate interfaces, InMemoryTaskStore with lazy TTL eviction, sessionId: String required (aligning with #732 and how EventStore already passes streamId), pagination, and marked as experimental.
One question: python ships a separate polling.py helper forpoll_until_terminal; ts leaves polling to consumers. I'm leaning toward leaving it out for now and letting people layer that on if they need it, but happy to include if you'd rather have it in from the start. Let me know which way you'd prefer.
One question: python ships a separate polling.py helper forpoll_until_terminal; ts leaves polling to consumers. I'm leaning toward leaving it out for now and letting people layer that on if they need it, but happy to include if you'd rather have it in from the start. Let me know which way you'd prefer.
I agree with you, let's keep this out of scope for now
Activity
thierrypdamiba commentedon May 20, 2026
Hi @devcrocod, mind if I take this on?
I went through the ts implementation at
packages/core/src/experimental/tasks/and the python implementation atsrc/mcp/shared/experimental/tasks/.The plan is to follow the spec:
TaskStore+TaskMessageQueueas separate interfaces,InMemoryTaskStorewith lazy TTL eviction,sessionId: Stringrequired (aligning with #732 and howEventStorealready passesstreamId), pagination, and marked as experimental.One question: python ships a separate
polling.pyhelper forpoll_until_terminal; ts leaves polling to consumers. I'm leaning toward leaving it out for now and letting people layer that on if they need it, but happy to include if you'd rather have it in from the start. Let me know which way you'd prefer.devcrocod commentedon May 26, 2026
Hi @thierrypdamiba
Glad to hear you'll take this issue
I agree with you, let's keep this out of scope for now
devcrocod commentedon Jun 19, 2026
superseded by SEP-2663