Providers for dynamic MCP components.This module provides the Provider abstraction for providing tools,
resources, and prompts dynamically at runtime.Example:
from fastmcp import FastMCPfrom fastmcp.server.providers import Providerfrom fastmcp.tools import Toolclass DatabaseProvider(Provider): def __init__(self, db_url: str): self.db = Database(db_url) async def _list_tools(self) -> list[Tool]: rows = await self.db.fetch("SELECT * FROM tools") return [self._make_tool(row) for row in rows] async def _get_tool(self, name: str) -> Tool | None: row = await self.db.fetchone("SELECT * FROM tools WHERE name = ?", name) return self._make_tool(row) if row else Nonemcp = FastMCP("Server", providers=[DatabaseProvider(db_url)])