Unla

๐Ÿงฉ MCP Gateway - A lightweight gateway service that instantly transforms existing MCP Servers and APIs into MCP servers with zero code changes. Features Docker deployment and management UI, requiring no infrastructure modifications.

GitHub Stars

1,709

User Rating

Not Rated

Favorites

0

Views

49

Forks

137

Issues

61

README
Unla - MCP Gateway

๐Ÿš€ Instantly transform your existing MCP Servers and APIs into MCP endpoints โ€” without changing a line of code.

English
็ฎ€ไฝ“ไธญๆ–‡
Release
Docs
Ask DeepWiki
Discord
Go Report Card
Snyk Security


โšก Note: Unla is under rapid development! We strive to maintain backward compatibility, but it cannot be 100% guaranteed. Please make sure to check version changes carefully when upgrading. Due to the fast iteration, documentation updates may sometimes lag behind. If you encounter any issues, feel free to search or ask for help via Discord or Issues โค๏ธ


โœจ What is Unla?

Unla is a lightweight and highly available gateway service written in Go. It enables individuals and organizations to convert their existing MCP Servers and APIs into services compliant with the MCP Protocol โ€” all through configuration, with zero code changes.

https://github.com/user-attachments/assets/69480eda-7aa7-4be7-9bc7-cae57fe16c54

๐Ÿ”ง Core Design Principles
  • โœ… Zero Intrusion: Platform-agnostic, supports deployment on bare metal, VMs, ECS, Kubernetes, etc., without modifying existing infrastructure
  • ๐Ÿ”„ Configuration-Driven: Convert legacy APIs to MCP Servers using YAML configuration โ€” no code required
  • ๐Ÿชถ Lightweight & Efficient: Designed for minimal resource usage without compromising on performance or availability
  • ๐Ÿงญ Built-in Management UI: Ready-to-use web interface to simplify setup and reduce operational overhead

๐Ÿš€ Getting Started

Unla supports a ready-to-run Docker deployment. Full deployment and configuration instructions are available in the docs.

Quick Launch with Docker

Configure environment variables:

export APISERVER_JWT_SECRET_KEY="changeme-please-generate-a-random-secret"
export SUPER_ADMIN_USERNAME="admin"
export SUPER_ADMIN_PASSWORD="changeme-please-use-a-secure-password"

Launch the container:

docker run -d \
  --name unla \
  -p 8080:80 \
  -p 5234:5234 \
  -p 5235:5235 \
  -p 5335:5335 \
  -p 5236:5236 \
  -e ENV=production \
  -e TZ=Asia/Shanghai \
  -e APISERVER_JWT_SECRET_KEY=${APISERVER_JWT_SECRET_KEY} \
  -e SUPER_ADMIN_USERNAME=${SUPER_ADMIN_USERNAME} \
  -e SUPER_ADMIN_PASSWORD=${SUPER_ADMIN_PASSWORD} \
  --restart unless-stopped \
  ghcr.io/amoylab/unla/allinone:latest
Access and Configuration
  1. Access the Web Interface:

  2. Add an MCP Server:

Available Endpoints

After configuration, the service will be available at these endpoints:

Configure your MCP Client with the /sse or /mcp suffix URLs to start using it.

Testing

You can test the service using:

  1. The MCP Chat page in the web interface
  2. Your own MCP Client (recommended)

๐Ÿ“– Read the full guide โ†’ Quick Start ยป


๐Ÿš€ Core Features
๐Ÿ”Œ Protocol & Proxy Capabilities
  • Support for converting RESTful APIs to MCP Server โ€” Client โ†’ MCP Gateway โ†’ APIs
  • Support proxying MCP services โ€” Client โ†’ MCP Gateway โ†’ MCP Servers
  • Support for converting gRPC to MCP Server โ€” Client โ†’ MCP Gateway โ†’ gRPC
  • Support for converting WebSocket to MCP Server โ€” Client โ†’ MCP Gateway โ†’ WebSocket
  • Support for MCP SSE
  • Support for MCP Streamable HTTP
  • Support for MCP responses including text, images, and audio
๐Ÿง  Session & Multi-Tenant Support
  • Persistent and recoverable session support
  • Multi-tenant support
  • Support for grouping and aggregating MCP servers
๐Ÿ›  Configuration & Management
  • Automatic configuration fetching and seamless hot-reloading
  • Configuration persistence (Disk/SQLite/PostgreSQL/MySQL)
  • Configuration sync via OS Signals, HTTP, or Redis PubSub
  • Version control for configuration
๐Ÿ” Security & Authentication
  • OAuth-based pre-authentication support for MCP Servers
๐Ÿ–ฅ User Interface
  • Intuitive and lightweight management UI
๐Ÿ“ฆ Deployment & Operations
  • Multi-replica service support
  • Docker support
  • Kubernetes and Helm deployment support

๐Ÿ“š Documentation

For more usage patterns, configuration examples, and integration guides, please visit:

๐Ÿ‘‰ https://docs.unla.amoylab.com


๐Ÿ“„ License

This project is licensed under the MIT License.

๐Ÿ’ฌ Join Our WeChat Community

Scan the QR code below to add us on WeChat. Please include a note: mcp-gateway, mcpgw or unla.

WeChat QR Code
๐Ÿ“ˆ Star History

Star History Chart