Open
Description
Currently, the MCP SDK doesn't provide a built-in mechanism for asynchronous task execution where the client can retrieve results after a connection loss. This feature would be valuable for long-running tasks or scenarios where network stability is a concern.
Feature request:
Implement a way for MCP Client to submit an asynchronous task to MCP Server, disconnect, and later retrieve the task execution results.
Proposed workflow:
- MCP Client submits a task to MCP Server
- MCP Server returns a unique task ID
- MCP Client can disconnect
- MCP Server continues processing the task
- MCP Client can reconnect later and query the task status/results using the task ID
Possible implementation ideas:
- Add a new API endpoint for submitting async tasks
- Implement a task queue on the server side
- Add a method to query task status and retrieve results
- Consider using a persistent storage solution for task results
This feature would enhance MCP's capabilities for handling long-running tasks and improve resilience in unstable network conditions.
Any thoughts or suggestions on how to best implement this feature would be appreciated.
Metadata
Metadata
Assignees
Labels
No labels