通过


start 命令

使用现有配置文件启动数据 API 生成器运行时。

Syntax

dab start [options]

快速浏览

选项 概要
-c, --config 使用特定的配置文件(默认值 dab-config.json 或环境特定的文件(如果存在)

“头”部分

选项 概要
--LogLevel <level> 指定日志记录级别作为提供的值。
--mcp-stdio (模型上下文协议 (MCP)) 启动 DAB 作为使用标准输入和输出(STDIO)而不是 HTTP 的 MCP 服务器。 mcp.enabled: true在配置中需要。
--no-https-redirect 禁用自动 HTTP→HTTPS 重定向
--verbose 将日志记录级别设置为 Informational
--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

注释

此选项是发布和更高版本中1.7提供的模型上下文协议 (MCP) 功能。 它要求 "mcp": { "enabled": true } 在你的 runtime 部分 dab-config.json。 有关完整的 MCP 配置详细信息,请参阅 SQL MCP Server 概述

将数据 API 生成器作为 MCP 服务器启动,该服务器使用标准输入和输出,而不是绑定到 HTTP 端口。 在此模式下,DAB 与 MCP 客户端(例如 GitHub Copilot、Visual Studio (VS) Code 或任何 MCP 兼容的 AI 代理完全通过stdinstdout模型上下文协议进行通信。 未公开 HTTP 服务器或网络端口。

此标志还接受可选的位置 role:<role-name> 参数,该参数指定执行所有 MCP 工具调用时所依据的 DAB 权限角色。 该角色必须与实体配置节中 permissions 定义的名称匹配。 如果省略,则角色默认为 anonymous

当处于活动状态时 --mcp-stdio ,无论配置文件设置如何,都会自动应用以下行为:

  • 编码:无需字节顺序标记(BOM)即可强制将控制台输入/输出强制转换为 UTF-8,以实现干净的 JSON 超标准输入/输出通信。
  • 身份验证:身份验证提供程序强制采用 模拟器 模式,启用指定角色而无需真正的 JSON Web 令牌(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 客户端必须以子进程和管道stdin的形式启动 DAB。stdout Visual Studio (VS) 代码或兼容代理的典型 MCP 客户端配置如下所示:

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

有关完整演练,请参阅 SQL MCP Server 的标准输入和输出传输

--verbose

将日志记录级别设置为 Informational。 这是等效于 --LogLevel Information.

Example

dab start \
  --verbose

--help

显示帮助屏幕。

Example

dab start --help

--version

显示版本信息。

Example

dab start --version