start 命令

使用現有的組態檔啟動資料 API 產生器執行階段。

語法

dab start [options]

快速瀏覽

Option 總結
-c, --config 使用特定的組態檔 (預設為 dab-config.json 或環境特定檔案 (如果有的話)

頭部部分

Option 總結
--LogLevel <level> 指定記錄等級作為提供的值。
--mcp-stdio (模型上下文協定(MCP)) 以 MCP 伺服器啟動 DAB,使用標準輸入輸出(STDIO)取代 HTTP。 設定中必須。mcp.enabled: true
--no-https-redirect 停用自動 HTTP→HTTPS 重新導向
--verbose 將日誌層級設為資訊層級
--help 顯示說明畫面。
--version 顯示版本資訊。

-c, --config

組態檔的路徑。 預設為 dab-config.json 除非 dab-config.<DAB_ENVIRONMENT>.json 存在,其中 DAB_ENVIRONMENT 是環境變數。

Example

dab start \
  --config ./settings/dab-config.json

--LogLevel <level>

指定記錄等級作為提供的值。 關於可能的數值,請參見 對數水準

Example

dab start \
  --LogLevel Warning

--no-https-redirect

停用自動 HTTP→HTTPS 重新導向。

Example

dab start \
  --no-https-redirect

--mcp-stdio

備註

此選項為 模型情境協定(MCP)功能,於 版本及後續版本 1.7 中提供。 它要求 "mcp": { "enabled": true }runtime 你的 dab-config.json. 欲了解完整的 MCP 設定細節,請參閱 SQL MCP 伺服器概述

啟動 Data API 建構器,作為使用 MCP 伺服器,使用標準輸入輸出而非綁定 HTTP 埠。 在此模式下,DAB 完全透過模型上下文協定(Model Context Protocol)與 MCP 用戶端(如 GitHub Copilot、Visual Studio (VS) Code 或任何相容 MCP 的 AI 代理stdinstdout)通訊。 不會暴露任何 HTTP 伺服器或網路埠。

此旗標也接受一個可選的位置 role:<role-name> 參數,該參數指定所有 MCP 工具呼叫執行的 DAB 權限角色。 該角色必須與你實體設定中定義的 permissions 名稱相符。 若省略,角色預設為 anonymous

--mcp-stdio 啟用時,以下行為會自動套用,不論你的設定檔設定如何:

  • 編碼:主控台輸入/輸出強制為 UTF-8,無位元組順序標記(BOM),以便 JSON 標準輸入/輸出通訊乾淨俐落。
  • 認證:認證提供者被迫進入 模擬器 模式,啟用指定角色,無需真實的 JSON Web Token(JWT)或身份提供者。
  • 無 HTTP 主機:DAB 不會綁定任何傳輸控制協定(TCP)埠。 MCP 伺服器完全在 stdin/stdout 上運行。

這很重要

role:<name>前綴是必填的。 如果角色名稱與你實體權限中定義的角色不符,MCP 工具呼叫將被拒絕。

必須設定

在使用--mcp-stdio之前,必須先dab-config.json啟用 MCP:

"runtime": {
  "mcp": {
    "enabled": true,
    "path": "/mcp",
    "dml-tools": {
      "create-record": true,
      "read-records": true,
      "update-record": true,
      "delete-record": true
    }
  }
}

Example

# Default anonymous role
dab start \
  --mcp-stdio \
  --config ./dab-config.json

# Specific role
dab start \
  --mcp-stdio role:authenticated \
  --config ./dab-config.json

# With logging
dab start \
  --mcp-stdio role:api-reader \
  --config ./dab-config.json \
  --LogLevel Information

MCP 用戶端設定

由於 DAB 作為子程序執行,透過標準輸入與輸出進行通訊,你的 MCP 用戶端必須以子程序啟動 DAB 並管線 stdinstdout。 Visual Studio(VS)Code 或相容代理程式的典型 MCP 用戶端設定如下:

{
  "servers": {
    "my-database": {
      "type": "stdio",
      "command": "dab",
      "args": [
        "start",
        "--mcp-stdio",
        "role:anonymous",
        "--config",
        "./dab-config.json"
      ]
    }
  }
}

完整操作請參閱 SQL MCP Server 的標準輸入與輸出傳輸

--verbose

將日誌等級設為資訊性。 這是一個便利旗標,等價於 --LogLevel Information

Example

dab start \
  --verbose

--help

顯示說明畫面。

Example

dab start --help

--version

顯示版本資訊。

Example

dab start --version