1. Conduid
  2. Search
  3. McpMesh
MCP server · Search

McpMesh

Aggregate multiple Model Context Protocol (MCP) servers into a single HTTP API. Docker-ready with 13 example tools included.

34Low

Scored 6 months ago · breakdown

About McpMesh

McpMesh is an MCP server in the Search category: aggregate multiple Model Context Protocol (MCP) servers into a single HTTP API. Docker-ready with 13 example tools included.

Install

From source
git clone https://github.com/dmatvienco/McpMesh

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about McpMesh

Powered by Claude · Grounded in docs

I know everything about McpMesh. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

License .NET

McpMesh

A .NET 9 service for aggregating multiple Model Context Protocol (MCP) servers.

Features

  • Multi-MCP Aggregation: Connect to multiple MCP servers simultaneously
  • MCP Protocol Support: Exposes MCP protocol endpoints using ModelContextProtocol.AspNetCore
  • Flexible Configuration: Configure MCP servers via appsettings or Kubernetes ConfigMaps
  • Health Monitoring: Built-in health endpoints for container orchestration
  • Containerized: Docker support with Kubernetes deployment manifests

Quick Start with Docker

The easiest way to run McpMesh is with Docker, which includes all necessary dependencies:

  1. Clone the repository:
git clone https://github.com/dmatvienco/McpMesh.git
cd McpMesh
  1. Build and run with Docker:
docker build -t mcpmesh .
docker run -p 5293:80 mcpmesh
  1. The service will be available at http://localhost:5293

Local Development

For development without Docker, you'll need:

  • .NET 9 SDK
  • Node.js and Python (for MCP servers)
dotnet run

Configuration

Configure MCP servers in your appsettings.json. The Docker image includes all necessary dependencies to run the example MCP servers.

{
  "McpMeshOptions": {
    "Packages": [
      {
        "Enabled": true,
        "Id": "example-package",
        "Servers": ["everything-server", "time-server"]
      }
    ],
    "Servers": [
      {
        "Id": "everything-server",
        "Name": "MCP Everything Server",
        "Type": "stdio",
        "Command": "npx",
        "Args": ["@modelcontextprotocol/server-everything"],
        "Environment": {},
        "Enabled": true,
        "TimeoutMs": 30000
      },
      {
        "Id": "time-server",
        "Name": "Time MCP Server",
        "Type": "stdio",
        "Command": "uvx",
        "Args": ["mcp-server-time"],
        "Environment": {},
        "Enabled": true,
        "TimeoutMs": 30000
      }
    ]
  }
}

The default configuration includes two example MCP servers:

  • everything-server: 11 demo tools (echo, add, longRunningOperation, etc.)
  • time-server: 2 time-related tools (get_current_time, convert_time)

Endpoints

Health Endpoints

  • GET /health/live - Liveness probe
  • GET /health/ready - Readiness probe
  • GET /health/startup - Startup probe

MCP Protocol Endpoints

  • MCP protocol endpoints are available at /{packageId}
  • Supports tools/list and tools/call MCP operations

Testing

Test the MCP protocol with curl:

# Test health
curl http://localhost:5293/health/live

# Test MCP tools/list (should return 13 tools from both servers)
curl -X POST http://localhost:5293/example-package \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":"1","method":"tools/list"}'

# Test calling a tool (echo example)
curl -X POST http://localhost:5293/example-package \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":"2","method":"tools/call","params":{"name":"echo","arguments":{"message":"Hello McpMesh!"}}}'

For a more interactive experience, you can use the MCP Inspector tool, which provides a web interface to explore and test MCP servers. The Inspector can connect to McpMesh and allows you to browse available tools, examine their schemas, and execute them with a user-friendly interface.

Docker Deployment

docker build -t mcpmesh .
docker run -p 5293:80 mcpmesh

Kubernetes Deployment

kubectl apply -f deployment/namespace.yaml
kubectl apply -f deployment/configmap.yaml
kubectl apply -f deployment/deployment.yaml
kubectl apply -f deployment/service.yaml

Future Plans

  • OAuth Integration: Add support for OAuth providers (GitHub, Google, etc.) for secure authentication
  • Claude Desktop Integration: Native integration with Claude Desktop as an MCP connector
  • Web UI: Management interface for configuring MCP servers and monitoring status

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

License

MIT License - see LICENSE file for details.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About McpMesh

How do I install McpMesh?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is McpMesh safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is McpMesh still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.