--- title: Client Roots sidebarTitle: Roots description: Provide local context and resource boundaries to MCP servers. icon: folder-tree --- import { VersionBadge } from '/snippets/version-badge.mdx' 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: ```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 ) ```