fastmcp/docs/python-sdk/fastmcp-server-tasks-requests.mdx
marvin-context-protocol[bot] 25d550caf1
chore: Update SDK documentation (#3478)
Co-authored-by: marvin-context-protocol[bot] <225465937+marvin-context-protocol[bot]@users.noreply.github.com>
2026-03-15 16:51:51 -04:00

91 lines
2.6 KiB
Text

---
title: requests
sidebarTitle: requests
---
# `fastmcp.server.tasks.requests`
SEP-1686 task request handlers.
Handles MCP task protocol requests: tasks/get, tasks/result, tasks/list, tasks/cancel.
These handlers query and manage existing tasks (contrast with handlers.py which creates tasks).
This module requires fastmcp[tasks] (pydocket). It is only imported when docket is available.
## Functions
### `tasks_get_handler` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/tasks/requests.py#L137" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
tasks_get_handler(server: FastMCP, params: dict[str, Any]) -> GetTaskResult
```
Handle MCP 'tasks/get' request (SEP-1686).
**Args:**
- `server`: FastMCP server instance
- `params`: Request params containing taskId
**Returns:**
- Task status response with spec-compliant fields
### `tasks_result_handler` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/tasks/requests.py#L222" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
tasks_result_handler(server: FastMCP, params: dict[str, Any]) -> Any
```
Handle MCP 'tasks/result' request (SEP-1686).
Converts raw task return values to MCP types based on task type.
**Args:**
- `server`: FastMCP server instance
- `params`: Request params containing taskId
**Returns:**
- MCP result (CallToolResult, GetPromptResult, or ReadResourceResult)
### `tasks_list_handler` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/tasks/requests.py#L403" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
tasks_list_handler(server: FastMCP, params: dict[str, Any]) -> ListTasksResult
```
Handle MCP 'tasks/list' request (SEP-1686).
Note: With client-side tracking, this returns minimal info.
**Args:**
- `server`: FastMCP server instance
- `params`: Request params (cursor, limit)
**Returns:**
- Response with tasks list and pagination
### `tasks_cancel_handler` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/server/tasks/requests.py#L421" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
tasks_cancel_handler(server: FastMCP, params: dict[str, Any]) -> CancelTaskResult
```
Handle MCP 'tasks/cancel' request (SEP-1686).
Cancels a running task, transitioning it to cancelled state.
**Args:**
- `server`: FastMCP server instance
- `params`: Request params containing taskId
**Returns:**
- Task status response showing cancelled state