MCP Gateway is a lightweight yet highly available gateway service developed in Go, designed to help individuals and businesses easily convert their existing API services (RESTful, gRPC, etc.) into MCP-Servers through configuration under the wave of MCP (Model Control Protocol).
Clear Purpose and Key Features:
- ๐ Platform Agnostic: Can be integrated easily in any environmentโbare metal, virtual machines, ECS, K8sโwithout touching the infrastructure.
- ๐ Multi-protocol Conversion: Supports converting RESTful and gRPC APIs to MCP-Server through configuration.
- โก๏ธ High Performance and Replication-Friendly: Lightweight without compromising availability and performance.
- ๐งญ User-Friendly Management UI: Minimizes learning and maintenance costs.
Demo.Video.2025-04-17.mp4
- โ๏ธ Zero-intrusion integration
- ๐ชถ Lightweight and easy to deploy
- ๐ก Transparent pass-through for headers, parameters, body, and response
- ๐งญ Intuitive admin interface
- Convert RESTful API to MCP-Server
- Convert gRPC to MCP-Server
- Request/Response body transformation
- Management interface
- Session persistence
- Streamable HTTP support
- Migratable and restorable sessions
- Pre-request authentication
- Configuration versioning
- Distributed configuration persistence
- Multi-replica service support
- Docker support
- Kubernetes integration
- Helm chart support
-
Clone the project
git clone https://github.com/mcp-ecosystem/mcp-gateway.git cd mcp-gateway -
Install dependencies
go mod download
-
Run the service
go run ./cmd/mcp-gateway/main.go
-
Clone the project
git clone https://github.com/mcp-ecosystem/mcp-gateway.git cd mcp-gateway -
Install dependencies
go mod download
-
Run the service
go run cmd/apiserver/main.go
-
Navigate to the frontend directory
cd web -
Install dependencies
npm install
-
Start the development server
npm run dev
.
โโโ cmd/ # Backend service entry points
โโโ configs/ # Configuration files
โโโ internal/ # Internal packages
โโโ pkg/ # Shared packages
โโโ web/ # Frontend code
โโโ docs/ # Project documentation
Configuration files are located in the configs directory and support YAML format. Key configuration items include:
- ๐ฅ๏ธ Server settings
- ๐ Routing rules
- ๐ Tool permissions
- โ๏ธ System parameters
- Fork the project
- Create a feature branch
- Commit your changes
- Push to your branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.