MCP Connector

Discover, Install, and Proxy MCP Servers

Discovers, installs, and proxies MCP servers through Nacos, with configurable search providers and transport modes.

Works with nacosdockergithub

88
Spark score
out of 100
Updated Sep 2025
Source checked Sep 28, 2026
Version 0.2.2
Models
universal

Add to Favorites

Why it matters

This asset acts as a router for MCP servers, enabling the discovery, installation, and proxying of other MCP servers. It enhances search capabilities with vector similarity and result aggregation from multiple providers.

Outcomes

What it gets done

01

Search for MCP servers using advanced criteria like vector similarity.

02

Automate the installation and connection to new MCP servers.

03

Proxy requests to tools available on other MCP servers.

04

Convert between different MCP server transport protocols.

Source

Get it from source

Spark does not host a copy of it.

Open source

Reports

Agent outcome reports

No reports yet

Capabilities

Tools your agent gets

search_mcp_server

Search for MCP servers by task description and keywords with vector similarity search

add_mcp_server

Install and establish connections to MCP servers, returns available tools

use_tool

Proxy requests to tools of target MCP servers for LLM usage

Overview

A configurable MCP server for search, server installation, tool proxying, and transport conversion. Use it when clients need centralized MCP server discovery or a configured transport bridge.

What it does

Nacos MCP Router is an MCP server for searching, installing, and proxying other MCP servers. In router mode, it recommends and distributes server capabilities, can install stdio servers and establish connections, and proxies tool calls to a selected server. Its search can combine Nacos service discovery with a Compass provider that supports semantic search and relevance scoring. In proxy mode, it can convert SSE and stdio MCP servers to streamable HTTP through configuration.

When to use - and when NOT to

Use router mode when an MCP client needs to discover available servers and call their tools through a central router. Use proxy mode when a registered MCP server needs to be exposed through streamable HTTP. The target server for proxy mode must already be registered in Nacos. Set the documented options and deployment command for the environment; connectivity and availability of external registries must be checked separately.

Inputs and outputs

Search inputs include a task description and keywords. Results provide server names, descriptions, provider information, relevance scores, metadata, and usage instructions. Search behavior can be adjusted with a Compass API base URL, a minimum similarity score, and a result limit. The documented defaults are a similarity threshold of 0.5 and a maximum of 10 results. Configuration also includes the Nacos address, username, password, namespace, transport type, operating mode, and service port for SSE or streamable HTTP.

A documented launch command is:

uvx nacos-mcp-router@latest

Install with uvx, pip, or Docker, then configure clients such as Cline or Cursor. Python examples run the package as a module; Docker examples pass Nacos and transport configuration. TypeScript client configuration uses npx. The tool interface includes search_mcp_server with a task and keywords, add_mcp_server with a server name, and use_tool with a server name, tool name, and parameters.

Integrations

The server connects with Nacos for service discovery and configuration, an optional Compass API for enhanced search, Docker, uvx, pip, and npx. It supports stdio, SSE, and streamable HTTP transport types. Environment options include MODE=router or MODE=proxy, NACOS_NAMESPACE, PROXIED_MCP_NAME, and PORT. Nacos credentials and optional Aliyun access keys are configuration inputs; keep credential values in the deployment's secure configuration rather than embedding real secrets in client examples.

The project uses the Apache 2.0 license. It also notes that uvx may require its full executable path in a client configuration, which can be located with the platform's executable lookup command.

Who it's for

MCP platform maintainers and application developers can use the router to find and call server tools or bridge supported transport protocols through a configured Nacos environment.

Source README

nacos-mcp-router: A MCP server that provides functionalities such as search, installation, proxy, and more.

Model Context Protocol Ask DeepWiki NPM Version NPM Downloads

Overview

Nacos is an easy-to-use platform designed for dynamic service discovery and configuration and service management. It helps you to build cloud native applications and microservices platform easily.

This MCP(Model Context Protocol) Server provides tools to search, install, proxy other MCP servers, with advanced search capabilities including vector similarity search and multi-provider result aggregation.

Nacos-MCP-Router has two working modes:

Router mode: The default mode, which recommends, distributes, installs, and proxies the functions of other MCP Servers through the MCP Server, helping users more conveniently utilize MCP Server services.

Proxy mode: Specified by the environment variable MODE=proxy, it can convert SSE and stdio protocol MCP Servers into streamable HTTP protocol MCP Servers through simple configuration.

Search Features

Nacos-MCP-Router provides powerful search capabilities through multiple providers:

Search Providers
  1. Nacos Provider

    • Searches MCP servers using Nacos service discovery
    • Supports keyword matching and vector similarity search
    • Integrated with the local Nacos instance
  2. Compass Provider

    • Connects to a COMPASS API endpoint for enhanced search
    • Supports semantic search and relevance scoring
    • Configurable API endpoint (default: https://registry.mcphub.io)
Search Configuration

Configure search behavior using environment variables:

# YOUR COMPASS API endpoint (for Outer Provider called Compass Provider)
COMPASS_API_BASE=https://registry.mcphub.io

# Minimum similarity score for results (0.0 to 1.0)
SEARCH_MIN_SIMILARITY=0.5

# Maximum number of results to return
SEARCH_RESULT_LIMIT=10
Search API

The search functionality is available through the MCP interface:

// Search for MCP servers
const results = await searchMcpServer(
  "Find MCP servers for natural language processing",
  ["nlp", "language"]
);

Results include:

  • Server name and description
  • Provider information
  • Relevance score
  • Additional metadata

Quick Start

Python
router mode
Tools
  1. search_mcp_server
    • Search MCP servers by task and keywords.
    • Input:
      • task_description(string): Task description
      • key_words(string): Keywords of task
    • Returns: list of MCP servers and instructions to complete the task.
  2. add_mcp_server
    • Add a MCP server. If the MCP server is a stdio server, this tool will install it and establish connection to it. If the MCP server is a sse server, this tool will establish connection to it
    • Input:
      • mcp_server_name(string): The name of MCP server.
    • Returns: tool list of the MCP server and how to use these tools.
  3. use_tool
    • This tool helps LLM to use the tool of some MCP server. It will proxy requests to the target MCP server.
    • Input:
      • mcp_server_name(string): The target MCP server name that LLM wants to call.
      • mcp_tool_name(string): The tool name of target MCP server that LLM wants to call.
      • params(map): The parameters of the MCP tool.
    • Returns: Result returned from the target MCP server.
Usage
Using uv (recommended)

When using uv no specific installation is needed. We will use uvx to directly run nacos-mcp-router.

export NACOS_ADDR=127.0.0.1:8848
export NACOS_USERNAME=nacos
export NACOS_PASSWORD=$PASSWORD
uvx nacos-mcp-router@latest
Using PIP

Alternatively you can install nacos-mcp-router via pip:

pip install nacos-mcp-router

After installation, you can run it as a script using(As an example,Nacos is deployed in standalone mode on the local machine):

export NACOS_ADDR=127.0.0.1:8848
export NACOS_USERNAME=nacos
export NACOS_PASSWORD=$PASSWORD
python -m nacos_mcp_router
Using Docker
docker run -i --rm --network host -e NACOS_ADDR=$NACOS_ADDR -e NACOS_USERNAME=$NACOS_USERNAME -e NACOS_PASSWORD=$NACOS_PASSWORD -e TRANSPORT_TYPE=$TRANSPORT_TYPE nacos/nacos-mcp-router:latest
Usage with Cline、Cursor、Claude and other applications

Add this to MCP settings of your application:

  • Using uvx
{
    "mcpServers":
    {
        "nacos-mcp-router":
        {
            "command": "uvx",
            "args":
            [
                "nacos-mcp-router@latest"
            ],
            "env":
            {
                "NACOS_ADDR": "<NACOS-ADDR>, optional, default is 127.0.0.1:8848",
                "NACOS_USERNAME": "<NACOS-USERNAME>, optional, default is nacos",
                "NACOS_PASSWORD": "<NACOS-PASSWORD>, required"
            }
        }
    }
}

You may need to put the full path to the uvx executable in the command field. You can get this by running which uvx on MacOS/Linux or where uvx on Windows.

  • Using docker
{
  "mcpServers": {
    "nacos-mcp-router": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm", "--network", "host",  "-e", "NACOS_ADDR=<NACOS-ADDR>", "-e",  "NACOS_USERNAME=<NACOS-USERNAME>", "-e", "NACOS_PASSWORD=<NACOS-PASSWORD>" ,"-e", "TRANSPORT_TYPE=stdio", "nacos/nacos-mcp-router:latest"
      ]
    }
  }
}
Proxy Mode

The proxy mode supports converting SSE and stdio protocol MCP Servers into streamable HTTP protocol MCP Servers.

Usage

The usage of proxy mode is similar to that of router mode, with slightly different parameters. Docker deployment is recommended.

docker run -i --rm --network host -e NACOS_ADDR=$NACOS_ADDR -e NACOS_USERNAME=$NACOS_USERNAME -e NACOS_PASSWORD=$NACOS_PASSWORD -e TRANSPORT_TYPE=streamable_http -e MODE=proxy -e PROXIED_MCP_NAME=$PROXIED_MCP_NAME  nacos/nacos-mcp-router:latest
Environment Variable Settings
Parameter Description Default Value Required Remarks
NACOS_ADDR Nacos server address 127.0.0.1:8848 No the Nacos server address, e.g., 192.168.1.1:8848. Note: Include the port.
NACOS_USERNAME Nacos username nacos No the Nacos username, e.g., nacos.
NACOS_PASSWORD Nacos password - Yes the Nacos password, e.g., nacos.
COMPASS_API_BASE COMPASS API endpoint for enhanced search https://registry.mcphub.io No Override the default COMPASS API endpoint
SEARCH_MIN_SIMILARITY Minimum similarity score (0.0-1.0) 0.5 No Filter search results by minimum similarity score
SEARCH_RESULT_LIMIT Maximum number of results to return 10 No Limit the number of search results
NACOS_NAMESPACE Nacos Namespace public No Nacos namespace, e.g. public
TRANSPORT_TYPE Transport protocol type stdio No transport protocol type. Options: stdio, sse, streamable_http.
PROXIED_MCP_NAME Proxied MCP server name - No In proxy mode, specify the MCP server name to be converted. Must be registered in Nacos first.
MODE Working mode router No Available options: router, proxy.
PORT Service port when TRANSPORT_TYPE is sse or streamable_http 8000 No
ACCESS_KEY_ID Aliyun ram access key id - No
ACCESS_KEY_SECRET Aliyun ram access key secret - No
typescript
Usage with Cline、Cursor、Claude and other applications
{
  "mcpServers": {
    "nacos-mcp-router": {
      "command": "npx",
      "args": [
        "nacos-mcp-router@latest"
      ],
      "env": {
        "NACOS_ADDR": "<NACOS-ADDR>, optional, default is 127.0.0.1:8848",
        "NACOS_USERNAME": "<NACOS-USERNAME>, optional, default is nacos",
        "NACOS_PASSWORD": "<NACOS-PASSWORD>, required"
      }
    }
  }
}

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.