这是一个基于事件的多租户实时向量搜索自动同步服务。它借助 Supabase 进行数据存储,利用 OpenAI 来提供向量生成能力,能高效、稳定地处理多租户的向量同步需求。
proyectos
和 proyecto_vector
表npm install
.env
文件,包含所有必要的环境变量。npm run dev
使用 Docker 构建和运行服务:
# 构建镜像
docker build -t mcp-vector-sync .
# 启动容器
docker run -p 3000:3000 --env-file .env mcp-vector-sync
或使用 Docker Compose:
docker-compose up
系统采用基于事件的架构设计:
webhook_logs
表中,便于调试和监控。服务通过环境变量进行配置:
# Supabase 配置
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
# OpenAI 配置
OPENAI_API_KEY=你的 OpenAI API 密钥
OPENAI_MODEL=text-embedding-ada-002
# 限流配置
RATE_LIMIT_PER_TENANT=100
CONCURRENT_REQUESTS=5
# 日志记录
LOG_LEVEL=info
Webhook 数据格式
{
"event": "sync_project",
"data": {
"tenant_id": "string",
"project_id": "string",
"timestamp": "2025-03-22T17:45:00Z"
}
}
服务提供以下 MCP 工具:
sync-tenant
:强制同步指定租户的数据。get-sync-status
:获取租户的同步状态。control-monitor
:启动或停止同步监控服务。webhook_logs
表中的日志信息。LOG_LEVEL=debug
获取更多信息。package.json
中的版本号。