使用说明
Fleet Orion——MCP服务器Monrepo
pnpm工作区+托管所有@mcpkit MCP服务器的Turborepo monorepo。
存储库结构
mcp-servers/
├── packages/
│ ├── mcp-vessel-tracker/ ← Vessel position & fleet listing
│ ├── mcp-port-analytics/ ← Report summaries & overdue tracking
│ ├── mcp-alerts-service/ ← Per-tenant alert executions & rules
│ └── mcp-technical-advisory/ ← PDF technical advisory RAG over GCS + PageIndex
├── shared/
│ ├── utils/ ← Logger, errors, env helpers, MongoDB/PostgreSQL clients
│ └── tsconfig/ ← Shared TypeScript base config
├── .github/
│ ├── workflows/ci.yml ← Turbo affected CI + Docker matrix
│ └── CODEOWNERS ← Per-package code ownership
├── .changeset/ ← Independent versioning
├── pnpm-workspace.yaml
├── turbo.json
└── package.json
快速开始
# 1. Install all packages
pnpm install
# 2. Build everything
pnpm build
# 3. Build only one server
pnpm turbo run build --filter=@mcpkit/mcp-vessel-tracker
# 4. Dev mode (watch) for one server
pnpm turbo run dev --filter=@mcpkit/mcp-vessel-tracker
环境变量
复制 .env.example 到 .env 在每个包目录中:
cp .env.example packages/mcp-vessel-tracker/.env
| 变量 | 使用人 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
MONGO_URI |
mcp-vessel-tracker, mcp-port-analytics |
✅ | — | MongoDB连接字符串 |
DB_NAME |
mcp-vessel-tracker, mcp-port-analytics |
❌ | fo-shore |
MongoDB数据库名称 |
EMISSION_ENGINEER_POSTGRES_URL |
mcp-emission-engineer |
✅ | — | 排放工作流的基本PostgreSQL URL |
ALERTS_SERVICE_POSTGRES_URL |
mcp-alerts-service |
✅ | — | PostgreSQL基本URL;每个工具都将数据库路径与请求的路径进行交换 tenant |
PAGEINDEX_API_KEY |
mcp-technical-advisory |
✅ | — | 用于PageIndex文档索引和聊天的API密钥 |
GCS_BUCKET_NAME |
mcp-technical-advisory |
✅ | — | 包含PDF源文档的Google Cloud Storage存储桶 |
TECHNICAL_ADVISORY_GCS_PREFIX |
mcp-technical-advisory |
❌ | — | 使用的可选默认GCS对象前缀 index_all_pdfs |
GOOGLE_APPLICATION_CREDENTIALS |
mcp-technical-advisory |
⚠️ 通常 | -- | 本地/自托管部署的GCP服务帐户JSON文件的绝对路径 |
GEMINI_API_KEY |
mcp-technical-advisory |
❌ | — | 可选回退键(如果PageIndex帐户配置需要) |
TECHNICAL_ADVISORY_HOST |
mcp-technical-advisory |
❌ | 0.0.0.0 |
HTTP MCP服务器的主机接口 |
TECHNICAL_ADVISORY_PORT |
mcp-technical-advisory |
❌ | 3000 |
HTTP MCP服务器的端口 |
LOG_LEVEL |
所有服务 | ❌ | info |
debug / info / warn / error |
添加新的MCP服务器
# 1. Copy the template
cp -r packages/mcp-vessel-tracker packages/mcp-new-server
# 2. Update name in packages/mcp-new-server/package.json
# 3. Re-install to register the workspace package
pnpm install
# 4. Build
pnpm turbo run build --filter=@mcpkit/mcp-new-server
版本控制和发布
# Create a changeset
pnpm changeset
# Bump versions
pnpm changeset version
# Publish (if using a registry)
pnpm changeset publish
CI/CD
- 拉取请求:Turbo仅构建受影响的软件包(
--filter=[HEAD^1]) - 主枝:通过矩阵策略为每个包构建Docker镜像
- 每个Dockerfile monorepo是否支持多阶段构建,以实现最小的图像大小