from typing import Any from uuid import UUID from app.schemas.base import OrmBase class ToolDefinitionBase(OrmBase): key: str name: str version: str = "1.0.0" description: str | None = None image: str manifest_data: dict[str, Any] | None = None class ToolDefinitionCreate(ToolDefinitionBase): pass class ToolDefinitionRead(ToolDefinitionBase): id: UUID class ToolDefinitionUpdate(OrmBase): name: str | None = None version: str | None = None description: str | None = None image: str | None = None manifest_data: dict[str, Any] | None = None