
Service Report
io.github.theluckystrike由 GitHub 帳號 theluckystrike 發布v0.22.6更新於 Oct 24, 2026
Field service reports: hours, materials, sign-off, and the invoice the visit turns into.
概覽
本機 MCP 伺服器,用於現場服務工單:建立工單、記錄工時與材料、推進狀態,並產生完工報告與發票資料。
- 可以做什麼
- 建立、列出、檢視與刪除工單,包含客戶、現場地址、申請日期、描述與優先順序,並依草稿、已排程、進行中、完成、已開票逐步推進,每步記錄日期與備註。新增材料列(數量、單位成本、可選加成)與工時列(時數與費率)。產生純文字或 A4 PDF 完工報告,含簽收欄位。產生可直接用於 invoice_create 的發票資料,營業稅依共用設定稅率計算。彙總看板:各狀態工單數、本月工時、各幣別未開票金額。查詢或啟用授權。
- 適用情境
- 適合以工單形式管理施工與現場服務工作的情境:讓助理在作業過程中記錄工時與材料,並把完成的作業轉成客戶簽收報告與發票資料,無需重新輸入數字。
- 執行需求
- 以桌面本機程序執行,透過 .mcpb 安裝包或複製後建置安裝;npm 套件尚未發布,npx 目前會失敗。無需帳號或 API 金鑰。可選的 Pro 授權金鑰透過 MCP_LICENSE_KEY 提供,離線驗證。資料儲存在本機使用者資料目錄。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Service Report,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
mcp-work-order
In the official MCP Registry (io.github.theluckystrike/work-order).
Job orders for trades and field work, kept the way a job card is kept. Raise a work order
against a client (the same client record your invoices use), give it a site address, the
date it was asked for, what the job is and how urgent. Log what the job actually used as it
goes: labour as hours at a rate, parts as a quantity at a unit cost with an optional markup.
Move it along one step at a time, draft to scheduled to in progress to done to invoiced,
each step stamped with its date and a note. When it is finished, hand the customer a
completion report with the hours, the materials, the totals and a sign-off block, and take
the invoice payload straight to invoice_create without retyping a single figure.
Nothing is invented and nothing is stored twice: the value, the hours, the materials and the VAT are derived from the lines on every call, and the invoice payload's unit prices are already the billed units, so the invoice reproduces the work order to the minor unit.
npm publish for @theluckystrike/mcp-work-order is pending, so npx -y @theluckystrike/mcp-work-order returns 404 today. Until then, the .mcpb one-click bundle or a clone+build is the working path.
Install
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or
%APPDATA%\Claude\claude_desktop_config.json (Windows):
Claude Code
Cursor
~/.cursor/mcp.json (global) or .cursor/mcp.json (project), same entry as Claude Desktop.
Tools
Free vs Pro
The cap counts OPEN work orders (draft, scheduled, in progress), not the ones you have ever
raised, so finishing a job frees its slot. So does work_order_delete on a draft that has
no lines, which is free on every tier: a way back that only a Pro key can reach is not a way
back.
Get Pro: https://mcp.zovo.one/buy/work-order (one-time $19, lifetime), or all servers for $39: https://mcp.zovo.one/buy/bundle
Where the money comes from
This server keeps no arithmetic of its own. computeTotals, currencyDecimals,
formatMoney and roundHalfUp are imported from @theluckystrike/mcp-invoice/lib, the A4
renderer from @theluckystrike/mcp-billing-docs/lib, the corrupt-store quarantine from
@theluckystrike/mcp-timezone/lib. The VAT rate, the currency and the business name come
from the shared business profile that business_set in the invoice server writes; the
client comes from that server's client records. Nothing is written outside this server's own
directory.
The measured insight
A markup belongs on the unit cost, not on the line total, and one minor unit is what says
so. Seven parts at EUR 12.99 with 15 percent on top is EUR 14.94 a unit and EUR 104.58 on
the line. Marking up the line total instead is round(9093 * 1.15) = 10,457 minor units, a
cent less. Both look like the same sum, and only one of them is the figure the customer will
be billed: the invoice server rounds the unit price to the minor unit first and multiplies
(its D-R24 basis), so a work order that quotes the line-total figure quotes a number its own
invoice cannot reproduce. The gap appears on every line whose marked-up unit does not land on
a whole cent, it never nets out across lines because it is a rounding direction and not an
error, and it is invisible in a spreadsheet check because both bases add up correctly. The
unit suite asserts the 1-unit gap explicitly, so a change of basis fails the build instead of
quietly re-pricing every job on the board.
Privacy
All data stays on your machine, in ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/work-order/.
Nothing is sent anywhere. There is no account and no API key. License keys are verified
offline. This server reads one sibling file, the invoice server's clients.json, and writes
into no store but its own.
Built by theluckystrike. https://github.com/theluckystrike
Use these docs as an MCP server
Any MCP client (Claude, Cursor, Windsurf, VS Code) can read this repository's documentation directly via GitMCP - no install:
- Docs MCP URL: https://gitmcp.io/theluckystrike/mcp-work-order
來源:servers/work-order/README.md,提交 6535b33
工具
0版本歷史
3- v0.22.6最新Oct 14, 2026
- v0.22.2Sep 23, 2026
- v0.21.0Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分