Back to Fastmcp

Client Roots

docs/v2/clients/roots.mdx

3.2.4884 B
Original Source

import { VersionBadge } from '/snippets/version-badge.mdx'

<VersionBadge version="2.0.0" />

Roots are a way for clients to inform servers about the resources they have access to. Servers can use this information to adjust behavior or provide more relevant responses.

Setting Static Roots

Provide a list of roots when creating the client:

<CodeGroup> ```python Static Roots from fastmcp import Client

client = Client( "my_mcp_server.py", roots=["/path/to/root1", "/path/to/root2"] )


```python Dynamic Roots Callback
from fastmcp import Client
from fastmcp.client.roots import RequestContext

async def roots_callback(context: RequestContext) -> list[str]:
    print(f"Server requested roots (Request ID: {context.request_id})")
    return ["/path/to/root1", "/path/to/root2"]

client = Client(
    "my_mcp_server.py", 
    roots=roots_callback
)
</CodeGroup>