Unla
FreeNot checked๐งฉ MCP Gateway - A lightweight gateway service that instantly transforms existing MCP Servers and APIs into MCP servers with zero code changes. Features Docker
About
๐งฉ 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.
README
๐ 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
Access the Web Interface:
- Open http://localhost:8080/ in your browser
- Login with the administrator credentials you configured
Add an MCP Server:
- Copy the config from: https://github.com/amoylab/unla/blob/main/configs/proxy-mock-server.yaml
- Click "Add MCP Server" in the web interface
- Paste the configuration and save
Available Endpoints
After configuration, the service will be available at these endpoints:
- MCP SSE: http://localhost:5235/mcp/user/sse
- MCP SSE Message: http://localhost:5235/mcp/user/message
- MCP Streamable HTTP: http://localhost:5235/mcp/user/mcp
Configure your MCP Client with the /sse or /mcp suffix URLs to start using it.
Testing
You can test the service using:
- The MCP Chat page in the web interface
- 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.

๐ Star History
Installing Unla
This server has no published package โ it is built from source. Open the repository and follow its README.
โธ github.com/AmoyLab/UnlaFAQ
Is Unla MCP free?
Yes, Unla MCP is free โ one-click install via Unyly at no cost.
Does Unla need an API key?
No, Unla runs without API keys or environment variables.
Is Unla hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Unla in Claude Desktop, Claude Code or Cursor?
Open Unla on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install โ the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Unla with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
