Skip to main content

fastmcp.server.providers.transforming

TransformingProvider for applying component transformations. This module provides the TransformingProvider class that wraps any Provider and applies transformations like namespace prefixes and tool renames.

Classes

TransformingProvider

Wraps any provider and applies component transformations. Users typically use provider.with_transforms() rather than instantiating this class directly. Multiple .with_transforms() calls stack - each creates a new wrapper that composes with the previous. Methods:

list_tools

list_tools(self) -> Sequence[Tool]
List tools with transformations applied.

get_tool

get_tool(self, name: str) -> Tool | None
Get tool by transformed name.

list_resources

list_resources(self) -> Sequence[Resource]
List resources with URI transformations applied.

get_resource

get_resource(self, uri: str) -> Resource | None
Get resource by transformed URI.

list_resource_templates

list_resource_templates(self) -> Sequence[ResourceTemplate]
List resource templates with URI transformations applied.

get_resource_template

get_resource_template(self, uri: str) -> ResourceTemplate | None
Get resource template by transformed URI.

list_prompts

list_prompts(self) -> Sequence[Prompt]
List prompts with transformations applied.

get_prompt

get_prompt(self, name: str) -> Prompt | None
Get prompt by transformed name.

get_tasks

get_tasks(self) -> Sequence[FastMCPComponent]
Get tasks with transformations applied to all components.

lifespan

lifespan(self) -> AsyncIterator[None]
Delegate lifespan to wrapped provider.