fastmcp/docs/python-sdk/fastmcp-server-tasks-handlers.mdx
marvin-context-protocol[bot] 9d5ffa86b3
chore: Update SDK documentation (#2604)
Co-authored-by: marvin-context-protocol[bot] <225465937+marvin-context-protocol[bot]@users.noreply.github.com>
2025-12-24 16:21:31 -05:00

43 lines
1.5 KiB
Text

---
title: handlers
sidebarTitle: handlers
---
# `fastmcp.server.tasks.handlers`
SEP-1686 task execution handlers.
Handles queuing tool/prompt/resource executions to Docket as background tasks.
## Functions
### `submit_to_docket` <sup><a href="https://github.com/jlowin/fastmcp/blob/main/src/fastmcp/server/tasks/handlers.py#L30" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
submit_to_docket(task_type: Literal['tool', 'resource', 'template', 'prompt'], key: str, component: Tool | Resource | ResourceTemplate | Prompt, arguments: dict[str, Any] | None = None) -> mcp.types.CreateTaskResult
```
Submit any component to Docket for background execution (SEP-1686).
Unified handler for all component types. Called by component's internal
methods (_run, _read, _render) when task metadata is present and mode allows.
Queues the component's method to Docket, stores raw return values,
and converts to MCP types on retrieval.
Note: Client-requested TTL in task_meta is intentionally ignored.
Server-side TTL policy (docket.execution_ttl) takes precedence for
consistent task lifecycle management.
**Args:**
- `task_type`: Component type for task key construction
- `key`: The component key as seen by MCP layer (with namespace prefix)
- `component`: The component instance (Tool, Resource, ResourceTemplate, Prompt)
- `arguments`: Arguments/params (None for Resource which has no args)
**Returns:**
- Task stub with proper Task object