SmartCut

dev.smartcut由 smartcut.dev 發布官方發布者v1.0.0更新於 Nov 2, 2026

Cutlist optimization for sheet, linear and roll stock, with grain, kerf, nesting and saw exports.

已驗證Streamable HTTP可網頁執行開發者工具商業與電商

概覽

AI 產生的概覽

託管式 SmartCut MCP 伺服器,讓助理對板材、線材與捲材進行裁切最佳化,並匯出可直接上鋸的排版結果。

可以做什麼
  • 提交、驗證與取消裁切最佳化工作,查詢狀態並取得排版結果
  • 將結果匯出為 PDF、CSV、DXF、SVG、PTX、Biesse XML 或 Mayer .may,並列出鋸機及其支援格式
  • 依結果產生可列印的零件標籤
  • 查詢 API 用量統計
  • 把從 PDF 或裁切圖照片擷取的零件推送至開啟的 Cutlist Evolution 編輯器,供使用者確認
適用情境
適合報價、依尺寸裁切訂單處理、電商結帳與 CAM 交接等情境,想要高品質最佳化與機器可讀的鋸切輸出,又不想自行維護幾何引擎。若需要免連網、免帳號的行程內排版函式庫,則不適合。
執行需求
遠端 streamable HTTP 端點 api.smartcut.dev,無需本機套件。需要 SmartCut API 金鑰,以原始值放在 Authorization 標頭中,不可加 Bearer 前綴。需要付費訂閱帳號,並能連線至該服務。
安裝前請注意
API 金鑰是可計費的憑證,須保密並以原始形式傳送,加上 Bearer 前綴會回傳 401。此服務採訂閱制,呼叫可能消耗付費額度,可用 usage 工具查看用量。import_parts 會將零件寫入開啟的 Cutlist Evolution 編輯器,calculate 則會把工作提交至第三方託管服務。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 SmartCut,將其新增到工作區。
  2. 連接 Authorization token 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/dev.smartcut%2Fcutlist-optimizer/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "smartcut": {
      "type": "http",
      "url": "https://api.smartcut.dev/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

SmartCut API

SmartCut is a hosted cutting-optimisation (cutlist / nesting) API for sheet, linear and roll stock. This repository holds the OpenAPI specification, runnable examples and MCP configuration for integrating it into your own software.

[Licence: MIT] [OpenAPI 3.0] [Docs]

What it does

  • Sheet optimisation — guillotine (edge-to-edge, saw-cuttable) and efficiency modes for plywood, MDF, glass, plastic and sheet metal.
  • Linear (1D) optimisation for timber, bar, pipe and extrusion.
  • True-shape nesting for irregular parts from DXF, for laser, plasma, waterjet and CNC routing.
  • Grain direction and per-part orientation locks, so a part can be pinned to the length or width of the grain, or left free to rotate.
  • Edge banding, face finishes, blade kerf and stock trim as first-class inputs, not post-processing.
  • Machine-ready exports — PDF, CSV, DXF, SVG, and native saw formats including PTX (Homag), Biesse XML and Mayer .may.
  • Printable part labels generated from the same result.

Quickstart

Get a key at https://smartcut.dev/account, then:

bash
curl -X POST https://api.smartcut.dev/v3/calculate \  -H "Authorization: $SMARTCUT_API_KEY" \  -H "Content-Type: application/json" \  -d @examples/requests/guillotine.json

That returns a job id. Poll until it is ready, then fetch the result:

bash
curl "https://api.smartcut.dev/v3/result/ready?id=$JOB_ID" -H "Authorization: $SMARTCUT_API_KEY"curl "https://api.smartcut.dev/v3/result?id=$JOB_ID"       -H "Authorization: $SMARTCUT_API_KEY"

The result carries one entry per stock piece, each listing the parts placed on it with their positions, the cuts needed to produce them, and the offcut left over. Complete runnable versions in four languages are in examples/.

Authentication

Pass the raw API key in the Authorization header:

Authorization: YOUR_API_KEY

There is no Bearer prefix. This is the single most common integration mistake — a Bearer prefix returns 401.

Endpoints (v3)

methodpathwhat it doessync
POST/v3/calculateSubmit calculationasync
POST/v3/validateValidate inputs without calculatingsync
POST/v3/model/analysisAnalyse a 3D model into partssync
GET/v3/result/readyCheck if calculation is completesync
GET/v3/resultRetrieve calculation resultsync
GET/v3/export/pdfExport result as PDFsync
GET/v3/export/csvExport result as CSVsync
GET/v3/export/ptxExport result as PTXsync
GET/v3/export/dxfExport result as DXFsync
GET/v3/export/svgExport result as SVGsync
GET/v3/export/mayerExport result as Mayer .maysync
GET/v3/export/biesseExport result as Biesse XML CutListsync
GET/v3/sawsList saws and the export formats each offerssync
POST/v3/labelsGenerate printable part labelssync
POST/webhooks/resultCalculation result delivery— your endpoint
GET/v3/callsGet API usage statisticssync

Full reference: https://smartcut.dev/api-docs/v3

How the async model works

Optimisation takes longer than a request should block for, so /v3/calculate returns a job id immediately. You then either poll /v3/result/ready until it reports done, or register a webhook and let SmartCut POST to you when the result is available. Either way you fetch the payload from /v3/result.

Webhook registration, signature verification and retry behaviour are documented at https://smartcut.dev/docs/webhooks.

MCP server

SmartCut runs a hosted Model Context Protocol server, so an agent can run optimisations directly with your existing API key.

POST https://api.smartcut.dev/mcp

Streamable HTTP transport. Authentication is the same raw key in the Authorization header, without a Bearer prefix. Configuration for Claude Desktop and other clients is in mcp/.

Tools: calculate, validate, status, result, cancel, usage, export, labels, list_cut_types — plus import_parts, which is different from the rest: it pushes parts an agent has extracted (from a PDF or a photo of a cutting plan) into an open Cutlist Evolution editor for the user to confirm, rather than calling the optimisation API.

The calculate tool waits for the result in-call (about 25 seconds by default, overridable with waitMs) and falls back to returning a job id if the optimisation is still running, so an agent usually gets a layout in one call.

Generating a client

There is no official SDK, and that is deliberate. The API is a JSON body and one header, so fetch is already the client — and a generated client in your own idiom will fit your codebase better than a hand-written one would. Point any generator at the spec:

bash
npx openapi-typescript openapi/v3.json -o smartcut.d.tsnpx @hey-api/openapi-ts -i openapi/v3.json -o src/smartcutopenapi-generator-cli generate -i openapi/v3.json -g python -o ./smartcut-python

Examples

Each reads a payload from examples/requests/, which is generated from the specification — so the examples cannot drift from the schema.

What this is, and is not

SmartCut is a hosted service with a subscription, not a self-hosted library. It suits quoting, order processing, e-commerce cut-to-size checkout and CAM hand-off, where you want optimisation quality and saw-format output without maintaining a geometry engine. If you want an in-process bin-packer with no network call and no account, this is the wrong tool and an open-source packing library is the right one.

Links

Support

Issues here are for the specification and the examples only. For API access, billing, quota or integration support, use the contact form at https://smartcut.dev/contact. Specification files are generated and cannot be changed by pull request — see openapi/README.md.

來源:README.md,提交 46b15af

工具

0
該伺服器需要 API 金鑰等憑證,因此 SourceWeft 無法在沒有憑證的情況下讀取其工具,也未收錄。

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 75%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。