Skip to main content

fastmcp.server.middleware.dereference

Middleware that dereferences $ref in JSON schemas before sending to clients.

Classes

DereferenceRefsMiddleware

Dereferences $ref in component schemas before sending to clients. Some MCP clients (e.g., VS Code Copilot) don’t handle JSON Schema refproperly.Thismiddlewareinlinesallref properly. This middleware inlines all ref definitions so schemas are self-contained. Enabled by default via FastMCP(dereference_schemas=True). Methods:

on_list_tools

on_list_tools(self, context: MiddlewareContext[mt.ListToolsRequest], call_next: CallNext[mt.ListToolsRequest, Sequence[Tool]]) -> Sequence[Tool]

on_list_resource_templates

on_list_resource_templates(self, context: MiddlewareContext[mt.ListResourceTemplatesRequest], call_next: CallNext[mt.ListResourceTemplatesRequest, Sequence[ResourceTemplate]]) -> Sequence[ResourceTemplate]