Skip to main content

GET /api/servers

获取所有 MCP 服务器的列表。

POST /api/servers

创建一个新的 MCP 服务器。

PUT /api/servers/:name

更新现有的 MCP 服务器。

DELETE /api/servers/:name

删除一个 MCP 服务器。

POST /api/servers/:name/toggle

切换服务器的启用状态。

POST /api/servers/:serverName/tools/:toolName/toggle

切换工具的启用状态。

PUT /api/servers/:serverName/tools/:toolName/description

更新工具的描述。

PUT /api/system-config

更新系统配置设置。

GET /api/settings

获取所有服务器设置和配置。

获取所有服务器

已连接且已启用的 MCP 服务器会返回可选的 protocolVersion 字段,表示当前连接实际协商的 MCP 协议版本。断开、禁用、OpenAPI 服务器或版本不可用时省略该字段;此字段与服务器软件版本 version 不同。 检索所有已配置的 MCP 服务器的列表,包括其状态和可用工具。
  • 端点: /api/servers
  • 方法: GET
  • 响应:

创建一个新服务器

将一个新的 MCP 服务器添加到配置中。
  • 端点: /api/servers
  • 方法: POST
  • 正文:
    • name (string, 必填): 服务器的唯一名称。
    • config (object, 必填): 服务器配置对象。
      • type (string): stdio、sse、streamable-http 或 openapi。
      • command (string): stdio 类型要执行的命令。
      • args (array of strings): 命令的参数。
      • url (string): sse、streamable-http 或 openapi 类型的 URL。
      • openapi (object): OpenAPI 配置。
        • url (string): OpenAPI 模式的 URL。
        • schema (object): OpenAPI 模式对象本身。
      • headers (object): sse、streamable-http 和 openapi 类型请求要发送的标头。
      • keepAliveInterval (number): 远端服务健康检查的间隔(毫秒)。默认为 60000。
      • enableKeepAlive (boolean): 是否为远端服务启用周期性健康检查。已断连的远端服务始终会通过有上限的指数退避和随机抖动自动重连。
      • owner (string): 服务器的所有者。默认为当前用户或“admin”。

更新一个服务器

更新现有 MCP 服务器的配置。
  • 端点: /api/servers/:name
  • 方法: PUT
  • 参数:
    • :name (string, 必填): 要更新的服务器的名称。
  • 正文:
    • config (object, 必填): 更新后的服务器配置对象。详情请参阅“创建一个新服务器”。

删除一个服务器

从配置中删除一个 MCP 服务器。
  • 端点: /api/servers/:name
  • 方法: DELETE
  • 参数:
    • :name (string, 必填): 要删除的服务器的名称。

切换一个服务器

启用或禁用一个 MCP 服务器。
  • 端点: /api/servers/:name/toggle
  • 方法: POST
  • 参数:
    • :name (string, 必填): 要切换的服务器的名称。
  • 正文:
    • enabled (boolean, 必填): true 启用服务器,false 禁用服务器。

批量设置工具状态

POST /api/servers/:serverName/tools/toggle 在单个请求中启用或禁用当前已发现的工具。需要仪表板身份认证,以及与单工具接口相同的服务器配置管理权限。
  • enabled 必须是布尔值;重复请求设置相同状态。
  • tools 包含 1–100 个非空名称或模式,每项最多 256 个字符。模式区分大小写并匹配完整名称:* 匹配零个或多个字符,? 匹配一个字符,其他字符均按字面匹配。
  • 精确名称优先解析带服务器前缀的运行时名称,其次解析上游原始名称。模式可匹配这两种形式,前缀使用当前配置的名称分隔符。
  • 匹配项去重后一次保存,保留描述和隐藏参数。变更影响所有分组,无需重新连接即对工具发现和后续调用生效。
  • 个人 OAuth 或个人凭据绑定服务器使用当前认证用户的工具清单,不会借用其他用户的凭据。无法获取该清单时返回 409,不修改工具状态。
  • 模式只针对当前清单展开一次,不会保存为约束未来工具的策略。工具清单不可用时返回 409;没有匹配项时成功返回且不写入配置。
响应包含匹配的运行时工具名:
现有单工具接口继续可用。

切换一个工具

启用或禁用服务器上的特定工具。
  • 端点: /api/servers/:serverName/tools/:toolName/toggle
  • 方法: POST
  • 参数:
    • :serverName (string, 必填): 服务器的名称。
    • :toolName (string, 必填): 工具的名称。
  • 正文:
    • enabled (boolean, 必填): true 启用工具,false 禁用工具。

更新工具描述

更新特定工具的描述。
  • 端点: /api/servers/:serverName/tools/:toolName/description
  • 方法: PUT
  • 参数:
    • :serverName (string, 必填): 服务器的名称。
    • :toolName (string, 必填): 工具的名称。
  • 正文:
    • description (string, 必填): 工具的新描述。

隐藏工具参数

设置模型看不到的工具顶层输入参数。这些参数会从 tools/list、search_tools 结果、describe_tool、智能路由的嵌入文本、生成的 OpenAPI 规范和上下文成本统计中的输入 schema 里移除,并在转发调用前从参数中丢弃,由上游默认值生效。适用于部署无法使用的选项,例如自托管后端的云端专属功能。控制台仍显示完整 schema。
  • 端点: /api/servers/:serverName/tools/:toolName/hidden-params
  • 方法: PUT
  • 参数:
    • :serverName (string, 必填): 服务器的名称。
    • :toolName (string, 必填): 工具的名称,可带或不带服务器前缀。
  • 正文:
    • hiddenParams (string[], 必填): 顶层参数名。空数组表示移除该设置。
  • 错误: 参数名不属于该工具或列在其 required 中时返回 400。这些检查在服务器已连接时进行;否则按原样保存,且必填参数始终不会被隐藏。

更新系统配置

更新系统范围的配置设置。
  • 端点: /api/system-config
  • 方法: PUT
  • 正文:
    • 所有字段都是可选的。只有提供的字段会被更新。

获取设置

检索所有服务器设置和配置。
  • 端点: /api/settings
  • 方法: GET
  • 响应:
注意: 有关详细的提示词管理,请参阅 提示词 API 文档。