```diff
--- test_files/072-original.txt	2025-03-07 19:06:17
+++ test_files/072-modified.txt	2025-03-07 19:06:17
@@ -7,6 +7,7 @@
 from pydantic import BaseModel
 
 from composio.tools.base.abs import (
+    DEPRECATED_MARKER,
     Action,
     InvalidClassDefinition,
     Tool,
@@ -60,7 +61,26 @@
         assert SomeAction.description == "Some action"
         assert str(SomeAction.file) == __file__
 
+    def test_deprecated_marker(self) -> None:
 
+        class Request(BaseModel):
+            pass
+
+        class Response(BaseModel):
+            pass
+
+        class SomeAction(Action[Request, Response]):
+            """Some action <<DEPRECATED use some_other_action>>"""
+
+            def execute(self, request: Request, metadata: Dict) -> Response:
+                return Response()
+
+        assert (
+            SomeAction.description == "Some action <<DEPRECATED use some_other_action>>"
+        )
+        assert DEPRECATED_MARKER in SomeAction.description
+
+
 class TestToolBuilder:
     def test_missing_methods(self) -> None:
         with pytest.raises(
@@ -69,6 +89,8 @@
         ):
 
             class SomeTool(Tool):
+                logo = ""
+
                 def execute(self, request: dict, metadata: Dict) -> dict:  # type: ignore
                     return {}
 
@@ -81,6 +103,8 @@
         ):
 
             class SomeTool(Tool):
+                logo = ""
+
                 def actions(self) -> list:  # type: ignore
                     return []
 
@@ -88,6 +112,8 @@
 
     def test_metadata(self) -> None:
         class SomeTool(Tool):
+            logo = ""
+
             @classmethod
             def actions(cls) -> list:
                 return []
@@ -112,16 +138,40 @@
                 return Response()
 
         class SomeTool(Tool):
+            logo = ""
+
             @classmethod
             def actions(cls) -> list:
                 return [SomeAction]
 
         ToolBuilder.validate(obj=SomeTool, name="SomeTool", methods=("actions",))
         ToolBuilder.set_metadata(obj=SomeTool)
-        ToolBuilder.setup_children(obj=SomeTool)
+        ToolBuilder.setup_children(obj=SomeTool, no_auth=True)
 
         SomeTool.register()
 
         assert SomeAction.enum == "SOME_TOOL_SOME_ACTION"
+        assert SomeAction.no_auth is True
         assert isinstance(tool_registry["local"][SomeTool.enum], SomeTool)
         assert action_registry["local"][SomeAction.enum] is SomeAction
+
+    def test_description_builder(self) -> None:
+
+        class SomeTool(Tool):
+            """
+            Some Tool
+
+            With description.
+            """
+
+            logo = ""
+
+            @classmethod
+            def actions(cls) -> list:
+                return []
+
+        ToolBuilder.validate(obj=SomeTool, name="SomeTool", methods=("actions",))
+        ToolBuilder.set_metadata(obj=SomeTool)
+        ToolBuilder.setup_children(obj=SomeTool)
+
+        assert SomeTool.description == "Some Tool With description."
```
