{
  "$schema": "https://modelcontextprotocol.io/schema/manifest.json",
  "serverId": "xicae-weboffice",
  "name": "WebOffice Computational Node",
  "description": "Create Word documents, calculate spreadsheets with formulas, build presentation slides, and convert files in one place.",
  "version": "1.0.0",
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false
  },
  "tools": [
    {
      "name": "weboffice_generate_spreadsheet_template",
      "description": "Generate pre-baked, production-grade spreadsheet data matrices, verified Excel/Sheets formulas, ready-to-save CSV text, and formatted markdown tables for instant presentation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "template": {
            "type": "string",
            "enum": [
              "monthly_personal_budget",
              "client_invoice_billing",
              "loan_emi_calculator",
              "employee_payroll",
              "saas_metrics_dashboard",
              "student_gradebook"
            ],
            "description": "Pre-baked spreadsheet archetype preset"
          },
          "currency_symbol": {
            "type": "string",
            "description": "Currency symbol prefix (default: \"$\")"
          }
        },
        "required": [
          "template"
        ]
      }
    },
    {
      "name": "weboffice_evaluate_spreadsheet_formula",
      "description": "Evaluate standard spreadsheet formulas (SUM, AVERAGE, IF, VLOOKUP, INDEX, MATCH, PMT, NPV, IRR) with cell references and range arrays.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "formula": {
            "type": "string",
            "description": "Formula expression (e.g. \"=SUM(A1:A10)\", \"=VLOOKUP(D2, A1:B50, 2, FALSE)\")"
          },
          "grid_context": {
            "type": "string",
            "description": "JSON representation of referenced row and column cell values"
          }
        },
        "required": [
          "formula"
        ]
      }
    },
    {
      "name": "weboffice_explain_formula",
      "description": "Deconstruct complex spreadsheet formulas into an execution tree AST, extract all referenced cell coordinates and ranges, and diagnose common pitfalls (#DIV/0!, approximate VLOOKUP, out-of-bounds index).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "formula": {
            "type": "string",
            "description": "Formula string to explain"
          }
        },
        "required": [
          "formula"
        ]
      }
    },
    {
      "name": "weboffice_matrix_transform",
      "description": "Perform in-worker relational data transformations on tabular row matrices (group_by with sum/avg/count/min/max aggregation, multi-column sort, filter predicates, and matrix transposition).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "description": "Array of row objects to transform"
          },
          "operation": {
            "type": "string",
            "enum": [
              "group_by",
              "sort",
              "filter",
              "transpose"
            ],
            "description": "Transformation operation"
          }
        },
        "required": [
          "rows",
          "operation"
        ]
      }
    },
    {
      "name": "weboffice_parse_tabular_schema",
      "description": "Parse raw CSV, TSV, or structured document tables into validated OpenXML spreadsheet schema matrices with type inference.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "raw_table_string": {
            "type": "string",
            "description": "Raw tabular text data"
          },
          "delimiter": {
            "type": "string",
            "enum": [
              ",",
              "\t",
              "|",
              ";"
            ],
            "description": "Column delimiter"
          }
        },
        "required": [
          "raw_table_string"
        ]
      }
    },
    {
      "name": "weboffice_generate_document_recipe",
      "description": "Generate OpenXML or PDF transformation recipes for client-side document compilation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "document_type": {
            "type": "string",
            "enum": [
              "word_docx",
              "spreadsheet_xlsx",
              "slides_pptx",
              "pdf"
            ],
            "description": "Target document type"
          },
          "title": {
            "type": "string",
            "description": "Document title"
          }
        },
        "required": [
          "document_type",
          "title"
        ]
      }
    }
  ],
  "documentation": "https://xicae.dev/llms.txt"
}