函数计算 × MSE Nacos : 轻松托管你的 MCP Server

本文涉及的产品
云原生网关 MSE Higress,422元/月
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
MSE Nacos/ZooKeeper 企业版试用,1600元额度,限量50份
简介: 本文将通过一个具体案例,演示如何基于 MCP Python SDK 开发一个标准的 MCP Server,并将其部署至函数计算。在不修改任何业务代码的前提下,通过控制台简单配置,即可实现该服务自动注册至 MSE Nacos 企业版,并支持后续的动态更新与统一管理。

01 背景与挑战:MCP Server 落地中的典型问题


随着 AI Agent 生态的发展,Model Context Protocol(MCP)作为连接 Agent 与外部工具的标准协议,正在被越来越多的技术团队采用。但在实际落地过程中,MCP Server 的部署、运维与统一管理成为关键挑战。


  • 部署运维成本高,运行时选择困难:在生产实践中,MCP Server 往往需要单独部署,许多团队将 MCP Server 部署在自建服务器或容器环境中,需要手动管理进程、配置网络、处理扩缩容。一旦调用量突增,服务容易崩溃;流量低谷时资源又闲置浪费。
  • MCP 调试迭代必须重启:MCP 描述对于工具效果起着重要的作用,当需求变化或者服务迭代而需要修改某个 Tool 的描述、参数说明或提示词时,传统方式要求重新打包、发布、重启服务。不仅效率低,还可能影响正在运行的 AI 请求。
  • 服务分散,难以统一管理:多个 MCP Server 分散在不同机器或环境中,缺乏统一的服务注册与发现机制。AI 网关无法动态感知可用服务,运维人员也难以快速定位问题。
  • 缺乏动态控制能力:某个 Tool 出现异常,不能即时关闭;新功能上线无法灰度发布;调试阶段也无法临时禁用部分能力——缺乏灵活的运行时治理手段。


这些问题导致 MCP 服务体系虽然功能完整,但可维护性差、迭代慢、稳定性弱


02 解决方案:函数计算+MSE Nacos 企业版


为了解决上述问题,提升 MCP Server 的可维护性与可扩展性,阿里云函数计算(Function Compute)与微服务引擎 MSE Nacos 已完成能力打通,支持将 MCP Server 部署于函数计算环境的同时,自动注册至 MSE Nacos 的 MCP Registry。


函数计算作为事件驱动的 Serverless 计算平台,在 MCP Server 的部署场景中提供以下核心能力:


  • 弹性伸缩:根据请求量自动扩缩容,适应 AI 调用流量波动大、突发性强的特点。
  • 协议兼容:支持 SSE 与 STIDO 协议的 MCP Server 运行,并可通过标准接口对外暴露服务。
  • 低成本运行:按实际执行时间计费,无调用时不产生费用,适用于低频高价值的工具类服务。
  • 低运维成本:用户无需管理服务器、负载均衡、消息队列等基础设施,通过函数计算内置的可观测能力可以实时了解函数运行状态并快速定位问题。


而 MSE Nacos 致力于打造企业级 AI 智能体平台,提供对 MCP Server 的集中化管控能力,并支持社区官方 MCP Registry 协议:


  • 自动服务注册:MCP Server 在函数计算中启动后,自动注册至指定的 MSE Nacos 实例,无需手动配置。
  • 动态元信息管理:支持对工具描述、参数定义等元信息进行运行时更新,变更实时生效,无需重启服务。
  • Tools 动态开关:可在控制台对特定 Tool 进行启用或禁用操作,实现快速故障隔离与灰度控制。
  • 统一服务发现:注册的服务信息同步至 Nacos 配置中心与服务发现模块,便于 AI 网关或 Agent 客户端进行动态寻址与调用。
  • 全链路集成:与阿里云 AI 网关, Nacos MCP Router 等组件无缝对接,构建完整的 AI 服务治理体系。

image.png

通过函数计算,开发者可将关注点聚焦于业务逻辑开发,而非基础设施管理。而基于 MSE Nacos,开发者可以实现 MCP Server 的从“散点式部署”走向“平台化治理”,显著提升系统的可观测性与可控性。两者相结合,用户无需修改业务代码,即可完成 MCP Server 的注册与动态治理,对 MCP Server 进行全生命周期管理。


接下来本文将通过一个具体案例,演示如何基于 MCP Python SDK 开发一个标准的 MCP Server,并将其部署至函数计算。在不修改任何业务代码的前提下,通过控制台简单配置,即可实现该服务自动注册至 MSE Nacos 企业版,并支持后续的动态更新与统一管理。


03 操作教程:从开发到上线的完整流程


前提条件


代码开发

函数计算目前支持 STIDO 和 SSE 协议的 MCP Server 的部署, 可以通过 MCP 社区提供的 SDK 或者 Spring Ai Alibaba 等框架进行 MCP Server 开发。 本文中,我们以 MCP Python SDK 进行标准 MCP Server 开发为例:


1. 依赖安装

首先我们需要进行 MCP 相关的依赖安装。在工程目录下执行:


pip install "mcp[cli]"


2. 代码开发

在工程目录下创建文件 main.py,使用 FastMCP 快速开发一个 标准 SSE 协议的 MCP Server:


"""
FastMCP Echo Server
"""
from mcp.server.fastmcp import FastMCP
# Create server
mcp = FastMCP("Echo Server",port=8080,host="0.0.0.0")
@mcp.tool()
def echo_tool(text: str) -> str:
    """Echo the input text"""
    return text
@mcp.resource("echo://static")
def echo_resource() -> str:
    return "Echo!"
@mcp.resource("echo://{text}")
def echo_template(text: str) -> str:
    """Echo the input text"""
    return f"Echo: {text}"
@mcp.prompt("echo")
def echo_prompt(text: str) -> str:
    return text
if __name__ == "__main__":
    mcp.run("sse")


3. 代码测试

在工程目录下执行命令,启动 MCP Server:


python main.py


出现如下输出,代表 MCP Server 成功启动:


INFO:     Started server process [24172]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)


通过以上的步骤,我们完成了一个标准 MCP Server 开发。接下来我们要做的就是将 MCP Server 部署至函数计算,就可以基于函数计算实现 MCP Server 的自动弹性和扩容,聚焦于业务逻辑;同时在不修改任何代码的情况下,自动将 MCP Server 注册至 MSE Nacos MCP Registry , 实现对于 MCP Server 的统一管理和快速迭代。


4. 代码打包

在工程目录下执行命令, 对代码和相关的依赖进行打包,方便之后在函数计算中部署:


zip -r echo.zip .


在函数计算中部署 MCP Server

1. 登录函数计算 FuntionAI 控制台


2. 选择已有项目或者创建空白项目

创建空白项目:单击项目,并点击加号创建空白项目,选择 MCP 场景,输入项目名称,然后单击确定

1759996813722_D68F64CA-299B-4688-BB15-FE3DD604B02C.png

完成项目创建后,就可以开始基础的配置了。

3. 基础配置

1759996831380_6A282FBD-F71D-40dc-83D8-0BC1B75F9E20.png

  • 地域:选择与 MSE Nacos 实例相同地域。
  • 函数名称:使用自动生成的即可。
  • 函数描述:对 MCP Server 的功能和使用方式进行简单说明。


4. MCP 服务配置

1759996861036_AD12E4B4-679D-4ba9-AA91-5FB889F45D46.png

  • 传输类型:根据实际场景,选择 SSE 协议或者 STIDO 协议, 函数计算支持将 STDIO 协议转化为 SSE 协议。在本文案例中,我们选择 SSE 协议。
  • SSE 路径:使用默认值 /sse。
  • 监听端口:进程实际监听的端口,在本文中我们配置为 8080。
  • 开启鉴权:函数计算支持为 MCP Server 配置 token 鉴权, 可以根据实际需要进行开启。我们选择关闭鉴权。
  • 运行环境:根据代码实际需要的运行环境进行选择,我们采用 MCP Python SDK 进行的 MCP Server 开发,因此选择 python 3.10 环境。
  • 启动命令:配置启动命令,为:python3 main.py。
  • 选择仓库:函数计算支持多种代码上传方式,我们采用代码包方式进行上传。
  • 代码包:选择我们在代码开发章节中打包的 echo.zip 文件进行上传。


5. 网络配置

在网络配置一栏,打开允许访问 VPC 开关,选择 MSE Nacos 实例所在的专有网络交换机安全组完成网络配置。

1759996891500_E3DE3782-E62D-48ae-90CB-6B1D984A7BD0.png

6. 服务注册

在服务注册一栏,选择注册到 MSE Nacos 实例,选择需要注册到的企业版 MSE Nacos 实例。如果 MSE 实例未开启阿里云访问控制,则需要填写开源控制台用户名和密码。用户名为 Nacos,密码为 Nacos 开源控制台密码,如果遗忘或者为新创建实例,可以在 MSE Nacos 实例基础信息页面开源控制台密码处进行重置。

1759997060747_4039304A-B2A7-4ccf-84C7-0193487F0DC3.png

7. 部署 MCP Server

配置完成后,单击确认部署按钮,完成 MCP Server 部署。

1759997075647_F8789578-2908-4502-8DF7-9BC056BC7B0E.png

8. 安装依赖

完成部署后,由于我们采用的是代码包的方式上传的代码,代码包中缺乏本地的依赖,因此第一次启动是不成功的,我们需要在 WebIDE 中重新把依赖安装一遍:


点击 WebIDE 标签:

1759997091743_4E666FC5-D0D0-4675-9372-F3E46D4CD2B5.png

在控制台中执行依赖安装命令:


pip install -t . "mcp[cli]"


1759997139820_2EDAE4DD-25B9-4024-AA37-9BA613636600.png

依赖安装完成后点击保存按钮,并重新部署。


完成以上步骤后, 我们成功在函数计算中部署了 MCP Server 。


9. 调试 MCP Server

部署完成后,可以在函数计算控制台上对 MCP Server 进行简单的调试。单击服务测试并在连接信息页签单击测试连接

1759997162240_8E4E7B4A-52E6-459b-9708-6B9C9BA67399.png

我们也可通过执行 curl 命令访问函数的公网访问地址,调试并预热刚才部署的 MCP Server。返回类似以下内容,则 MCP 服务函数部署成功。


id:3d3ba0d9-4d10-4a4e-ae08-a4a92f95d88a
event:endpoint
data:/mcp/message?sessionId=3d3ba0d9-4d10-4a4e-ae08-a4a92f95d88a


在 MSE Nacos 中查看和管理注册的 MCP Server

在函数计算中完成 MCP Server 的部署并配置相关的服务注册选项后,用户即可在 MSE Nacos 实例中查看和管理对应的 MCP Server 。


1. 登录 MSE 注册配置中心控制台

单击目标 Nacos 实例,在左侧导航栏选择 MCP Registry,检查对应的 MCP 服务是否注册成功。

1759997410979_1C3941C6-19F5-473e-8F94-3920C9D81A2A.png

2. 查看服务详情

单击目标 MCP 服务,进入 MCP 服务详情界面,查看服务详情

可以发现函数计算中 MCP 函数的访问地址成功注册到了对应的服务中。


3. 对 MCP Server 进行管理

成功注册到 Nacos 之后, 我们即可在 MSE Nacos MCP Registry 中对 MCP 进行动态管理而无需重新部署 MCP Server ,包括工具描述的修改,开启与禁用某个工具。


在 MCP Server 详情页点击编辑按钮:

1759997492554_F2F96F5E-B9D1-4d0d-A234-87334F7910A5.png

修改对应的工具描述:

1759997504996_7BEDAD04-1256-4f48-AC19-81C12E4B4D03.png

启动官方 MCP Server 调试工具,并执行 List Tools 命令:


npx @modelcontextprotocol/inspector

1759997527671_E3414A10-170C-42f1-B0FD-232299EACF67.png

发现对应的工具描述变更成了我们动态调整后内容,而在这个过程中我们并没有重新部署 MCP Server。


此外,也可以将对应的 MCP 服务同步至 AI 网关。也可以通过 Nacos MCP Registry 进行统一的 MCP 服务发现。


通过以上步骤,借助函数计算与 MSE Nacos 的深度集成能力,开发者不仅可以快速部署 MCP Server,还能在不重启服务的前提下,实现工具描述更新、Tool 动态开关等运行时治理操作,大大降低了 MCP Server 的部署和管理成本。


04 总结


通过函数计算与 MSE Nacos 的集成,MCP Server 在部署和管理中的多个实际问题得到了有效解决。针对部署运维成本高的问题,函数计算提供了免服务器管理的运行环境,自动完成实例调度和弹性伸缩,减少了人工干预和资源浪费。对于配置变更必须重启的情况,借助 MSE Nacos 的动态注册能力,工具描述、参数定义等元信息可以在运行时更新,修改后立即生效,无需重新发布服务。


服务分散、难以统一查看的问题也得到了改善。MCP Server 在启动后会自动注册到 MSE Nacos,所有服务实例集中可见,便于监控和调用。同时,通过控制台对特定 Tool 进行启用或禁用操作,实现了基本的运行时控制能力,提升了应对异常场景的响应速度。


整个流程无需修改业务代码,只需在部署时完成网络和服务注册配置,即可实现从运行到治理的完整链路接入。对于正在构建 AI 工具体系的团队来说,这是一种低侵入、易落地的技术路径。

相关实践学习
【AI破次元壁合照】少年白马醉春风,函数计算一键部署AI绘画平台
本次实验基于阿里云函数计算产品能力开发AI绘画平台,可让您实现“破次元壁”与角色合照,为角色换背景效果,用AI绘图技术绘出属于自己的少年江湖。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
5月前
|
人工智能 供应链 安全
MCP Server的五种主流架构与Nacos的选择
本文深入探讨了Model Context Protocol (MCP) 在企业级环境中的部署与管理挑战,详细解析了五种主流MCP架构模式(直连远程、代理连接远程、直连本地、本地代理连接本地、混合模式)的优缺点及适用场景,并结合Nacos服务治理框架,提供了实用的企业级MCP部署指南。通过Nacos MCP Router,实现MCP服务的统一管理和智能路由,助力金融、互联网、制造等行业根据数据安全、性能需求和扩展性要求选择合适架构。文章还展望了MCP在企业落地的关键方向,包括中心化注册、软件供应链控制和安全访问等完整解决方案。
2800 157
MCP Server的五种主流架构与Nacos的选择
|
2月前
|
人工智能 安全 Nacos
如何实现 AI Agent 自主发现和使用 MCP 服务 —— Nacos MCP Router 部署最佳实践
Nacos社区推出MCP Router与MCP Registry开源解决方案,助力AI Agent高效调用外部工具。Router可智能筛选匹配的MCP Server,减少Token消耗,提升安全性与部署效率。结合Nacos Registry实现服务自动发现与管理,简化AI Agent集成复杂度。支持协议转换与容器化部署,保障服务隔离与数据安全。提供智能路由与代理模式,优化工具调用性能,助力MCP生态普及。
1052 24
|
9天前
|
人工智能 Java API
Nacos 3.1.0 正式发布,支持 A2A 注册中心与 MCP 注册协议增强
3.1.0 发布核心全新功能-Agent 注册中心,助力构建基于 A2A 协议的多 Agent 协作的AI应用,同时 MCP 注册中心适配最新 MCP 官方注册中心协议及升级优化多项核心功能。
|
1月前
|
人工智能 API Nacos
MCP Registry 官方发布:Nacos 原生支持,借助 HiMarket 构建企业级私有 MCP 市场
最近,MCP 社区发布了 MCP Registry(2025‑09‑08,预览版),为公开 MCP Server 提供“统一目录服务和开放 API”。Nacos 已原生支持 MCP Registry API,可直接作为“MCP Registry”对外提供标准 REST/OpenAPI 服务端,天然融入企业现有注册中心与配置治理体系,并与 Higress/HiMarket 对接打通,让企业能够高效的构建自己的私有 MCP 市场。
215 27
|
2月前
|
人工智能 Kubernetes Cloud Native
MSE Nacos Controller:为 Kubernetes 生态构建配置管理与服务发现的桥梁
在企业云原生转型过程中,如何实现传统微服务与 Kubernetes 服务的配置统一管理、服务互通及协议转换成为关键挑战。MSE Nacos Controller 应运而生,作为连接 Kubernetes 与 Nacos 的桥梁,支持 ConfigMap 与 Nacos 配置双向同步、服务自动注册发现,并助力 Higress 等 MCP 网关实现 REST API 向 AI 可调用 MCP 服务的转换,全面提升系统治理能力与智能化水平。
304 32
|
3月前
|
人工智能 Java Nacos
基于 Nacos + Higress 的 MCP 开发新范式,手把手教程来了!
本文介绍了如何使用 Nacos 3.0.1 与 Higress 配合,实现 HTTP 服务转化为 MCP 协议服务,并支持自动注册与代理。通过 Docker 部署环境,结合 Spring AI Alibaba 框架,可实现服务的自动暴露和动态配置管理,适用于零改造存量应用适配 MCP 协议的场景。
1602 25
|
4月前
|
人工智能 Nacos 开发者
Nacos 开源 MCP Router,加速 MCP 私有化部署
Nacos MCP Router 发布全新版本。带来了多项重要更新,包括对 SSE 和 StreamableHTTP 协议的全面支持、Docker 容器化部署方案以及革命性的 MCP Server 协议一键转换功能。文章中详细的介绍更新内容并简单演示了使用过程。Nacos MCP Router 新版本的发布,不仅提升了开发者的使用体验,也为 MCP 服务的广泛应用和生态繁荣奠定了基础,欢迎关注。
1293 63
|
5月前
|
人工智能 Serverless API
MCP Server 之旅第 4 站: 长连接闲置计费最高降低87%成本的技术内幕
阿里云函数计算(FC)提供事件驱动的全托管计算服务,支持 MCP Server 场景优化。通过 [MCP Runtime](https://mp.weixin.qq.com/s/_DSMRovpr12kkiQUYDtAPA),实现 Stdio MCP Server 一键托管,并借助亲和性调度解决 Session 保持问题。针对 MCP Server 的稀疏调用特性,函数计算引入长连接闲置计费机制,在毫秒级计费基础上,显著降低资源闲置成本(最高可达87%)。用户可通过控制台或 API 开启该功能,Websocket 长请求场景亦默认支持。此方案有效提升资源利用率,为用户提供灵活、经济的计算服务。
|
9天前
|
消息中间件 分布式计算 资源调度
《聊聊分布式》ZooKeeper与ZAB协议:分布式协调的核心引擎
ZooKeeper是一个开源的分布式协调服务,基于ZAB协议实现数据一致性,提供分布式锁、配置管理、领导者选举等核心功能,具有高可用、强一致和简单易用的特点,广泛应用于Kafka、Hadoop等大型分布式系统中。

热门文章

最新文章

相关产品

  • 微服务引擎