MCP协议的企业级治理,中台化+Serverless,重构企业IT架构

近期OpenAI创始人Altman公开支持MCP协议,标志着这一“AI万能插头”正从技术协议演变为行业标准。MCP协议不仅重构了AI与工具、数据的交互方式,更在技术架构、治理模式、企业应用中掀起巨浪,它正在颠覆传统软件产业的授权模式、开发流程、商业模式以及底层逻辑。随着MCP火爆,各种MCP Server也在层出不穷的涌现,MCP生态化已经形成,但也面临着诸多治理性难题。

目录

一、MCP面临的治理性难题有哪些

认证与权限控制机制不足

服务发现与生态治理

二、MCP中台演化

三、MCP与Serverless

四、实操案例

1、环境准备

Nacos 部署

Higress 部署

2、使用高德官方的 Open API,构建 MCP Server

高德开发者 API KEY 申请

在 Nacos 中进行获取出口 IP 服务配置

3、查询天气

五、未来趋势

1、企业级 MCP 市场

文末总结

目录

一、MCP面临的治理性难题有哪些

认证与权限控制机制不足

服务发现与生态治理

二、MCP中台演化

三、MCP与Serverless

四、实操案例

1、环境准备

Nacos 部署

Higress 部署

2、使用高德官方的 Open API,构建 MCP Server

3、查询天气

五、未来趋势

1、企业级 MCP 市场

2、AI原生架构革命

文末总结


一、MCP面临的治理性难题有哪些

  1. 认证与权限控制机制不足

    MCP协议目前未强制统一认证机制,开发者需自行处理身份验证(如OAuth、API Key),导致不同MCP Server的权限管理差异巨大。例如,某金融企业的Slack MCP Server仅允许内部IP访问,而公共搜索引擎MCP Server则开放匿名调用。这种现象会导致企业级场景中AI产品无法满足多用户、多角色的权限需求,例如企业内部的MaaS平台需区分不同租户的访问权限。

  2. 服务发现与生态治理

    当前MCP Server依赖手动配置端点,开发者需自行在GitHub或市场(如Mintlify的mcpt)中寻找适配服务。Anthropic计划推出MCP注册表协议,支持动态服务发现与版本兼容性检查,未来可能通过DAO模式实现社区化治理。某跨国零售企业通过自建MCP治理中台,将内部工具(订单系统、库存API)封装为标准化MCP Server,并基于语义匹配算法自动推荐工具链,需求响应效率提升50%


二、MCP中台演化

未来的工作场景中,软件交互方式将发生重大变革。现有的多数软件交互入口可能逐渐消失,取而代之的是通过一轮对话解决一个需求。软件工具及其操作流程将深度融入对话聊天场景,甚至对用户完全隐形,一切皆由 AI 大模型智能调度。对于用户而言,无论是部门日常业务所需,还是个人高频使用的所需,都将由 AI 助力生成高度契合个人需求的个性化入口。

在过去的软件设计中,采用的是瀑布式开发流程。从业务部门提出需求开始,到最终软件交付,往往需要耗费数月时间。而在新的交互模式下,针对用户需求,用什么工具并非大家所关心的,更不想自己去整合搭建的零散组件,如今可以通过"AI大模型+MCP协议+各种工具软件调用"来实现了。而对于目前存量接口API我们也可以借用NACOS框架快速构建MCP协议,接入AI调用。

中台化是MCP从技术协议走向生产力的关键,MCP中台并不是为人服务的,而是为AI大模型服务的。可以设想,在 MCP 中台之中,我们可以借用Higress网关和NACOS中间件针对MCP Server提供统一授权认证、服务注册与发现、负载均衡、健康检查及对MCP的信息灰度管理、信息版本管理等。

MCP协议的企业级治理需在开放性与可控性之间寻求平衡。通过引入网关中间层、配置中心层、服务管理层、强化安全认证、构建工具市场及标准化工作流引擎,企业可逐步克服现有挑战。


三、MCP与Serverless

想象一下,如果一家企业员工人数有10000人,但可能需要一万个AI智能体协同工作。人效越高的企业,人均拥有的AI智能体的数量会越多。并且,随着客户需求的变化以及市场的动态发展,还会有大量新的AI智能体不断生成。这些源源不断涌现的AI智能体,对于计算资源的弹性需求将会大幅攀升。

函数计算作为 Serverless 算力的典型代表,其凭借在开发效率,按需付费,极致弹性等产品能力直击MCP Server 托管的核心痛点。将 MCP Server 托管在函数计算上,基于 Serverless 架构,可实时响应 AI 任务需求,自动扩展 CPU/GPU,确保算力高并发处理能力,支持多个 AI 项目并行运行,资源按优先级动态调度,提升整体算力利用率。Serverless 按实际计算资源消耗计费,而非固定服务器租赁费用,尤其适合 AI 训练和推理任务中常见的波动性负载。通常AI 模型训练需要突发性算力,Serverless 能自动分配资源,避免传统模式下预留资源导致的服务器空置问题。

企业不管是在私有化部署还是云上部署,AI对软件的调度过程中就会产生对Serverless技术架构的需求。更重要的是,借助AI技术,利用其编程能力还能够产生出各种各样的Serverless服务。这些Serverless服务将为AI智能体提供极大的便利,使其可以轻松调用所需资源 ,更好地完成各项工作任务,MCP与Serverless的结合,正在重塑AI工作流的资源管理范式。

当下社区积极的推动 MCP 协议演进,推动 Steamable HTTP transport 技术代替原有 HTTP+SSE 的通信方式,原有的 MCP 传输方式就像是你和客服通话时必须一直保持在线(SSE 需要长连接),而新的方式更像是你随时可以发消息,然后等回复(普通 HTTP 请求,但可以流式传输)。这种形式与 Serverless 算力无状态模式更加契合,协议层演进将更有利于云上 Serverless 算力的价值放大,随着 AI 模型复杂度和数据规模持续增长,Serverless 与 MCP Server 的结合将成为趋势。


四、实操案例

最近高德推出了 MCP Server 获得了业内广泛关注,这部分 Server 是高德基于 MCP 社区的开发指引实现的,构建成本较高。接下来,我们基于高德官方的 Open API 接口,通过 Nacos+Higress 的方案,来实现 MCP Server的统一配置管理。

1、环境准备

Nacos 部署

通过 docker 部署 nacos:

export NACOS_AUTH_TOKEN=自定义的token,token为原始内容的base64编码结果
export NACOS_AUTH_IDENTITY_VALUE=自定义的IDENTITY_VALUE,任意英文和数字组合
docker run -td -e PREFER_HOST_MODE=hostname -e MODE=standalone -e NACOS_AUTH_IDENTITY_KEY=serverIdentity -e NACOS_AUTH_IDENTITY_VALUE=${NACOS_AUTH_IDENTITY_VALUE} -e NACOS_AUTH_TOKEN=${NACOS_AUTH_TOKEN} -p 8848:8848 -p 9848:9848 nacos/nacos-server

Higress 部署

配置Kind

通过 Kind 在本地安装 higress,在 Linux x86 的环境下使用如下命令安装

# For AMD64 / x86_64[ $(uname -m) = x86_64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.27.0/kind-linux-amd64# For ARM64[ $(uname -m) = aarch64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.27.0/kind-linux-arm64chmod +x ./kindsudo mv ./kind /usr/local/bin/kind

通过 Kind 创建一个 local 的 K8s 集群

kind create cluster

获取 hgctl,准备安装 higress

curl -Ls https://raw.githubusercontent.com/alibaba/higress/main/tools/hack/get-hgctl.sh | bash

 在本地部署 higress

hgctl install --set profile=local-k8s

安装 Kubectl,并连接到刚刚创建的集群

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"chmod +x ./kubectlmv ./kubectl /usr/bin/kubectl

部署 redis

docker run --name higress-redis -d redis

修改 ConfigMap,让 Higress 连接到 Nacos

kubectl -n higress-system edit cm higress-config

将红框部分替换为一下内容,即在原本配置中,data.higress 中增加 mcpServer 段的配置

apiVersion: v1data:  higress: |-    mcpServer:      sse_path_suffix: /sse      enable: true      redis:        address: {local_ip}:6379      match_list:        - match_rule_domain: "*"          match_rule_path: /registry          match_rule_type: "prefix"      servers:        - name: nacos-registry          type: nacos-mcp-registry          path: /registry          config:             serverAddr: {local_ip}            namespace: ""            serviceMatcher:              amap: ".*"              ip: ".*"    downstream:      connectionBufferLimits: 32768      http2:        initialConnectionWindowSize: 1048576        initialStreamWindowSize: 65535        maxConcurrentStreams: 100      idleTimeout: 180      maxRequestHeadersKb: 60      routeTimeout: 0    upstream:      connectionBufferLimits: 10485760      idleTimeout: 10

请将 {local_ip} 替换为本机地址,可以在本地执行以下命令获取

ifconfig eth0 | grep 'inet ' | grep -v '127.0.0.1' | awk '{print $2}'

编辑完成之后保存配置,至此基本环境以及配置完成。

2、使用高德官方的 Open API,构建 MCP Server

环境部署完成之后,我们通过一个小的 Demo 对整个流程进行演示,我们以查询天气为场景,将高德的 HTTP 接口在无改造的情况下暴露为 MCP 协议,让 Agent 进行调用。

高德开发者 API KEY 申请

调用高德 API,我们首先需要申请到高德 API 的 key。进入高德开发者平台 ,登陆之后,创建新应用。

创建新应用:

应用创建完成之后,我们创建 key:

在控制台看到 key,将 key 保存下来

接下来我们完成 higress 中关联 Nacos 做 MCP registry 的配置

接下来我们在 Nacos 中配置完成高德 HttpApi 的描述文件的配置以及高德域名信息配置

3、在 Nacos 中进行高德 API 服务配置

首先我们通过持久化服务发现的能力将高德的域名注册到 nacos 中,服务名为 amap,分组为 amap。

创建完服务之后,我们将高德的域名注册到 Nacos 中。

通过以下命令注册高德的域名。

curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=amap&groupName=amap&ip=restapi.amap.com&port=80&ephemeral=false'

通过以下命令检查 amap 服务的实例数变为 1。

在配置中心新建一个配置文件对高德的 API 进行描述。

进入配置中心,点击新建配置。

创建 DataId 为 amap-mcp-tools.json分组为 amap 的配置项,配置内容为

{  "protocol": "http",  "tools": [    {      "name": "get_weather",      "description": "get weather",      "inputSchema": {        "type": "object",        "properties": {          "city": {            "type": "string",            "description": "city adcode"          }        }      }    },    {      "name": "get_adcode",      "description": "get adcode via address",      "inputSchema": {        "type": "object",        "properties": {          "address": {            "type": "string",            "description": "address"          }        }      }    },    {      "name": "get_address_via_ip",      "description": "get address via ip",      "inputSchema": {        "type": "object",        "properties": {          "ip": {            "type": "string",            "description": "ip address"          }        }      }    }  ],  "toolsMeta": {    "get_weather": {      "credentialRef": "amap-key.json",      "InvokeContext": {        "path": "/v3/weather/weatherInfo",        "method": "GET"      }    },    "get_adcode": {      "credentialRef": "amap-key.json",      "InvokeContext": {        "path": "/v3/geocode/geo",        "method": "GET"      }    },    "get_address_via_ip": {      "credentialRef": "amap-key.json",      "InvokeContext": {        "path": "/v3/ip",        "method": "GET"      }    }  }}

这个配置描述了高德的 HTTP API 的相关参数信息,以及 Higress 进行协议转换时需要的上下文信息。再创建 DataId 为 amap-key.json, 分组为 amap 的配置项配置内容为:

{  "type": "fixed-query-token",  "credentialsMap": {    "key": "key",    "value": "高德的api key"  }}

在 Nacos 中进行获取出口 IP 服务配置

注册一个获取当前出口 IP 的服务获取当前的 IP。以 ipinfo.io 为例,在服务管理中创建服务 ip, 分组为 ip:

服务创建完成之后,向 Nacos 中注册 ipinfo.io 的域名信息,执行一下命令。

curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=ip&groupName=ip&ip=ipinfo.io&port=80&ephemeral=false'

注册完成之后,就能在 Nacos 控制台看到 IP 服务的下有一个实例了。

服务创建完成之后,我们在配置中心配置获取 IP 服务的接口描述。创建 DataId ip-mcp-tools.json为 ,分组为 ip 的配置,配置内容为:

{    "protocol": "http",    "tools": [        {            "name": "get_current_ip_address",            "description": "get current caller's ip address",            "inputSchema": {                "type": "object",                "properties": {                    "empty_args": {                        "type": "string",                        "description": "should be empty"                    }                }            }         }    ],    "toolsMeta": {        "get_current_ip_address": {            "InvokeContext": {                "path": "/",                "method": "GET"            }        }    }}

配置创建完之后,就可以在 Cursor 中配置 Higress 作为 MCP Server 调用 Tool 了。

Cursor MCP 配置

Cursor 的具体配置方法如下:首先安装最新版本的 Cursor,安装完成之后在 Cursor 的设置中,配置 MCP Server 的具体信息。

{  "mcpServers": {    "nacos-registry": {      "url": "http://localhost/registry/sse"    }  }}

配置完成后可以看到 通过 Higress + Nacos 暴露的 MCP Server 提供的 Tool。

3、查询天气

接下来,我们通过 Agent 模式向智能体,询问今天天气怎么样。

可以看到,智能体先获取了当前主机的出口 IP,再通过 IP 获取到具体的省市信息,再通过省市信息获取到adcode,最终通过 adcode 获取到当前的天气信息。

整个过程中,用户只需要将服务注册在 Nacos 中,并且在 Nacos 中配置服务接口相关的描述信息即可,服务本身的代码无需任何改造。


五、未来趋势

1、企业级 MCP 市场

除了开源社区版本,阿里云 API 网关也将很快上架 MCP 市场,面向企业用户提供更加完善的服务,如:

  • 企业级 SLA 保障:提供 99.99% 的服务可用性承诺,满足企业关键业务的需求。

  • 合规认证:通过多项安全合规认证,满足金融、医疗等行业的严格要求。

  • 专家支持:提供 7x24 小时技术支持和咨询服务,帮助企业快速解决问题。

2、AI原生架构革命


“瘦LLM+胖MCP”模式将成为主流:LLM仅负责语言交互,复杂能力由MCP Server动态扩展。例如,Claude Desktop已支持调用Blender MCP Server,用户通过自然语言即可生成3D模型


文末总结

随着 OpenAI 、Anthropic、阿里巴巴 等行业巨头的推动,以及 Higress 、Nacos等开源项目的支持,MCP 协议正在从事实标准走向行业标准。从治理标准化到中台化落地,再到Serverless的弹性扩展,其核心价值在于将固化的软件能力转化为流动的智能服务。未来,企业竞争的关键不再是拥有多少软件许可证,而是能否构建高效的MCP能力调度网络,这将成为AI 2.0时代的核心基础设施。

最后感谢大家持续关注,您的关注和点评是我持续写作的动力,大家也可以前去关注我的微信公众号:AI技研社,这里有更多最新精彩内容,我将不断为大家分享更多技术知识干货、实战场景案例、有趣的AI产品及工具,我的宗旨是让技术赋能工作,技术让生活多彩,技术使我们更自由!

<think>好的,我现在要处理用户关于MCP协议如何调用大模型架构的问题。首先,我需要回顾一下MCP的基本概念和架构。根据用户提供的引用[^1],MCP(Model Context Protocol)是一种协议,旨在标准大模型与外部系统之间的交互流程,提高协作效率。接下来,我需要理解用户的具体需求,他们想知道MCP在调用大模型架构时的具体方案。 首先,我应该从MCP的总体架构入手。引用中提到,MCP分为接口层、上下文管理层、协议适配层和模型接口层。接口层负责标准的API,这可能涉及到RESTful或gRPC接口。上下文管理层处理对话历史、用户偏好等信息,这对于维持交互的连贯性很重要。协议适配层负责将不同模型接口统一,而模型接口层直接对接各大模型平台,如GPT或BERT。 然后,我需要考虑MCP调用大模型的具体步骤。可能包括请求封装、上下文管理、协议转换、模型调用和结果处理。每个步骤需要详细展开,例如在请求封装阶段,如何将用户输入转为符合MCP的请求体,可能需要示例来说明结构。上下文管理部分要说明如何利用缓存机制或数据库来维护上下文,确保模型理解当前对话的状态。 协议适配层的作用是关键,因为它需要将MCP的请求转换成不同模型所需的格式。例如,调用GPT-4和PaLM可能需要不同的参数,适配层需要处理这些差异。模型接口层的调用方式可能涉及同步或异步请求,以及如何处理超时和重试机制。 另外,用户可能关心调用方案的示例,比如使用Python的伪代码来展示整个过程。这需要展示如何通过MCP的API发送请求,管理上下文,并处理响应。同时,还需要提到优策略,如缓存、负载均衡和异步处理,这些能提升性能和可靠性。 最后,需要确保回答结构清晰,分点说明,并引用提供的资料。可能还需要验证每个步骤是否符合MCP的设计目标,比如标准、降低耦合、提升可扩展性等。此外,用户的问题可能涉及技术细节,所以需要保持解释的易懂性,避免过于晦涩的术语,但又要准确反映MCP的工作原理。</think>### MCP协议调用大模型架构的方案 MCP(Model Context Protocol)通过标准接口和上下文管理机制,实现对大模型架构的高效调用。以下是其核心调用方案的分步说明: --- #### 1. **接口层标准** MCP通过**RESTful API**或**gRPC接口**定义统一的调用入口,例如: ```python # 示例:Python调用MCP接口 import requests payload = { "model": "gpt-4", "input": "用户输入文本", "context_id": "会话标识符" } response = requests.post("https://mcp-gateway/api/v1/invoke", json=payload) ``` 此层负责参数校验、身份认证和流量控制。 --- #### 2. **上下文管理** MCP通过**上下文标识符(context_id)** 维护对话状态: - 存储历史对话记录、用户偏好、领域知识 - 使用缓存(如Redis)或数据库实现跨请求的上下文关联 - 关键技术:通过键值对存储实现低延迟访问 --- #### 3. **协议适配层转换** 将标准请求转换为目标模型所需的格式: | 目标模型 | 转换逻辑示例 | |---------|--------------| | GPT-4 | 添加`temperature=0.7`参数 | | BERT | 添加`[CLS]`标记 | | PaLM | 转换tensor格式 | 此层通过插件机制支持多模型扩展。 --- #### 4. **模型调用执行** 通过**模型接口层**对接具体实现: ```mermaid graph LR A[MCP协议] --> B{模型路由} B -->|NLP任务| C[GPT-4] B -->|图像生成| D[StableDiffusion] B -->|语音合成| E[WaveNet] ``` 支持同步/异步调用模式,超时时间可配置。 --- #### 5. **结果处理与返回** 对原始模型输出进行: 1. 标准格式封装(JSON Schema校验) 2. 敏感信息过滤 3. 性能指标采集(延迟、token消耗) 返回示例: ```json { "output": "模型生成内容", "context_id": "更新后的会话标识", "metrics": {"latency": 450ms} } ``` --- ### 优策略 1. **缓存复用**:对高频请求结果进行缓存(TTL可配置) 2. **负载均衡**:基于模型实例负载动态路由 3. **异步流水线**:分离请求接收、计算、返回三个阶段 4. **流量降级**:在过载时自动切换轻量模型 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值