Instalasi MCPProxy di Ubuntu Server (Ganti Port ke 8004 + Reverse Proxy)

Kalau kamu lagi main-main sama AI yang butuh akses ke banyak MCP server sekaligus (misal database, tools internal, dll), MCPProxy ini berguna banget buat jadi “gerbang” tunggal yang nge-manage semua koneksi MCP itu dari satu tempat, gak perlu setup satu-satu di tiap aplikasi AI yang kamu pakai.

Di tutorial ini kita bahas cara install MCPProxy di Ubuntu pakai repository resmi, ganti port default-nya ke 8004, sampai expose Web UI-nya lewat reverse proxy biar bisa diakses lewat domain sendiri.

Spesifikasi yang Dipakai

  • OS: Ubuntu 24.04 LTS
  • MCPProxy: v0.46.0 (Personal)
  • Port: 8004
  • Reverse Proxy: Nginx / CloudPanel
  • Contoh domain: mcp.domainmu.com

1. Tambahin Repository Resmi

Bikin direktori keyring dulu:

sudo install -m 0755 -d /etc/apt/keyrings

Import GPG key-nya:

curl -fsSL https://apt.mcpproxy.app/mcpproxy.gpg 
| sudo tee /etc/apt/keyrings/mcpproxy.gpg >/dev/null

Tambahin repository-nya:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/mcpproxy.gpg] https://apt.mcpproxy.app stable main" 
| sudo tee /etc/apt/sources.list.d/mcpproxy.list >/dev/null

Update repository:

sudo apt update

2. Install MCPProxy

sudo apt install mcpproxy

Cek udah kepasang belum:

which mcpproxy
mcpproxy --version

Kalau bener, harusnya muncul path binary dan versinya, kayak MCPProxy v0.46.0 (personal) linux/amd64.

3. Jalankan Service-nya

sudo systemctl enable mcpproxy
sudo systemctl start mcpproxy

Cek statusnya:

systemctl status mcpproxy

Kalau nanti butuh restart atau stop:

sudo systemctl restart mcpproxy
sudo systemctl stop mcpproxy

4. Ganti Port Default ke 8004

Default-nya MCPProxy jalan di port 8080, tapi kalau port itu udah kepake service lain (kayak yang sering kejadian di server yang banyak service jalan bareng), kamu bisa gantiin. Edit file config-nya:

sudo nano /etc/mcpproxy/mcp_config.json

Cari baris ini:

"listen": "127.0.0.1:8080"

Ganti jadi:

"listen": "127.0.0.1:8004"

Simpan file, terus restart service-nya biar perubahannya kepake:

sudo systemctl restart mcpproxy

5. Verifikasi Port

Pastiin MCPProxy beneran dengerin di port 8004:

sudo ss -tulpn | grep :8004

Kalau bener, hasilnya kurang lebih kayak gini:

tcp LISTEN 0 4096 127.0.0.1:8004 users:(("mcpproxy",pid=12345))

6. Cek Status dan API Key

mcpproxy status

Buat nampilin API Key-nya (dibutuhin buat autentikasi Web UI nanti):

mcpproxy status --show-key

Output-nya bakal nampilin status, listen address, API key, link Web UI, sama endpoint MCP-nya. Simpen baik-baik API key-nya, jangan sampai ke-share ke orang lain.

7. Setup Reverse Proxy

Biar bisa diakses lewat domain sendiri (bukan cuma localhost), setup reverse proxy dengan konfigurasi kayak gini:

  • Domain: mcp.domainmu.com
  • Forward Host: 127.0.0.1
  • Forward Port: 8004

Aktifin SSL, WebSocket Support, dan HTTP/2 (opsional) di setting reverse proxy kamu.

Kalau kamu setup manual pakai Nginx (bukan lewat CloudPanel), pastiin header-header ini diteruskan, karena MCPProxy butuh WebSocket buat komunikasi real-time:

proxy_http_version 1.1;

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

proxy_buffering off;
proxy_request_buffering off;

8. Akses Web UI

Setelah semuanya jalan, buka:

https://mcp.domainmu.com/ui/

Kalau diminta autentikasi, pakai API Key yang tadi kamu dapetin dari mcpproxy status --show-key. Atau bisa juga langsung akses pakai parameter di URL:

https://mcp.domainmu.com/ui/?apikey=API_KEY_KAMU

Command yang Sering Dipakai

  • Cek status service: systemctl status mcpproxy
  • Restart service: systemctl restart mcpproxy
  • Lihat log real-time: journalctl -u mcpproxy -f
  • Cek status MCPProxy: mcpproxy status
  • Tampilin API key: mcpproxy status --show-key
  • Cek port yang dipakai: ss -tulpn | grep mcpproxy

Lokasi File Penting

  • Binary: /usr/bin/mcpproxy
  • Config: /etc/mcpproxy/mcp_config.json
  • Service systemd: /usr/lib/systemd/system/mcpproxy.service
  • Data: /var/lib/mcpproxy

Kendala yang Sering Muncul

  • Web UI gak bisa diakses lewat domain
    Cek lagi apakah header WebSocket (Upgrade/Connection) udah bener diteruskan di config reverse proxy, ini penyebab paling umum Web UI gak jalan meski service-nya aktif.
  • Port masih kebaca 8080 padahal udah diganti
    Pastiin kamu restart service setelah edit config, sekadar save file aja gak cukup buat apply perubahan.
  • API key gak kebaca / autentikasi selalu gagal
    Generate ulang key-nya dan pastiin gak ada spasi/karakter tambahan pas copy-paste ke parameter URL.
  • Service gagal start setelah update
    Cek log detail dengan journalctl -u mcpproxy -n 50, biasanya ada perubahan format config yang perlu disesuaikan manual antar versi.

Rekomendasi Buat Production

  • Pakai user database khusus dengan hak read-only kalau MCPProxy kamu konek ke database, jangan pakai akun admin/root.
  • Kasih akses ke view yang udah dirapikan, bukan langsung ke tabel aplikasi mentah.
  • Simpen semua view khusus AI dalam schema terpisah, misalnya ai, biar gampang di-manage dan di-audit.
  • Lindungin domain MCP kamu pakai HTTPS, dan kalau perlu tambahin autentikasi ekstra di level reverse proxy.
  • Update MCPProxy secara berkala:
sudo apt update
sudo apt upgrade mcpproxy

Penutup

Nah, segitu aja cara install dan setup MCPProxy di Ubuntu Server. Kalau kamu sering kerja bareng AI yang butuh akses ke banyak sumber data (database, tools internal, dll), tools kayak gini bikin semuanya lebih rapi karena dikelola dari satu tempat, gak perlu setup koneksi berulang-ulang di tiap aplikasi. Kalau ada yang error atau nyangkut, drop komentar aja bro.

Jundi Husni Mubaraq

Jundi Husni Mubaraq

Saya seorang software engineer yang sejak awal 2026 megang penuh (sendirian) tanggung jawab infrastruktur server di tempat saya kerja: deploy dan maintain server Linux Ubuntu on-premises, bangun keamanan berlapis pakai CrowdSec dan Cloudflare, kelola job scheduling dan monitoring pakai Cronicle, deploy aplikasi containerized pakai Docker, sampai ngurusin mail server korporat dari nol. Sebelumnya saya 3+ tahun jadi Software Engineer/Fullstack Developer di beberapa perusahaan, termasuk proyek skala internasional (EUDR compliance system buat Lindt & Sprungli) dan sistem rumah sakit (SIMRS, rekam medis elektronik, integrasi BPJS Kesehatan) di RS PKU Muhammadiyah Surakarta. jundi.hm ini tempat saya dokumentasiin apa yang beneran saya kerjain dan pelajarin di lapangan, bukan sekadar riset teori, S.Kom dari Universitas Duta Bangsa Surakarta jadi bekal awal, tapi yang nulis di sini adalah pengalaman langsung ngelola server production sehari-hari. Selengkapnya: https://iam.jundi.hm

Lihat Juga Nih

Selanjutnya Nih

Kasih Komentar

Email kamu gak bakal ditampilin ke publik. Kalau ada tanda ini artinya wajib diisi ya *

Rekomendasi.

Lagi Viral.