fastmcp/docs/python-sdk/fastmcp-utilities-auth.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

67 lines
1.7 KiB
Text

---
title: auth
sidebarTitle: auth
---
# `fastmcp.utilities.auth`
Authentication utility helpers.
## Functions
### `decode_jwt_header` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/utilities/auth.py#L32" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
decode_jwt_header(token: str) -> dict[str, Any]
```
Decode JWT header without signature verification.
Useful for extracting the key ID (kid) for JWKS lookup.
**Args:**
- `token`: JWT token string (header.payload.signature)
**Returns:**
- Decoded header as a dictionary
**Raises:**
- `ValueError`: If token is not a valid JWT format
### `decode_jwt_payload` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/utilities/auth.py#L49" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
decode_jwt_payload(token: str) -> dict[str, Any]
```
Decode JWT payload without signature verification.
Use only for tokens received directly from trusted sources (e.g., IdP token endpoints).
**Args:**
- `token`: JWT token string (header.payload.signature)
**Returns:**
- Decoded payload as a dictionary
**Raises:**
- `ValueError`: If token is not a valid JWT format
### `parse_scopes` <sup><a href="https://github.com/PrefectHQ/fastmcp/blob/main/src/fastmcp/utilities/auth.py#L66" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>
```python
parse_scopes(value: Any) -> list[str] | None
```
Parse scopes from environment variables or settings values.
Accepts either a JSON array string, a comma- or space-separated string,
a list of strings, or ``None``. Returns a list of scopes or ``None`` if
no value is provided.