Supported Platforms

Currently supports binary deployment for the following platforms:

Linux AMD64

Suitable for x86_64 architecture Linux systems

Linux ARM64

Suitable for ARM64 architecture Linux systems

You can view and download the latest binary files at GitHub Releases.

Deployment Steps

1

Create Directory and Download Configuration

mkdir -p unla/{configs,data}
cd unla/
curl -sL https://raw.githubusercontent.com/amoylab/unla/refs/heads/main/configs/apiserver.yaml -o configs/apiserver.yaml
curl -sL https://raw.githubusercontent.com/amoylab/unla/refs/heads/main/configs/mcp-gateway.yaml -o configs/mcp-gateway.yaml
curl -sL https://raw.githubusercontent.com/amoylab/unla/refs/heads/main/.env.example -o .env
2

Adjust PID File Path (macOS Users)

On macOS, /var/run/mcp-gateway.pid may not have write permissions, so the path needs to be adjusted.

sed -i 's|/var/run/mcp-gateway.pid|./data/mcp-gateway.pid|g' .env
3

Download Binary Files

Choose the appropriate binary file based on your system architecture:

Linux AMD64:

LATEST_VERSION=$(curl -s https://api.github.com/repos/amoylab/unla/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
curl -sL "https://github.com/amoylab/unla/releases/download/${LATEST_VERSION}/mcp-gateway-linux-amd64" -o mcp-gateway
chmod +x mcp-gateway

Linux ARM64:

LATEST_VERSION=$(curl -s https://api.github.com/repos/amoylab/unla/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
curl -sL "https://github.com/amoylab/unla/releases/download/${LATEST_VERSION}/mcp-gateway-linux-arm64" -o mcp-gateway
chmod +x mcp-gateway
4

Start Service

./mcp-gateway

Configuration Guide

Environment Variables File

The downloaded .env file contains all necessary configuration items. Main configurations include:

Configuration Files

  • configs/apiserver.yaml: API server configuration
  • configs/mcp-gateway.yaml: MCP Gateway core configuration

For detailed configuration instructions, please refer to the Configuration Documentation.

Notes

Binary deployment requires you to manage service startup, stop, and monitoring yourself. It is recommended to use process management tools such as systemd or supervisor in production environments.

systemd Service Configuration Example

You can create a systemd service file to manage MCP Gateway:

[Unit]
Description=MCP Gateway
After=network.target

[Service]
Type=simple
User=mcpgateway
WorkingDirectory=/opt/unla
ExecStart=/opt/unla/mcp-gateway
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Save this file as /etc/systemd/system/mcp-gateway.service, then:

sudo systemctl daemon-reload
sudo systemctl enable mcp-gateway
sudo systemctl start mcp-gateway

Firewall Configuration

Ensure the following ports are accessible:

  • 5235: MCP Gateway main service port
  • 5335: Management port (internal access only)

If you need a Web management interface, it is recommended to deploy API Server and Web frontend simultaneously, or use the All-in-One Docker deployment method.