[ { "type": "function", "function": { "name": "CalcTools.get_workbook_info", "description": "Get workbook info: file path, name, sheets, and active sheet", "parameters": { "type": "object", "properties": {}, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.save", "description": "Save workbook to current location", "parameters": { "type": "object", "properties": {}, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.get_column_data", "description": "Get all data from specified column", "parameters": { "type": "object", "properties": { "column_name": { "type": "string", "description": "Column name (e.g. 'A', 'B')" } }, "required": [ "column_name" ] } } }, { "type": "function", "function": { "name": "CalcTools.switch_active_sheet", "description": "Switch to sheet (creates if not exists)", "parameters": { "type": "object", "properties": { "sheet_name": { "type": "string", "description": "Sheet name" } }, "required": [ "sheet_name" ] } } }, { "type": "function", "function": { "name": "CalcTools.set_column_values", "description": "Set values to column (values only, not formulas)", "parameters": { "type": "object", "properties": { "column_name": { "type": "string", "description": "Column name (e.g. 'A', 'B')" }, "data": { "type": "array", "description": "Values to write" }, "start_index": { "type": "integer", "description": "First row index (default: 2)" } }, "required": [ "column_name", "data" ] } } }, { "type": "function", "function": { "name": "CalcTools.highlight_range", "description": "Highlight range with color", "parameters": { "type": "object", "properties": { "range_str": { "type": "string", "description": "Range (e.g. 'A1:B10')" }, "color": { "type": "integer", "description": "Color value (default: 0xFF0000)" } }, "required": [ "range_str" ] } } }, { "type": "function", "function": { "name": "CalcTools.transpose_range", "description": "Transpose range and paste to target cell", "parameters": { "type": "object", "properties": { "source_range": { "type": "string", "description": "Source range (e.g. 'A1:B10')" }, "target_cell": { "type": "string", "description": "Target cell (e.g. 'A1')" } }, "required": [ "source_range", "target_cell" ] } } }, { "type": "function", "function": { "name": "CalcTools.export_to_csv", "description": "Export to CSV with same path/name", "parameters": { "type": "object", "properties": {}, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.sort_column", "description": "Sort column data", "parameters": { "type": "object", "properties": { "column_name": { "type": "string", "description": "Column name (e.g. 'A', 'B')" }, "ascending": { "type": "boolean", "description": "Sort ascending (default: true)" }, "start_index": { "type": "integer", "description": "First row index (default: 2)" } }, "required": [ "column_name" ] } } }, { "type": "function", "function": { "name": "CalcTools.set_validation_list", "description": "Set validation list for column", "parameters": { "type": "object", "properties": { "column_name": { "type": "string", "description": "Column name (e.g. 'A', 'B')" }, "values": { "type": "array", "description": "Validation values" } }, "required": [ "column_name", "values" ] } } }, { "type": "function", "function": { "name": "CalcTools.hide_row_data", "description": "Hide rows containing value", "parameters": { "type": "object", "properties": { "value": { "type": "string", "description": "Value to hide (default: 'N/A')" } }, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.reorder_columns", "description": "Reorder columns by specified order", "parameters": { "type": "object", "properties": { "column_order": { "type": "array", "description": "Column names in desired order (e.g. ['A', 'B', 'C'])" } }, "required": [ "column_order" ] } } }, { "type": "function", "function": { "name": "CalcTools.create_pivot_table", "description": "Create pivot table from source sheet", "parameters": { "type": "object", "properties": { "source_sheet": { "type": "string", "description": "Source sheet name" }, "table_name": { "type": "string", "description": "Pivot table name" }, "row_fields": { "type": "array", "description": "Row labels (e.g. ['A', 'B'])" }, "col_fields": { "type": "array", "description": "Column labels (e.g. ['A', 'B'])" }, "value_fields": { "type": "array", "description": "Value fields (e.g. ['A', 'B'])" }, "aggregation_function": { "type": "string", "description": "Aggregation function (sum, count, average, min, max)" }, "target_cell": { "type": "string", "description": "Target cell (default: 'A1')" } }, "required": [ "source_sheet", "table_name", "value_fields" ] } } }, { "type": "function", "function": { "name": "CalcTools.merge_cells", "description": "Merge cells in range", "parameters": { "type": "object", "properties": { "range_str": { "type": "string", "description": "Cell range (e.g. 'A1:B10')" } }, "required": [ "range_str" ] } } }, { "type": "function", "function": { "name": "CalcTools.set_cell_value", "description": "Set cell value", "parameters": { "type": "object", "properties": { "cell": { "type": "string", "description": "Cell reference (e.g. 'A1')" }, "value": { "type": "string", "description": "Cell value" } }, "required": [ "cell", "value" ] } } }, { "type": "function", "function": { "name": "CalcTools.format_range", "description": "Apply formatting to range", "parameters": { "type": "object", "properties": { "range_str": { "type": "string", "description": "Range (e.g. 'A1:B10')" }, "background_color": { "type": "string", "description": "Background color (e.g. '#0000ff')" }, "font_color": { "type": "string", "description": "Font color (e.g. '#ffffff')" }, "bold": { "type": "boolean", "description": "Bold text" }, "alignment": { "type": "string", "description": "Text alignment (left, center, right)" } }, "required": [ "range_str" ] } } }, { "type": "function", "function": { "name": "CalcTools.create_chart", "description": "Create chart from data range", "parameters": { "type": "object", "properties": { "chart_type": { "type": "string", "description": "Chart type (bar, column, line, pie, scatter, area)" }, "data_range": { "type": "string", "description": "Data range (e.g. 'A1:B10')" }, "title": { "type": "string", "description": "Chart title" }, "x_axis_title": { "type": "string", "description": "X axis title" }, "y_axis_title": { "type": "string", "description": "Y axis title" } }, "required": [ "chart_type", "data_range" ] } } }, { "type": "function", "function": { "name": "CalcTools.freeze_panes", "description": "Freeze rows/columns", "parameters": { "type": "object", "properties": { "rows": { "type": "integer", "description": "Rows to freeze from top" }, "columns": { "type": "integer", "description": "Columns to freeze from left" } }, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.rename_sheet", "description": "Rename worksheet", "parameters": { "type": "object", "properties": { "old_name": { "type": "string", "description": "Current sheet name" }, "new_name": { "type": "string", "description": "New sheet name" } }, "required": [ "old_name", "new_name" ] } } }, { "type": "function", "function": { "name": "CalcTools.copy_sheet", "description": "Copy worksheet", "parameters": { "type": "object", "properties": { "source_sheet": { "type": "string", "description": "Source sheet name" }, "new_sheet_name": { "type": "string", "description": "New sheet name (optional)" } }, "required": [ "source_sheet" ] } } }, { "type": "function", "function": { "name": "CalcTools.reorder_sheets", "description": "Change sheet order", "parameters": { "type": "object", "properties": { "sheet_name": { "type": "string", "description": "Sheet to move" }, "position": { "type": "integer", "description": "New position (0-based)" } }, "required": [ "sheet_name", "position" ] } } }, { "type": "function", "function": { "name": "CalcTools.set_chart_legend_position", "description": "Set chart legend position", "parameters": { "type": "object", "properties": { "position": { "type": "string", "description": "Legend position (top, bottom, left, right, none)" } }, "required": [ "position" ] } } }, { "type": "function", "function": { "name": "CalcTools.set_number_format", "description": "Apply number format to range", "parameters": { "type": "object", "properties": { "range_str": { "type": "string", "description": "Range (e.g. 'A1:B10')" }, "format_type": { "type": "string", "description": "Format type (general, number, currency, accounting, date, time, percentage, fraction, scientific, text)" }, "decimal_places": { "type": "integer", "description": "Decimal places (optional)" } }, "required": [ "range_str", "format_type" ] } } }, { "type": "function", "function": { "name": "CalcTools.adjust_column_width", "description": "Adjust column width", "parameters": { "type": "object", "properties": { "columns": { "type": "string", "description": "Column range (e.g. 'A:C')" }, "width": { "type": "number", "description": "Width in characters" }, "autofit": { "type": "boolean", "description": "Autofit to content" } }, "required": [ "columns" ] } } }, { "type": "function", "function": { "name": "CalcTools.adjust_row_height", "description": "Adjust row height", "parameters": { "type": "object", "properties": { "rows": { "type": "string", "description": "Row range (e.g. '1:10')" }, "height": { "type": "number", "description": "Height in points" }, "autofit": { "type": "boolean", "description": "Autofit to content" } }, "required": [ "rows" ] } } }, { "type": "function", "function": { "name": "CalcTools.export_to_pdf", "description": "Export to PDF", "parameters": { "type": "object", "properties": { "file_path": { "type": "string", "description": "PDF save path (default: same as original)" }, "sheets": { "type": "array", "description": "Sheets to include (default: all)" }, "open_after_export": { "type": "boolean", "description": "Open PDF after export (default: false)" } }, "required": [] } } }, { "type": "function", "function": { "name": "CalcTools.set_zoom_level", "description": "Set worksheet zoom level", "parameters": { "type": "object", "properties": { "zoom_percentage": { "type": "integer", "description": "Zoom percentage (10-400)" } }, "required": [ "zoom_percentage" ] } } } ]