Nacos MCP Router

发布于:2025-09-07 ⋅ 阅读:(22) ⋅ 点赞:(0)

前言:之前在博客中带搭建学了nacos3.0 的存量api转换,今天来学新的中间件Nacos MCP Router,如果没有看过nacos3.0 的存量api转换,可以参考我之前的博客使用nacos3+higress实现存量api转换为mcp-CSDN博客

Nacos MCP Router是一个基于MCP官方SDK开发的标准MCP Server,为MCP Client提供MCP Server的智能搜索安装代理等功能, 极大地简化了MCP服务的使用流程。 同时,Nacos MCP Router跟Nacos MCP Registry结合,可以实现MCP Server治理,如MCP Server及工具可见性、版本管理等。

功能介绍

Nacos MCP Router 有两种工作模式:

  1. router模式:默认模式,通过MCP Server推荐、安装及代理其他MCP Server的功能,帮助用户更方便的使用MCP Server服务。
  2. proxy模式:使用环境变量MODE=proxy指定,通过简单配置可以把sse、stdio协议MCP Server转换为streamableHTTP协议MCP Server。

在router 模式下,Nacos MCP Router 作为一个标准MCP Server,提供MCP Server推荐、分发、安装及代理其他MCP Server的功能。其主要工具列表为

  1. search_mcp_server
    • 根据任务描述及关键字从MCP注册中心(Nacos)中搜索相关的MCP Server列表
    • 输入:
      • task_description(string): 任务描述,示例:今天杭州天气如何
      • key_words(string): 任务关键字,示例:天气、杭州
    • 输出: list of MCP servers and instructions to complete the task.
  2. add_mcp_server
    • 添加并初始化一个MCP Server,根据Nacos中的配置与该MCP Server建立连接,等待调用。
    • 输入:
      • mcp_server_name(string): 需要添加的MCP Server名字
    • 输出: MCP Server工具列表及使用方法
  3. use_tool
    • 代理其他MCP Server的工具
    • 输入:
      • mcp_server_name(string): 被调的目标MCP Server名称.
      • mcp_tool_name(string): 被调的目标MCP Server的工具名称
      • params(map): 被调的目标MCP Server的工具的参数
    • 输出: 被调的目标MCP Server的工具的输出结果

在proxy 模式下,Nacos MCP Router 仅提供代理功能,无需代码改动即可实现stdio、sse协议一键转换为streamableHTTP协议。

router模式

启动Nacos MCP Router

参考:Nacos MCP Router手册 | Nacos 官网

这里只展示streamableHTTP 协议的部署

执行docker 命令

docker run -d --name nacos-mcp-router -p 8000:8000 -e NACOS_ADDR=192.168.176.106:8848 -e NACOS_USERNAME=nacos -e NACOS_PASSWORD=nacos -e TRANSPORT_TYPE=streamable_http nacos-mcp-router:latest 向外暴露端口了吗

如果镜像拉不下来可以参考docker.io/nacos/nacos-mcp-router:latest - 镜像下载 | docker.io

先将镜像拉下来

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nacos/nacos-mcp-router:latest

给镜像取给名字

# 给镜像起一个简短的名字,比如 "nacos-mcp-router:latest"
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nacos/nacos-mcp-router:latest nacos-mcp-router:latest

最后再执行docker命令

执行完毕后就可以在客户端配置Nacos MCP Router

我这里以Cherry Studio为例子

 {
        "mcpServers": {
            "nacos-mcp-router": {
                "url": "http://$router_ip:8000/mcp"
            }
        }
    }

    这里我没有在nacos注册任何mcpserver,感兴趣可以注册上去玩一下。


    网站公告

    今日签到

    点亮在社区的每一天
    去签到