formulon-mcp
@libraz/formulon-mcp is a stdio MCP server for Formulon. It gives AI agents a controlled way to open .xlsx or .xlsb workbooks, inspect structure, edit cells and sheets, recalculate formulas, search and replace text, and save the result in the format selected by its output extension — without Excel and without writing a host integration first.
Use it when the workbook is the artifact you want the agent to operate on, not just a file to summarize.
Glossary: MCP (Model Context Protocol)
An open protocol for giving AI agents structured tools and resources. A server exposes typed tool definitions over stdio or HTTP; a client (Claude Desktop, Claude Code, Codex CLI, …) connects and lets the model call those tools with validated inputs.
Glossary: stdio transport
The simplest MCP transport. The client launches the server as a child process and talks JSON-RPC over its stdin / stdout. No network, no ports — the OS process boundary is the security boundary.
The first two steps run in the host process (whatever runs the MCP client); everything from formulon-mcp onward runs in the server's own child process, reachable only over stdio.
Where to start
| Page | When to read |
|---|---|
| Install | Add formulon-mcp to Claude Code, Claude Desktop, Codex CLI, or any stdio-capable client |
| Workflow | Session model, mutation patterns, recalc / save loop |
| Tools | Detailed tool reference grouped by category |
| Security model | Allowlist, session isolation, what the server will and will not do |
Package
The MCP server is published as @libraz/formulon-mcp and depends on the Formulon WASM package. It resolves a compatible Formulon package through your package manager. It requires Node.js 22 or newer.
npx -y @libraz/formulon-mcpNo project checkout is required for typical use — MCP clients run the published package through npx.
What it is not
- Not a chat front-end. It is a tool server.
- Not a sandbox for running arbitrary code. Only allowlisted
Workbookmethods are reachable. - Not a viewer. Hand the bytes to
formulon-cellfor a browser surface.