async def execute(self, *args, **kwargs):
        """
        Execute the tool with context awareness.
        This wraps the results_function to ensure context is available.
        """
        if self.context is None:
            raise ValueError(
                f"Tool '{self.name}' requires context but none was provided"
            )

        # Call the actual implementation with context
        return await self.results_function(context=self.context, **kwargs)

        Execute the tool with context awareness.
        This wraps the results_function to ensure context is available.
        
py/shared/abstractions/tool.py