Synaplan Multimodal Gateway
resmiMenawarkan fungsionalitas lengkap dari server Open Source sebagai contoh MCP
Apa yang bisa Anda lakukan dengan Synaplan Multimodal Gateway MCP?
- Cari basis pengetahuan RAG Anda — Ajukan pertanyaan terhadap dokumen yang Anda unggah dan dapatkan jawaban yang didasarkan pada konten Anda sendiri melalui titik akhir
POST /mcp. - Ambil memori AI — Kueri profil pengguna dan konteks tersimpan yang telah ditangkap oleh Synaplan, yang diekspos sebagai alat melalui server MCP.
- Hubungkan server MCP eksternal — Tambahkan layanan kompatibel MCP Anda sendiri (CRM, wiki, n8n) di bawah Saluran sehingga perencana AI dapat menarik data langsung dari layanan tersebut.
- Proses permintaan multi-langkah — Uraikan tugas kompleks menjadi grafik langkah-langkah (ekstrak, rangkum, hasilkan) yang mengalirkan kartu kemajuan langsung saat dijalankan.
Dokumentasi
Synaplan
Manajemen pengetahuan bertenaga AI dengan RAG, widget obrolan, dan integrasi multi-saluran.
Instans langsung: web.synaplan.com | Dokumentasi: docs.synaplan.com | API: Swagger UI
Prasyarat
- Docker + Docker Compose v2 (Docker Desktop di macOS/Windows, atau Docker Engine + plugin Compose di Linux)
- Git
- RAM minimal 8 GB (16 GB direkomendasikan untuk instalasi standar AI lokal)
- ~9 GB ruang disk kosong untuk instalasi standar (~5 GB untuk minimal)
- Port TCP bebas
5173,8000,8082,8025,3307,6333,11435
Mac Apple Silicon (M1–M4): Gambar kontainer Synaplan dipublikasikan untuk
linux/amd64, sehingga berjalan di bawah emulasi di Apple Silicon. Di Docker Desktop → Pengaturan → Umum, aktifkan "Gunakan Rosetta untuk emulasi x86/amd64 di Apple Silicon" (macOS 13+) untuk kontainer yang jauh lebih cepat dan stabil dibandingkan QEMU bawaan. Semuanya berfungsi tanpanya — hanya lebih lambat, dan build pertama memakan waktu lebih lama.
Mulai Cepat
git clone https://github.com/metadist/synaplan.git
cd synaplan
docker compose up -d
Buka http://localhost:5173 — UI siap dalam ~2 menit. Dengan instalasi standar, model Ollama lokal (gpt-oss:20b, bge-m3, total ~14 GB) terus mengunduh di latar belakang — obrolan yang menggunakan AI lokal akan mulai berfungsi setelah unduhan selesai (docker compose logs -f backend menunjukkan progres). Untuk pengalaman pertama tercepat, gunakan instalasi Minimal di bawah.
Opsi Instalasi
| Mode | Perintah | Ukuran | Terbaik Untuk |
|---|---|---|---|
| Standar | docker compose up -d | ~9 GB | Fitur lengkap, AI lokal |
| Minimal | docker compose -f docker-compose-minimal.yml up -d | ~5 GB | Hanya AI cloud (Groq/OpenAI) |
Untuk instalasi minimal, atur kunci API Anda sebelum memulai tumpukan agar boot pertama sudah melihatnya (menghindari restart). Dapatkan kunci gratis di console.groq.com:
echo "GROQ_API_KEY=your_key" >> backend/.env
docker compose -f docker-compose-minimal.yml up -d
Sudah dimulai tanpa kunci? Tambahkan dan mulai ulang backend:
echo "GROQ_API_KEY=your_key" >> backend/.env && docker compose restart backend
Akses
| Layanan | URL |
|---|---|
| Aplikasi | http://localhost:5173 |
| API | http://localhost:8000 |
| Dok API | http://localhost:8000/api/doc |
| phpMyAdmin | http://localhost:8082 |
| MailHog | http://localhost:8025 |
Kredensial Login Bawaan:
| Kata Sandi | Level | |
|---|---|---|
| admin@synaplan.com | admin123 | ADMIN |
| demo@synaplan.com | demo123 | PRO |
| test@example.com | test123 | BARU (belum terverifikasi) |
Fitur
- Obrolan AI — Ollama, OpenAI, Anthropic, Groq, Gemini
- Perutean Multi-Tugas — Perencana AI menguraikan permintaan kompleks menjadi grafik tugas (ekstrak → ringkas → hasilkan → balas) dan mengalirkan kartu tugas langsung saat langkah-langkah dijalankan
- Pencarian RAG — Pencarian dokumen semantik dengan MariaDB VECTOR atau Qdrant
- Widget Obrolan — Sematkan di situs web mana pun (panduan widget)
- Dukungan Langsung — Lapisan WebSocket waktu nyata (Centrifugo + Redis): pengambilalihan obrolan widget oleh manusia, indikator pengetikan, notifikasi operator (panduan waktu nyata)
- WhatsApp — Integrasi Meta Business API
- Email — Balasan email bertenaga AI
- Audio — Transkripsi Whisper (input) + opsional synaplan-tts (output)
- Dokumen — PDF, Word, Excel, gambar dengan OCR
- Memori AI — Pembuatan profil pengguna dengan pencarian vektor Qdrant
- Sistem Umpan Balik — Penangkapan dan analisis umpan balik didukung oleh Qdrant
- Plugin — Sistem plugin non-invasif (panduan plugin)
- Server MCP (akses awal) — Hubungkan klien AI (Claude, Cursor, …) melalui Model Context Protocol; RAG dan memori Anda menjadi alat di
POST /mcp(panduan MCP) - Klien MCP (akses awal) — Hubungkan server MCP Anda (CRM, wiki, n8n, …) di bawah Saluran → Server MCP; perencana multi-tugas menarik data langsung dari mereka melalui node DAG
mcp_fetch— hanya baca, dijaga SSRF, ikut serta per topik. Diaktifkan oleh flagBCONFIGyang diunggulkan (MCP.CLIENT_ENABLED,MULTITASK.MCP_FETCH_ENABLED—app:seedmengatur mereka ON saat deploy; baris0eksplisit adalah saklar pemutus operator). Lihat docs/MULTITASK_DATA_NODES.md
Basis Data Vektor Qdrant
Qdrant berjalan sebagai layanan Docker internal — tidak perlu konfigurasi. Ini mendukung memori AI, pencarian dokumen RAG, dan sistem umpan balik.
Mulai otomatis dengan docker compose up -d. Synaplan berfungsi penuh tanpanya (memori dan pencarian vektor akan dinonaktifkan).
Waktu Nyata & Pemrosesan Latar Belakang
Kedua file compose juga memulai tiga layanan internal (tanpa port host, tanpa perlu pengaturan):
| Layanan | Peran |
|---|---|
redis | Infrastruktur bersama wajib: cache, sesi, kunci, batas laju, antrean pesan (Redis Streams), mesin Centrifugo |
centrifugo | Gateway WebSocket untuk fitur waktu nyata (pengambilalihan obrolan langsung, indikator pengetikan, notifikasi operator) — browser terhubung same-origin melalui /connection/websocket |
worker | Konsumen Symfony Messenger yang menjalankan pekerjaan async (pemrosesan AI, pengindeksan dokumen, perayapan widget) |
Dalam kluster multi-node semua node berbagi satu Redis, sehingga peristiwa WebSocket yang dipublikasikan di satu node mencapai browser yang terhubung ke node lain. Detail: docs/REALTIME.md.
Text-to-Speech (Opsional)
Untuk output suara, jalankan synaplan-tts bersama Synaplan:
git clone https://github.com/metadist/synaplan-tts.git && cd synaplan-tts && docker compose up -d
Perintah Umum
# Logs
docker compose logs -f backend
# Restart
docker compose restart backend
# Reset database
docker compose down -v && docker compose up -d
# Run tests
make test
# Code quality
make lint
Dokumentasi
Dokumentasi untuk pengguna & API tersedia di docs.synaplan.com. Sumber: metadist/synaplan-docs.
Panduan dalam repositori (untuk pengembang yang mengerjakan basis kode ini):
| Panduan | Deskripsi |
|---|---|
| Instalasi | Petunjuk pengaturan terperinci |
| Konfigurasi | Variabel lingkungan, kunci API |
| Pengembangan | Perintah, pengujian, arsitektur |
| Waktu Nyata / WebSocket | Lapisan waktu nyata Centrifugo + Redis, deployment multi-node |
| Sistem RAG | Pencarian dan pemrosesan dokumen |
| Widget Obrolan | Sematkan obrolan di situs web |
| Pengaturan Meta Business API | |
| Integrasi saluran email |
Repositori Terkait
| Repo | Tujuan |
|---|---|
| synaplan | Aplikasi utama (repo ini) |
| synaplan-docs | Situs dok publik (docs.synaplan.com) |
| synaplan-tts | Layanan Piper TTS opsional |
| synaplan-sortx | Plugin penyortiran dokumen + alat lokal |
| synaplan-charts | Helm charts untuk Kubernetes |
| synaplan-platform | Konfigurasi deployment produksi |
Struktur Proyek
synaplan/
├── backend/ # Symfony PHP API
├── frontend/ # Vue.js SPA
├── docs/ # Documentation
├── _docker/ # Docker configs
└── plugins/ # Plugin system
Berkontribusi
Lihat AGENTS.md untuk pedoman pengembangan dan standar kode.
