diff --git a/src/mcp/server/fastmcp/utilities/func_metadata.py b/src/mcp/server/fastmcp/utilities/func_metadata.py index 760fd95de..45332ecaa 100644 --- a/src/mcp/server/fastmcp/utilities/func_metadata.py +++ b/src/mcp/server/fastmcp/utilities/func_metadata.py @@ -27,7 +27,7 @@ def model_dump_one_level(self) -> dict[str, Any]: That is, sub-models etc are not dumped - they are kept as pydantic models. """ kwargs: dict[str, Any] = {} - for field_name in self.model_fields.keys(): + for field_name in self.__class__.model_fields.keys(): kwargs[field_name] = getattr(self, field_name) return kwargs