fastmcp/docs/python-sdk/fastmcp-utilities-lifespan.mdx
Jeremiah Lowin 9b248a15b3
Update repository references for transfer to prefecthq (#3207)
* Update repository references from jlowin/fastmcp to prefecthq/fastmcp

* Retrigger CI after repo transfer

* chore: Update SDK documentation

* Only run deep triage on bug issues for jlowin

---------

Co-authored-by: marvin-context-protocol[bot] <225465937+marvin-context-protocol[bot]@users.noreply.github.com>
2026-02-18 10:33:56 -05:00

36 lines
1.1 KiB
Text

---
title: lifespan
sidebarTitle: lifespan
---
# `fastmcp.utilities.lifespan`
Lifespan utilities for combining async context manager lifespans.
## Functions
### `combine_lifespans` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/utilities/lifespan.py#L12" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
combine_lifespans(*lifespans: Callable[[AppT], AbstractAsyncContextManager[Mapping[str, Any] | None]]) -> Callable[[AppT], AbstractAsyncContextManager[dict[str, Any]]]
```
Combine multiple lifespans into a single lifespan.
Useful when mounting FastMCP into FastAPI and you need to run
both your app's lifespan and the MCP server's lifespan.
Works with both FastAPI-style lifespans (yield None) and FastMCP-style
lifespans (yield dict). Results are merged; later lifespans override
earlier ones on key conflicts.
Lifespans are entered in order and exited in reverse order (LIFO).
**Args:**
- `*lifespans`: Lifespan context manager factories to combine.
**Returns:**
- A combined lifespan context manager factory.