项目简介
'nacos-mcp-router' 是一个基于 Model Context Protocol (MCP) 实现的服务器,其独特之处在于它作为一个中心路由器,能够发现、安装并代理对注册在 Nacos 中的其他 MCP 服务器的访问。它本身不直接提供业务功能工具,而是通过提供搜索、安装和代理工具,帮助 LLM 客户端管理和使用分散在不同 MCP 服务器上的能力。
主要功能点
- MCP 服务器搜索: 允许 LLM 根据任务描述和关键词搜索注册在 Nacos 中的相关 MCP 服务器。
- MCP 服务器安装/连接: 根据搜索结果,允许 LLM 触发安装或建立与目标 MCP 服务器的连接,使其工具变得可用。
- 工具代理调用: 允许 LLM 通过 'nacos-mcp-router' 代理调用已安装/连接的其他 MCP 服务器上暴露的工具。
安装步骤
推荐使用 'pip' 进行安装:
-
确保您的系统已安装 Python 3.8 或更高版本。
-
打开终端或命令提示符。
-
运行以下命令安装 'nacos-mcp-router':
pip install nacos-mcp-router
安装完成后,您可以使用 'python -m nacos_mcp_router' 命令启动服务器。
服务器配置
'nacos-mcp-router' 服务器需要连接到 Nacos 注册中心以发现其他 MCP 服务器。您需要通过环境变量为其配置 Nacos 的地址和认证信息。
MCP 客户端(如 Claude Desktop 或 Cline)需要配置连接到 'nacos-mcp-router' 服务器。典型的配置结构如下(请根据您的实际客户端和安装方式调整):
在一个 JSON 配置文件中(例如 'claude_desktop_config.json' 或 'cline_mcp_settings.json'),在 'mcpServers' 部分添加如下配置条目:
{ "nacos-mcp-router": { "command": "uvx", // 或 'python' 如果使用 pip 安装后直接调用模块 "args": [ "nacos_mcp_router" // 或 '-m nacos_mcp_router' 如果 command 是 'python' ], "env": { "NACOS_ADDR": "您的Nacos服务器地址(例如:localhost:8848)", "NACOS_USERNAME": "连接Nacos的用户名", "NACOS_PASSWORD": "连接Nacos的密码" } } }
- 'nacos-mcp-router': 这是您为这个 MCP 服务器实例定义的名称,客户端会使用此名称引用它。
- 'command': 启动 MCP 服务器的可执行命令。如果使用 'uv',通常是 'uvx'。如果使用 'pip' 安装后直接用 Python 模块启动,则是 'python'。
- 'args': 传递给 'command' 的参数。通常是模块名 'nacos_mcp_router' 或 '-m nacos_mcp_router'。
- 'env': 启动 MCP 服务器进程时需要设置的环境变量。
- 'NACOS_ADDR': Nacos 服务器的地址(例如 'localhost:8848')。
- 'NACOS_USERNAME': 用于认证连接 Nacos 的用户名。
- 'NACOS_PASSWORD': 用于认证连接 Nacos 的密码。
基本使用方法
LLM 客户端连接并成功初始化 'nacos-mcp-router' 服务器后,可以通过调用其暴露的工具来间接使用注册在 Nacos 中的其他 MCP 服务器的能力:
- 搜索目标 MCP 服务器: LLM 调用 'search_mcp_server' 工具,提供任务描述和关键词,获取一个可用的 MCP 服务器列表及其描述。
- 安装/连接目标 MCP 服务器: LLM 调用 'add_mcp_server' 工具,指定在第一步中找到的 MCP 服务器名称。'nacos-mcp-router' 会尝试连接到该服务器并获取其工具列表。
- 代理调用工具: LLM 调用 'use_tool' 工具,指定之前添加的 MCP 服务器名称、要调用的工具名称以及该工具所需的参数。'nacos-mcp-router' 会将请求转发给目标 MCP 服务器,并将结果返回给 LLM。
信息
分类
开发者工具