What FsOpenXmlDsl MCP Server MCP server does
FsOpenXmlDsl MCP Server MCP server gives AI agents access to the workbook transformation features in Kookerella.FsOpenXmlDsl. The underlying library represents spreadsheet content as a typed F# data model, including workbook and worksheet structure, cells, formatting, validation, hyperlinks, comments, protection, tables, charts, images, sparklines, pivot tables, page setup, defined names, and macro project bytes.
The server is suited to workflows where an existing spreadsheet must become editable source or structured data, rather than only being created through an imperative API. It can produce source code that rebuilds a workbook, or translate workbook data through XML and JSON representations.
How it works
The library reads an existing .xlsx or .xlsm file into its workbook model and writes that model back to OOXML through the DocumentFormat.OpenXml SDK. Its reverse transformation supports round-tripping between a real spreadsheet and the DSL representation. Code generation then renders the model as a self-contained F# script or C# source.
XML conversion uses Xml.ofWorkbook and Xml.toWorkbook with an XML schema available in the library. JSON conversion uses the corresponding Json.ofWorkbook and Json.toWorkbook functions and represents the workbook as a System.Text.Json.Nodes.JsonObject tree. These paths support callers that want to generate or consume workbook data without writing F# or C# source.
Tools and capabilities
The MCP surface exposes six named operations:
generate_fsharp_script produces F# source for rebuilding a workbook.
generate_csharp_script produces C# source for rebuilding a workbook.
generate_xml converts workbook content to XML.
create_workbook_from_xml creates a workbook from XML input.
generate_json converts workbook content to JSON.
create_workbook_from_json creates a workbook from JSON input.
The same project also provides convert and build commands through the fsopenxmldsl-mcp CLI, although those are command-line interfaces rather than MCP tools.
Setup and configuration
Install the tool globally with dotnet tool install -g Kookerella.FsOpenXmlDsl.Mcp. The README demonstrates conversion with fsopenxmldsl-mcp convert your-file.xlsx --lang csharp. A self-contained build is also available from the repository’s Releases page for platforms where .NET is not installed.
No required environment variables or client-specific configuration are documented in the supplied material. The repository does not identify particular MCP desktop clients.
Limitations and notes
SpreadsheetML coverage is defined by the project’s mapping documentation. Some features map directly, some are approximated, and others are not modeled yet. Modern threaded comments are not represented; the comments support described by the project is for classic cell comments, called Notes in current Excel.
JSON schema validation is used by the test suite but is not described as a public API. The workbook model stores a macro-enabled file’s raw vbaProject.bin bytes; the material does not describe macro editing or generation beyond that opaque field. FsOpenXmlDsl MCP Server MCP server should therefore be evaluated against the project’s feature mapping when preserving less-common Excel features matters.