Skip to content
forked from AmoyLab/Unla

๐Ÿงฉ A lightweight and high-performance gateway for converting existing RESTful and gRPC services into MCP-Server with zero infrastructure changes. Built in Go.

License

Notifications You must be signed in to change notification settings

bianyiyan/mcp-gateway

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

23 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

MCP Gateway

English ็ฎ€ไฝ“ไธญๆ–‡

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

Features

  • โš™๏ธ Zero-intrusion integration
  • ๐Ÿชถ Lightweight and easy to deploy
  • ๐Ÿ’ก Transparent pass-through for headers, parameters, body, and response
  • ๐Ÿงญ Intuitive admin interface

TODOs

  • 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

Quick Start

Backend Service

Gateway Service

  1. Clone the project

    git clone https://github.com/mcp-ecosystem/mcp-gateway.git
    cd mcp-gateway
  2. Install dependencies

    go mod download
  3. Run the service

    go run ./cmd/mcp-gateway/main.go

Management Service

  1. Clone the project

    git clone https://github.com/mcp-ecosystem/mcp-gateway.git
    cd mcp-gateway
  2. Install dependencies

    go mod download
  3. Run the service

    go run cmd/apiserver/main.go

Frontend Development

  1. Navigate to the frontend directory

    cd web
  2. Install dependencies

    npm install
  3. Start the development server

    npm run dev

Project Structure

.
โ”œโ”€โ”€ cmd/            # Backend service entry points
โ”œโ”€โ”€ configs/        # Configuration files
โ”œโ”€โ”€ internal/       # Internal packages
โ”œโ”€โ”€ pkg/            # Shared packages
โ”œโ”€โ”€ web/            # Frontend code
โ””โ”€โ”€ docs/           # Project documentation

Configuration

Configuration files are located in the configs directory and support YAML format. Key configuration items include:

  • ๐Ÿ–ฅ๏ธ Server settings
  • ๐Ÿ”€ Routing rules
  • ๐Ÿ” Tool permissions
  • โš™๏ธ System parameters

Contribution Guide

  1. Fork the project
  2. Create a feature branch
  3. Commit your changes
  4. Push to your branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

๐Ÿงฉ A lightweight and high-performance gateway for converting existing RESTful and gRPC services into MCP-Server with zero infrastructure changes. Built in Go.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 69.4%
  • TypeScript 28.7%
  • JavaScript 1.3%
  • Other 0.6%