Skip to content

feat: 台灣工作日計算引擎 remote MCP server - #9

Merged
imsyuan merged 3 commits into
mainfrom
feat/workday-mcp
Jun 2, 2026
Merged

feat: 台灣工作日計算引擎 remote MCP server#9
imsyuan merged 3 commits into
mainfrom
feat/workday-mcp

Conversation

@imsyuan

@imsyuan imsyuan commented Jun 2, 2026

Copy link
Copy Markdown
Owner

摘要

新增「台灣工作日計算引擎」remote MCP server,把假日資料從裸 JSON 升級為可被 LLM/agent 與 HR/企業呼叫的時間計算服務。

內容

  • mcp/ 子專案:純函式 engine + Cloudflare Workers 薄殼(McpAgent / Streamable HTTP),5 個工具於 /mcp
    • count_workdaysadd_workdaysnext_makeup_workdayoptimize_leavefind_travel_windows
  • 資料 bundle 進 Worker(不繞 jsDelivr),年份由 data/*.json 動態產生
  • 自訂網域 mcp.tw-holidays.gooliya.com
  • GitHub Action:data/**mcp/** 變動時自動 redeploy(需 secret CLOUDFLARE_API_TOKEN
  • 透過 Spectra change taiwan-workday-mcp 規格化並封存(openspec/

驗證

  • 23 個 engine 單元測試通過、tsc 乾淨、wrangler 部署成功
  • 線上實測 5 工具與錯誤路徑皆正常
  • 安全檢查:無可利用漏洞

注意

  • 不動 data/ 與既有網站行為;validate-data 應不受影響
  • 多國、收費、stdio 版皆刻意延後(見 proposal Non-Goals)

imsyuan added 3 commits June 2, 2026 15:21
- workday-engine 純函式核心:工作日判定、連假/補班查詢、請假最佳化、出遊時段
- Cloudflare Workers 薄殼 (McpAgent / Streamable HTTP),5 個工具於 /mcp
- 資料 bundle 進 Worker,不繞 jsDelivr;年份由 data/*.json 動態產生
- 23 個 engine 單元測試;README 新增 MCP 說明
- 透過 Spectra change taiwan-workday-mcp 規格化並封存
- wrangler.jsonc 加 custom domain route(gooliya.com zone)
- 新增 scripts/demo.mjs 做線上/本地工具實測
- 註:加自訂網域後 workers.dev 預設停用,目前單一入口為品牌網域
push 到 main 且動到 data/** 或 mcp/** 時觸發;先跑 engine 測試再 wrangler deploy。
需 repo secret CLOUDFLARE_API_TOKEN。
@imsyuan
imsyuan enabled auto-merge (squash) June 2, 2026 07:25
@imsyuan
imsyuan merged commit 403d22e into main Jun 2, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant