Synaplan Multimodal Gateway

官方

提供开源服务器的完整功能,作为MCP示例

你可以用 Synaplan Multimodal Gateway 做什么?

  • Query RAG knowledge base — Ask questions against your uploaded documents and get AI answers grounded in your own content via POST /mcp.
  • Retrieve AI memories — Look up user profiles and interaction history stored in Qdrant vector search through the MCP endpoint.
  • Decompose complex requests — Submit multi-step tasks that the AI planner breaks into a task graph (extract, summarize, generate) and streams back live progress.
  • Manage chat channels — Connect and configure WhatsApp, email, or embedded chat widgets for multi-channel AI-powered conversations.
  • Connect external MCP servers — Register your own MCP servers under Channels so the multi-task planner can pull live data from them via mcp_fetch nodes.

文档

Synaplan

基于人工智能的知识管理,支持 RAG、聊天小部件和多渠道集成。

License

在线实例web.synaplan.com  |  文档docs.synaplan.com  |  APISwagger UI

Synaplan Dashboard


前提条件

  • Docker + Docker Compose v2(macOS/Windows 上的 Docker Desktop,或 Linux 上的 Docker Engine + Compose 插件)
  • Git
  • 至少 8 GB 内存(本地 AI 标准安装建议 16 GB)
  • 标准安装约需 9 GB 可用磁盘空间(最小安装约需 5 GB)
  • 空闲 TCP 端口 51738000808280253307633311435

Apple Silicon(M1–M4)Mac: Synaplan 的容器镜像针对 linux/amd64 发布,因此在 Apple Silicon 上通过模拟运行。在 Docker Desktop → 设置 → 通用 中,启用 “在 Apple Silicon 上使用 Rosetta 进行 x86/amd64 模拟”(macOS 13+),可获得比默认 QEMU 更快、更稳定的容器体验。不启用也能正常运行——只是速度较慢,且首次构建耗时更长。

快速开始

git clone https://github.com/metadist/synaplan.git
cd synaplan
docker compose up -d

打开 http://localhost:5173 —— 用户界面约 2 分钟就绪。使用标准安装时,本地 Ollama 模型(gpt-oss:20bbge-m3,总计约 14 GB)会在后台继续下载——使用本地 AI 的聊天功能将在下载完成后可用(docker compose logs -f backend 显示进度)。如需最快的首次体验,请使用下方的最小安装


安装选项

模式命令大小适用场景
标准docker compose up -d~9 GB完整功能,本地 AI
最小docker compose -f docker-compose-minimal.yml up -d~5 GB仅云端 AI(Groq/OpenAI)

对于最小安装,请在启动服务栈之前设置您的 API 密钥,以便首次启动即可识别(避免重启)。在 console.groq.com 获取免费密钥:

echo "GROQ_API_KEY=your_key" >> backend/.env
docker compose -f docker-compose-minimal.yml up -d

已启动但未设置密钥?添加密钥并重启后端:

echo "GROQ_API_KEY=your_key" >> backend/.env && docker compose restart backend

访问入口

服务URL
应用http://localhost:5173
APIhttp://localhost:8000
API 文档http://localhost:8000/api/doc
phpMyAdminhttp://localhost:8082
MailHoghttp://localhost:8025

默认登录凭据:

邮箱密码级别
[email protected]admin123管理员
[email protected]demo123专业版
[email protected]test123新用户(未验证)

功能特性

  • AI 聊天 — Ollama、OpenAI、Anthropic、Groq、Gemini
  • 多任务路由 — AI 规划器将复杂请求分解为任务图(提取 → 摘要 → 生成 → 回复),并在步骤执行时实时流式传输任务卡片
  • RAG 搜索 — 使用 MariaDB VECTOR 或 Qdrant 进行语义文档搜索
  • 聊天小部件 — 嵌入任何网站(小部件指南
  • 实时支持 — 实时 WebSocket 层(Centrifugo + Redis):人工接管小部件聊天、输入状态提示、操作员通知(实时指南
  • WhatsApp — Meta Business API 集成
  • 邮件 — AI 驱动的邮件回复
  • 音频 — Whisper 转录(输入)+ 可选的 synaplan-tts(输出)
  • 文档 — PDF、Word、Excel、带 OCR 的图像
  • AI 记忆 — 基于 Qdrant 向量搜索的用户画像
  • 反馈系统 — 由 Qdrant 驱动的反馈采集与分析
  • 插件 — 非侵入式插件系统(插件指南
  • MCP 服务器 (早期访问) — 通过模型上下文协议连接 AI 客户端(Claude、Cursor 等);您的 RAG 和记忆将成为 POST /mcp 上的工具(MCP 指南
  • MCP 客户端 (早期访问) — 在 频道 → MCP 服务器 下连接您的 MCP 服务器(CRM、wiki、n8n 等);多任务规划器通过 mcp_fetch DAG 节点从中拉取实时数据——只读、SSRF 防护、按主题选择加入。由预设的 BCONFIG 标志启用(MCP.CLIENT_ENABLEDMULTITASK.MCP_FETCH_ENABLEDapp:seed 在部署时将其设置为开启;显式的 0 行是操作员的终止开关)。详见 docs/MULTITASK_DATA_NODES.md

Qdrant 向量数据库

Qdrant 作为内部 Docker 服务运行——无需配置。它为 AI 记忆、RAG 文档搜索和反馈系统提供支持。

docker compose up -d 自动启动。没有它 Synaplan 也能完全正常工作(记忆和向量搜索将被禁用)。


实时与后台处理

两个 compose 文件也会启动三个内部服务(无主机端口,无需设置):

服务角色
redis必需的共享基础设施:缓存、会话、锁、速率限制、消息队列(Redis Streams)、Centrifugo 引擎
centrifugo用于实时功能的 WebSocket 网关(实时聊天接管、输入状态提示、操作员通知)——浏览器通过 /connection/websocket 同源连接
workerSymfony Messenger 消费者,执行异步作业(AI 处理、文档索引、小部件爬取)

在多节点集群中,所有节点共享一个 Redis,因此在一个节点上发布的 WebSocket 事件可以到达连接到任何其他节点的浏览器。详情:docs/REALTIME.md


文本转语音(可选)

如需语音输出,请在 Synaplan 旁边运行 synaplan-tts

git clone https://github.com/metadist/synaplan-tts.git && cd synaplan-tts && docker compose up -d

常用命令

# 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

文档

面向用户和 API 的文档位于 docs.synaplan.com。源码:metadist/synaplan-docs

仓库内指南(面向在此代码库上工作的开发者):

指南描述
安装详细设置说明
配置环境变量、API 密钥
开发命令、测试、架构
实时 / WebSocketCentrifugo + Redis 实时层,多节点部署
RAG 系统文档搜索与处理
聊天小部件在网站上嵌入聊天
WhatsAppMeta Business API 设置
邮件邮件渠道集成

相关仓库

仓库用途
synaplan主应用(本仓库)
synaplan-docs公共文档站点(docs.synaplan.com)
synaplan-tts可选的 Piper TTS 服务
synaplan-sortx文档排序插件 + 本地工具
synaplan-charts用于 Kubernetes 的 Helm charts
synaplan-platform生产部署配置

项目结构

synaplan/
├── backend/        # Symfony PHP API
├── frontend/       # Vue.js SPA
├── docs/           # Documentation
├── _docker/        # Docker configs
└── plugins/        # Plugin system

贡献

有关开发指南和代码标准,请参阅 AGENTS.md


许可证

Apache-2.0