[PR #70] Add Bilig WorkPaper formula readback server #14

Open
opened 2026-10-18 21:09:29 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/openapi-servers/pull/70
Author: @gregkonush
Created: 5/23/2026
Status: 🔄 Open

Base: main ← Head: add-bilig-workpaper-server


📝 Commits (1)

  • f1e5f4e Add Bilig WorkPaper formula readback server

📊 Changes

7 files changed (+278 additions, -0 deletions)

View changed files

📝 README.md (+1 -0)
📝 compose.yaml (+7 -0)
➕ servers/bilig-workpaper/Dockerfile (+12 -0)
➕ servers/bilig-workpaper/README.md (+85 -0)
➕ servers/bilig-workpaper/compose.yaml (+7 -0)
➕ servers/bilig-workpaper/main.py (+162 -0)
➕ servers/bilig-workpaper/requirements.txt (+4 -0)

📄 Description

Summary

  • Add a Bilig WorkPaper OpenAPI tool server.
  • Expose POST /forecast/readback for writing one spreadsheet input, recalculating formulas, and returning verified before/after readback proof.
  • Add standalone and root compose entries plus server documentation.

Why

OpenAPI-compatible agents sometimes need spreadsheet-backed business logic, but UI automation and cached XLSX formula values are hard to trust. This server gives Open WebUI users a typed API that fails closed unless Bilig returns verified: true.

Bilig now has a first-party Open WebUI setup page covering native Streamable HTTP MCP and mcpo bridge options:
https://proompteng.github.io/bilig/open-webui-workpaper-mcp.html

Validation

  • python3 -m py_compile servers/bilig-workpaper/main.py
  • uv run --no-project --with ruff ruff check servers/bilig-workpaper/main.py
  • uv run --no-project --with ruff ruff format servers/bilig-workpaper/main.py
  • FastAPI TestClient checked /health, /openapi.json, and live POST /forecast/readback; verified after.expectedArr == 96000
  • docker compose -f servers/bilig-workpaper/compose.yaml config
  • docker compose config

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/openapi-servers/pull/70 **Author:** [@gregkonush](https://github.com/gregkonush) **Created:** 5/23/2026 **Status:** 🔄 Open **Base:** `main` ← **Head:** `add-bilig-workpaper-server` --- ### 📝 Commits (1) - [`f1e5f4e`](https://github.com/open-webui/openapi-servers/commit/f1e5f4e7a3867b5346f0f1bcbfff52333fcb5228) Add Bilig WorkPaper formula readback server ### 📊 Changes **7 files changed** (+278 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+1 -0) 📝 `compose.yaml` (+7 -0) ➕ `servers/bilig-workpaper/Dockerfile` (+12 -0) ➕ `servers/bilig-workpaper/README.md` (+85 -0) ➕ `servers/bilig-workpaper/compose.yaml` (+7 -0) ➕ `servers/bilig-workpaper/main.py` (+162 -0) ➕ `servers/bilig-workpaper/requirements.txt` (+4 -0) </details> ### 📄 Description ## Summary - Add a Bilig WorkPaper OpenAPI tool server. - Expose `POST /forecast/readback` for writing one spreadsheet input, recalculating formulas, and returning verified before/after readback proof. - Add standalone and root compose entries plus server documentation. ## Why OpenAPI-compatible agents sometimes need spreadsheet-backed business logic, but UI automation and cached XLSX formula values are hard to trust. This server gives Open WebUI users a typed API that fails closed unless Bilig returns `verified: true`. ## Related Bilig setup guide Bilig now has a first-party Open WebUI setup page covering native Streamable HTTP MCP and `mcpo` bridge options: https://proompteng.github.io/bilig/open-webui-workpaper-mcp.html ## Validation - `python3 -m py_compile servers/bilig-workpaper/main.py` - `uv run --no-project --with ruff ruff check servers/bilig-workpaper/main.py` - `uv run --no-project --with ruff ruff format servers/bilig-workpaper/main.py` - FastAPI TestClient checked `/health`, `/openapi.json`, and live `POST /forecast/readback`; verified `after.expectedArr == 96000` - `docker compose -f servers/bilig-workpaper/compose.yaml config` - `docker compose config` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
open-webui/openapi-servers#14
No description provided.