Skip to content

Kiro CLI Enterprise MCP Governance 允许管理员控制用户能否使用 MCP servers。你可以在 Kiro profile 中关闭 MCP,或通过 HTTPS 托管的 MCP registry JSON 配置 allow-list,并在 organization 或 account 层面应用策略。

Kiro CLI Enterprise MCP Governance:禁用 MCP 或配置 Allow-list

MCP servers 能把 Kiro CLI 连接到外部系统,例如代码仓库、数据库、云服务、设计工具或内部平台。企业环境中,这种能力必须治理:不是所有用户都应该自由添加任意 MCP server。

Kiro 允许管理员完全关闭 MCP,也可以指定经过审核的 MCP allow-list。

默认行为

默认情况下,用户可以在 Kiro client 中使用任意 MCP server。

管理员可以通过 Kiro profile 控制 MCP:

  • 使用 MCP on/off toggle 完全关闭或开启。
  • 使用 MCP registry attribute 指定允许的 servers。

这些 profile 可以定义在 organization level,也可以定义在 account level。account-level profile 会覆盖 organization-level profile。

例如:组织层面禁用 MCP,但给某些团队所在账号配置 allow-list。

禁用 MCP

关闭 account 或 organization 的 MCP:

  1. 打开 Kiro console。
  2. 选择 Settings。
  3. 在 Shared settings 下,把 Model Context Protocol (MCP) 切换为 Off。

关闭后,用户不能在 Kiro client 中使用 MCP servers。

配置 MCP allow-list

如果不想完全禁用 MCP,可以创建 MCP registry JSON 文件,并通过 HTTPS 提供给 Kiro profile。

步骤:

  1. 创建包含 allowed servers 的 JSON 文件。
  2. 用 HTTPS 托管这个文件。
  3. 打开 Kiro console。
  4. 选择 Settings。
  5. 确保 Model Context Protocol (MCP) 为 On。
  6. 在 MCP Registry URL 字段中选择 Edit。
  7. 输入 registry JSON 文件的 URL。
  8. 保存。

Kiro clients 会只允许访问 allow-list 中的 MCP servers。

MCP registry URL 会按 Kiro 数据加密策略进行传输中和静态加密。

Registry 文件格式

Kiro 支持 MCP registry standard v0.1 的一个子集。

最小结构是:

json
{
  "servers": [
    {
      "server": {
        "name": "my-remote-server",
        "title": "My server",
        "description": "My server description",
        "version": "1.0.0",
        "remotes": [
          {
            "type": "streamable-http",
            "url": "https://acme.com/my-server"
          }
        ]
      }
    }
  ]
}

也可以定义本地 stdio MCP server:

json
{
  "servers": [
    {
      "server": {
        "name": "my-local-server",
        "title": "My server",
        "description": "My server description",
        "version": "1.0.0",
        "packages": [
          {
            "registryType": "npm",
            "registryBaseUrl": "https://npm.acme.com",
            "identifier": "@acme/my-server",
            "transport": {
              "type": "stdio"
            },
            "packageArguments": [
              {
                "type": "positional",
                "value": "start"
              }
            ]
          }
        ]
      }
    }
  ]
}

常见 registry 字段

通用字段:

字段说明
nameserver 名称,同一 registry 文件内必须唯一
title人类可读名称,可选
descriptionserver 能力描述
versionserver 版本,推荐 semantic versioning

Remote HTTP server 字段:

字段说明
remotes远程 endpoint 数组,Kiro 支持一个 entry
typestreamable-httpsse
urlMCP server endpoint URL
headers请求 HTTP headers,可选

Local stdio server 字段:

字段说明
packages本地 MCP server package 定义,Kiro 支持一个 entry
registryTypenpmpypioci
registryBaseUrlpackage registry URL,可选
identifierpackage identifier
transport.type必须是 stdio
runtimeArguments给 npx、uvx 或 docker 的参数,可选
packageArguments给 MCP server 的参数,可选
environmentVariables启动 server 前设置的环境变量,可选

不同 registryType 需要客户端机器预装对应 runner:npmnpxpypiuvxocidocker

托管 registry 文件

Registry JSON 必须通过 HTTPS 提供。可以用:

  • Amazon S3
  • Apache
  • nginx
  • 内部企业 Web server

要求:

  • URL 对用户电脑上的 Kiro clients 可访问。
  • 可以只在企业内网可访问。
  • HTTPS 证书必须由可信 CA 签发。
  • 不支持 self-signed certificates。

Kiro 会在启动时获取 registry,并每 24 小时同步一次。

同步时,如果本地安装的 MCP server 不再出现在 registry 中,Kiro 会终止该 server 并阻止用户重新添加。如果本地版本和 registry 定义不同,Kiro 会按 registry 版本重新启动。

用户可覆盖哪些参数

Registry 中的 MCP server 参数大多是 read-only,例如 URL、package identifier、runtimeArguments 等。

但用户仍可以:

  1. 给本地 MCP server 添加额外 environment variables。
  2. 给 remote MCP server 添加额外 HTTP headers。
  3. 修改 request timeout。
  4. 设置 MCP server scope:Global、Workspace 或特定 Agent Configuration。
  5. 设置 MCP tool trust permissions。

用户提供的 env vars 或 HTTP headers 会覆盖 registry 定义。这方便用户配置认证 key 或本地路径,但也需要配合企业安全策略审查。

常见问题

Q: Kiro 企业版可以完全禁用 MCP 吗?

A: 可以。管理员可以在 Kiro console 的 Shared settings 中把 Model Context Protocol (MCP) 关闭。

Q: MCP allow-list 怎么配置?

A: 创建 MCP registry JSON,用 HTTPS 托管,然后把 URL 填到 Kiro profile 的 MCP Registry URL 字段。

Q: Kiro 多久同步一次 MCP registry?

A: 启动时会获取 registry,之后大约每 24 小时同步一次。