MCP 服务配置

更新时间:
复制为 MD 格式

本文介绍如何在数字员工中添加和配置 MCP(Model Context Protocol)服务,使数字员工可以访问外部系统和数据源。

什么是 MCP 服务

MCP(Model Context Protocol,模型上下文协议)是一种开放标准协议,用于连接数字员工与外部系统和数据源。通过 MCP 服务,数字员工可以安全地访问数据库、API、云服务等外部资源,执行查询、操作和自动化任务。

功能特性

特性

说明

标准化接口

基于开放协议,统一不同系统的访问方式。

工具调用

数字员工可直接调用 MCP 服务提供的工具执行操作。

安全控制

支持工具级别的权限管理和执行方式配置。

实时交互

与外部系统实时通信,获取最新数据。

基本概念

术语

说明

MCP 服务

遵循 MCP 协议的服务端程序,提供一组可调用的工具。

MCP 工具

MCP 服务暴露的具体功能接口,如查询数据、执行操作等。

AI 网关

管理和路由 MCP 服务请求的中间层,提供安全和流量控制。

函数计算 FC

阿里云 Serverless 计算服务,可用于部署 MCP 服务。

百炼平台

阿里云大模型服务平台,提供托管的 MCP 工具服务。

执行方式

工具调用时的确认机制,包括自动执行每次询问两种模式。

网络配置

  • 安全组:如果没有安全组,请前往安全组控制台创建。

  • MCP 服务地址:服务访问端点,如 https://<endpoint>:443(TCP)或 http://<endpoint>:80(TCP)。

  • 工具列表:MCP 服务提供的可用工具,如果工具列表不准确,请前往网关控制台点击同步工具。

MCP 工作原理

MCP 服务采用客户端-服务端架构:

  1. 服务注册:MCP 服务部署后,通过 AI 网关、函数计算或自定义 MCP 等方式注册可用工具。

  2. 工具发现:数字员工通过配置的服务端点获取可用工具列表。

  3. 工具调用:数字员工根据用户需求选择并调用相应工具。

  4. 结果返回:MCP 服务执行操作并返回结果给数字员工。

前提条件

  • 已创建至少一个数字员工。具体操作,请参见创建数字员工

  • 已部署 MCP 服务,且服务处于运行状态。MCP 服务可以部署在以下环境中:

    • 公网可访问的服务器

    • 阿里云 VPC 内的 ECS 或 ACK 集群(需通过 VPC 模式接入)

    • 函数计算 FC

    • 百炼平台托管的 MCP 工具

  • 如果使用 VPC 模式,需要准备以下网络信息:

    • 服务所在的 VPC ID

    • 安全组 ID

    • MCP 服务的内网 IP 地址和监听端口

    说明 直连模式要求 MCP 服务的访问地址在公网可达。VPC 模式适合私网 ECS/ACK 场景,系统会创建或复用反向访问链路,但受可用区资源限制。请根据实际网络环境选择合适的接入方式。

添加 MCP 服务

添加流程分为 4 步:选择访问网络 → 填写服务地址 → 拉取工具列表 → 选择可调用工具。

STAROps 支持两种网络模式:

网络模式

适用场景

可用区限制

配置复杂度

直连模式

已可直接访问的 endpoint,如公网 MCP 服务、函数计算、百炼 MCP

无限制

VPC 模式

私网 ECS/ACK 场景,MCP 服务部署在 VPC 内部

有限制,支持部分可用区

直连模式

直连模式适合用户自建 MCP Server 且已暴露公网访问地址的场景。

  1. 登录STAROps 控制台

  2. 在左侧导航栏,单击数字员工

  3. 在数字员工列表中,单击目标数字员工,进入详情页。

  4. 单击MCP 服务页签,单击添加 MCP 服务。

  5. 填写基本信息。

    参数

    是否必填

    说明

    服务名称

    用于保存和展示这个 MCP 服务,创建后不可编辑

    显示名称

    用于页面展示,可与服务名称不同。不填则使用服务名称

    服务描述

    用于说明这个服务提供的能力,会显示在 MCP 服务详情里

  6. 网络模式中选择直连模式

  7. 配置服务地址和协议。

    参数

    是否必填

    说明

    访问端点

    填写完整 MCP endpoint,例如 http://8.136.*.*:8080/mcp,访问端点必须是公网可达的 URL。

    传输协议

    选择 HTTP 或 SSE。HTTP 通常使用 /mcp 路径,SSE 通常使用 /sse 路径,需和服务端实现保持一致

    认证方式

    默认无认证。如果 MCP 服务要求鉴权,选择 Token 方式并输入密码

  8. 单击获取工具列表。确认工具列表无误后,为每个工具配置执行方式。具体说明请参见执行方式说明

  9. 单击立即添加

VPC 模式

VPC 模式适合私网 ECS/ACK 场景,系统会创建或复用反向访问链路,打通 STAROps 到 VPC 内 MCP 服务的访问路径。

  1. 登录STAROps 控制台

  2. 在左侧导航栏,单击数字员工

  3. 在数字员工列表中,单击目标数字员工,进入详情页。

  4. 单击MCP 服务页签,单击添加服务。

  5. 填写基本信息。

    参数

    是否必填

    说明

    服务名称

    用于保存和展示这个 MCP 服务,创建后不可编辑

    显示名称

    用于页面展示,可与服务名称不同。不填则使用服务名称

    服务描述

    用于说明这个服务提供的能力,会显示在 MCP 服务详情里

  6. 网络模式中选择 VPC 模式

  7. 配置网络信息。

    参数

    是否必填

    说明

    VPC

    先选择地域,再选择该地域下 MCP 服务所在的 VPC。系统会创建或复用反向访问链路。当前已开放的地域请参见下方说明

    交换机可用区

    选择目标地域下的交换机可用区。选择 VPC 后,系统自动列出该 VPC 所在地域支持的可用区。所选可用区用于打通 STAROps 到 VPC 内 MCP 服务的访问链路,交换机无需与 MCP 服务在同一可用区

    交换机

    选择指定可用区下的交换机(VSwitch)。交换机和安全组用于打通 STAROps 到 VPC 内 MCP 服务的访问路径

    安全组

    选择 MCP 服务使用的安全组。安全组的入方向规则需放行 MCP 服务端口

    VPC 模式已开放地域和可用区

    VPC 模式当前仅在部分地域开放,各地域支持的可用区如下表所示。

    地域

    地域 ID

    支持的可用区

    华东1(杭州)

    cn-hangzhou

    cn-hangzhou-j、cn-hangzhou-k

    华北2(北京)

    cn-beijing

    cn-beijing-g、cn-beijing-h

    华东2(上海)

    cn-shanghai

    cn-shanghai-b、cn-shanghai-g

    华南1(深圳)

    cn-shenzhen

    cn-shenzhen-e、cn-shenzhen-f

    中国香港

    cn-hongkong

    cn-hongkong-b、cn-hongkong-c

    注意 VPC 模式需要在您的 VPC 中创建反向访问通道。该操作受可用区资源限制,如果所选可用区资源不足,将导致创建失败。建议在配置前确认目标可用区的资源可用性。
  8. 配置服务地址和协议。

    参数

    是否必填

    说明

    访问地址

    填写 ECS/ACK 内网可访问的 MCP 服务 IP 地址,不需要公网 IP

    访问端口

    填写 MCP 服务的监听端口(如 8080

    访问端点

    填写完整 MCP endpoint,例如 http://10.0.1.23:8080/mcp。地址和端口应与上方一致

    传输协议

    选择 HTTP 或 SSE,需和服务端实现保持一致

    说明 此处填写的是 VPC 内网地址,例如内网 SLB 的 IP 地址或 Pod IP。无需填写公网地址。
  9. 单击获取工具列表,确认工具列表无误后,为每个工具配置执行方式。单击确定

执行方式说明

添加 MCP 服务后,系统会自动获取 MCP 服务提供的工具列表。您需要为每个工具配置执行方式,控制数字员工调用工具时的确认机制。每个 MCP 工具支持配置以下两种执行方式:

执行方式

说明

适用场景

自动执行

数字员工自动调用工具,无需用户确认。

低风险的查询类操作,例如查询监控指标、读取日志。

每次询问

每次调用工具前需要用户确认。

高风险的变更类操作,例如重启实例、修改配置。

建议对所有写操作(创建、修改、删除)配置为每次询问模式,避免数字员工自动执行变更操作导致非预期影响。

常见问题

添加 MCP 服务时连接超时

  1. 确认 MCP 服务地址格式正确,包含完整的协议、IP/域名、端口和路径(如 http://xx.xx.xx.xx:8080/mcp)。

  2. 确认 MCP 服务正在运行且端口监听正常。

  3. 如果使用直连模式,检查公网访问是否可达:

    curl -X POST http://<MCP 服务地址>/mcp \
      -H "Content-Type: application/json" \
      -H "Accept: application/json" \
      -d '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}},"id":1}'
    
    Responses: {"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2025-03-26","capabilities":{"tools":{}},"serverInfo":{"name":"k8s-mcp","version":"0.1.0"}}}
  4. 如果使用 VPC 模式,检查 VPC、交换机、安全组配置是否正确,安全组出方向规则是否放行了 MCP 服务端口。

工具列表为空或工具同步失败

工具列表依赖 MCP 服务端的 Tool 注册信息。如果列表为空或不完整,请尝试以下操作:

  1. 确认 MCP 服务端已正确注册 Tool,且服务处于运行状态。

  2. 单击获取工具列表手动触发重新拉取。

MCP 服务状态显示不可用

MCP 服务不可用通常由以下原因导致:

  • 服务端进程异常退出或未启动。请检查 MCP 服务的运行状态。

  • 证书过期或认证失败。如果使用 HTTPS 端点,请确认 TLS 证书有效。

  • 函数计算冷启动超时。使用函数计算部署的 MCP 服务,首次调用可能超时,重试即可恢复。