MCP 访问控制用于管理组织内非内置 MCP Server 的接入和使用。管理员可以允许全部、按白名单管控或全部禁用,避免未经批准的 MCP Server 在客户端中启用。
该功能适用于成员配置或安装的 MCP Server,也适用于组织统一下发的 MCP Server。Qoder CN 客户端内置的 MCP 服务不受影响。
适用场景
- 只允许成员接入和使用企业批准的 MCP Server。
- 对成员接入和组织统一下发的 MCP Server 使用一致的准入规则。
- 在需要时禁止组织内所有非内置 MCP Server。
适用范围
客户端在能够识别和阻断的 MCP 接入与使用入口执行访问控制。
| 入口 | 典型场景 |
|---|
| 配置接入 | 读取或应用 MCP 配置、应用组织下发配置 |
| 安装与启用 | 添加、安装、启用或加载 MCP Server |
| 启动与连接 | 启动本地进程、建立或恢复远程连接 |
| 使用 | 展示或注册 MCP 工具、发起 MCP 调用 |
MCP Server 通过入口校验后,其内部行为不在本功能的管控范围内,例如执行脚本、访问文件、启动其他进程或发起网络请求。本功能也不拦截与 MCP 无关的网络请求。
MCP 访问控制用于入口准入,不是 MCP Server 的运行时安全沙箱。
访问模式
管理员可以选择以下访问模式:
| 访问模式 | 行为 |
|---|
| 全部允许 | 允许组织内所有非内置 MCP Server。白名单规则保留但不可编辑。 |
| 规则管控 | 仅允许命中白名单规则的非内置 MCP Server。可以新增、编辑和删除规则,未命中的 MCP Server 不可用。 |
| 全部禁用 | 禁止接入和使用所有非内置 MCP Server。白名单规则保留但不可编辑。 |
新建组织默认使用全部允许。切换访问模式后,客户端通常需要约 5 分钟获取最新设置。
组织下发策略不能绕过 MCP 访问控制。由组织统一下发的 MCP Server 仍需遵循当前访问模式,并在规则管控下命中白名单规则。
配置白名单规则
只有在规则管控下才可以编辑白名单规则。规则管控至少需要一条白名单规则,最多可以配置 100 条。规则管控生效后,不允许删除最后一条规则。
- 在组织管理后台进入扩展与市场 > MCP 访问控制。
- 将访问模式切换为规则管控。
- 如果当前没有白名单规则,根据页面引导创建第一条规则。
- 输入规则名称,选择匹配对象并填写表达式,然后确认保存。
- 确认创建首条规则并启用规则管控。
如果已存在白名单规则,选择规则管控后可以直接确认切换。切换完成后,可在规则列表中继续新增、编辑或删除规则。
首次启用流程被取消或提交失败时,不会新增规则,也不会改变当前访问模式。
白名单支持以下匹配对象:
| 匹配对象 | 精确匹配示例 | 通配示例 |
|---|
| MCP 端点 URL | https://mcp.example.com/v1 | https://*.example.com/* |
| 启动命令 | npx -y @modelcontextprotocol/server-sqlite | npx -y @company/mcp-* |
URL 规则只匹配 MCP 端点 URL,启动命令规则只匹配本地启动命令。任一白名单规则命中即允许;没有规则命中时,该 MCP Server 不可用。
通配符仅支持以下位置:
- MCP 端点 URL:域名左侧的
*.,或路径末尾的 *。例如,*.example.com 匹配其子域,但不匹配裸域 example.com。
- 启动命令:参数末尾的
*。可执行程序必须精确匹配,* 不能单独使用,也不能跨参数匹配。
不支持其他位置的通配符、完整 glob 或正则表达式。通配范围越大,允许的 MCP Server 越多;保存前请确认范围符合预期。
匹配前处理
客户端按以下规则识别和匹配配置:
- MCP 端点 URL:仅支持绝对
https URL。包含用户信息、查询参数或锚点的 URL 不会在移除这些内容后继续匹配,而是被识别为无效配置。
- 启动命令:按可执行程序和参数的顺序逐项匹配,数量和顺序必须一致;不执行 shell、引号、PATH 或环境变量解析。
MCP 配置缺少有效 URL 和启动命令时,客户端会将其识别为无效配置并阻止使用。
客户端中的不可用状态
客户端会保留不可用 MCP Server 的配置或下发条目,并根据原因显示对应状态。连接、启用和调用等操作不可用。
| 状态 | 说明 |
|---|
| 组织已禁用 | 管理员已将访问模式设置为全部禁用。 |
| 未获批准 | 当前处于规则管控模式,该 MCP Server 未命中白名单规则。 |
| 配置无效 | 客户端无法识别有效的 MCP 端点 URL 或启动命令。 |
| 策略不可用 | 客户端暂时无法获取企业 MCP 策略。 |
客户端无法获取最新策略时,会优先使用最近一次有效策略。如果没有可用缓存,客户端默认阻止非内置 MCP Server,Qoder CN 内置 MCP 服务不受影响。
客户端版本要求
只有达到最低支持版本的客户端才会执行 MCP 访问模式和白名单规则。
| 客户端 | 最低支持版本 |
|---|
| Qoder IDE | 1.9.0 |
| Qoder JetBrains Plugin | 2026.813.60762487 |
| Qoder CLI | 1.1.18 |
低于最低版本的客户端不支持该功能,也不会执行组织配置的访问模式和白名单规则。
常见问题
组织统一下发的 MCP Server 是否会自动放行?
不会。MCP 访问控制优先于组织下发策略。规则管控下,组织统一下发的 MCP Server 仍需命中白名单规则;全部禁用时,该 MCP Server 不可加载或调用。
是否会拦截 MCP Server 发起的网络请求?
不会。本功能只在客户端可识别的 MCP 接入与使用入口执行访问控制。MCP Server 通过校验后自行执行的脚本、文件访问、进程调用和网络请求不在管控范围内。
为什么修改设置后客户端没有立即变化?
客户端会缓存企业策略。访问模式或白名单规则变更通常需要约 5 分钟生效。