from marshmallow import Schema, fields class ToolSchema(Schema): id = fields.Integer(dump_only=True) name = fields.String(required=True) type = fields.String(required=True) description = fields.String(allow_none=True) config = fields.Dict(allow_none=True) is_active = fields.Boolean() created_at = fields.DateTime(dump_only=True) updated_at = fields.DateTime(dump_only=True) class ToolCreateSchema(Schema): name = fields.String(required=True) type = fields.String(required=True) description = fields.String(allow_none=True) config = fields.Dict(allow_none=True) class AgentToolSchema(Schema): id = fields.Integer(dump_only=True) agent_id = fields.Integer() tool_id = fields.Integer() created_at = fields.DateTime(dump_only=True) class AgentToolCreateSchema(Schema): tool_id = fields.Integer(required=True)