mcpcan
Verified Safeby Kymo-MCP
Overview
MCPCan is an open-source integration platform for managing and orchestrating MCP (Model Context Protocol) services, providing a web-based interface for service lifecycle management, multi-protocol compatibility, monitoring, security, and one-stop deployment on containerized environments.
Installation
docker-compose -f docker-compose.dev.yml upEnvironment Variables
- MCP_MARKET_SERVER_PREFIX
- MCP_AUTHZ_SERVER_PREFIX
- MCP_GATEWAY_SERVER_PREFIX
- REGISTORY_IMAGE_MIRROR
- PUBLIC_IP
- MCP_SSE_ERROR_ENVELOPE
- DB_HOST
- DB_PORT
- DB_USERNAME
- DB_PASSWORD
- DB_DATABASE
- REDIS_HOST
- REDIS_PORT
- REDIS_PASSWORD
- REDIS_DB
- APP_SECRET
- ADMIN_USERNAME
- ADMIN_PASSWORD
- KUBERNETES_NAMESPACE
- KUBERNETES_DEFAULT_CONFIG_FILE_PATH
- DOCKER_HOST
- DOCKER_USETLS
- DOCKER_CAPATH
- DOCKER_CERTPATH
- DOCKER_KEYPATH
- DOCKER_NETWORK
Security Notes
The project exhibits mixed security practices. Positive aspects include explicit path traversal prevention during archive extraction, robust CORS handling, and HMAC-SHA256 for internal API security middleware. However, several critical issues lower the overall score: 1. A hardcoded JWT token in `backend/pkg/mcpcansaas/client.go` is used for accessing an external SaaS platform (`mcpcan.com`), posing a significant risk if compromised. 2. The `backend/pkg/qm/signature.go` file contains a function for signature generation using MD5, a cryptographically broken hash function, though its usage appears commented out in the `client.go`. If enabled, this would be a severe vulnerability. 3. The `backend/pkg/dify` package (Go port of a Python module) uses SHA-1 for OAEP padding, which is an outdated cryptographic hash function. 4. Example configuration files (`backend/config-example/*.yaml`) contain default passwords and a generic `dev-app-secret` which, if not changed in production deployments, can easily lead to compromise. The `init` service also contains default admin credentials.
Similar Servers
Unla
Transforms existing MCP Servers and APIs into MCP protocol-compliant endpoints through configuration, enabling LLM tool calling without code changes.
mcp-k8s-go
This MCP server enables interaction with Kubernetes clusters to list, get, apply, and execute commands on various resources through a conversational interface.
k8s-mcp-server
Interacting with Kubernetes clusters and Helm releases through a standardized Model Context Protocol (MCP) interface.
mkp
MKP is a Model Context Protocol (MCP) server for Kubernetes, enabling LLM-powered applications to interact with Kubernetes clusters by providing tools for resource listing, getting, applying, deleting, and executing commands.