refactor: wire Open WebUI → Kiro Gateway + mcpo, add Reltio Forge spec

- docker-compose: 3 services (gateway, mcpo, webui) with proper wiring
- Open WebUI connects to Kiro Gateway for LLM, mcpo for MCP tools
- TOOL_SERVER_CONNECTIONS auto-discovers Jira, Aha, Context7
- Simplified mcporter.json (env vars from container, not JSON)
- env.example consolidated with all keys
- SETUP.md rewritten with architecture diagram
- Pipelines deprecated (mcpo replaces custom Python shims)
- Added docs/reltio-forge.md
This commit is contained in:
Max Mayfield
2026-03-03 13:29:43 +00:00
parent 93ad572b8d
commit a2d7dab296
5 changed files with 121 additions and 70 deletions

View File

@@ -1,6 +1,7 @@
services:
# --- Kiro Gateway (OpenAI-compatible LLM proxy) ---
gateway:
image: ghcr.io/jwadow/kiro-gateway:latest
image: ghcr.io/openclaw/openclaw:latest
container_name: pm-gateway
env_file:
- .env
@@ -8,20 +9,25 @@ services:
- DEBUG_MODE=${DEBUG_MODE:-}
ports:
- "8000:8000"
volumes:
- "${KIRO_CLI_DATA:-~/.local/share/kiro-cli}:/home/kiro/.local/share/kiro-cli:ro"
restart: unless-stopped
# --- mcpo (MCP → OpenAPI proxy for tool servers) ---
mcpo:
image: ghcr.io/open-webui/mcpo:latest
container_name: pm-mcpo
command: --config /config/mcporter.json --port 3001
env_file:
- .env
environment:
# aha-mcp expects AHA_API_TOKEN, .env uses AHA_API_KEY
- AHA_API_TOKEN=${AHA_API_KEY:-}
command: --host 0.0.0.0 --port 3001 --config /config/mcporter.json
ports:
- "3001:3001"
volumes:
- ./config/mcporter.json:/config/mcporter.json:ro
restart: unless-stopped
# --- Open WebUI (browser UI for non-technical PMs) ---
webui:
image: ghcr.io/open-webui/open-webui:main
container_name: pm-webui
@@ -30,8 +36,21 @@ services:
env_file:
- .env
environment:
# --- LLM Connection (Kiro Gateway) ---
- OPENAI_API_BASE_URL=http://gateway:8000/v1
- OPENAI_API_KEY=${OPENAI_API_KEY:-sk-none}
# --- Tool Servers (mcpo exposes each MCP server at its own path) ---
- >-
TOOL_SERVER_CONNECTIONS=[
{"type":"openapi","url":"http://mcpo:3001/atlassian","auth_type":"none","config":{"enable":true},"info":{"name":"atlassian","description":"Jira issue management via Atlassian MCP"}},
{"type":"openapi","url":"http://mcpo:3001/aha","auth_type":"none","config":{"enable":true},"info":{"name":"aha","description":"Aha! roadmap and epic management"}},
{"type":"openapi","url":"http://mcpo:3001/context7","auth_type":"none","config":{"enable":true},"info":{"name":"context7","description":"Library documentation lookup"}}
]
# --- Admin auto-setup (skip manual signup on first run) ---
- WEBUI_ADMIN_EMAIL=${WEBUI_ADMIN_EMAIL:-admin@reltio.com}
- WEBUI_ADMIN_PASSWORD=${WEBUI_ADMIN_PASSWORD:-}
# --- Disable persistent config so env vars always win ---
- ENABLE_PERSISTENT_CONFIG=false
volumes:
- webui-data:/app/backend/data
- ./openwebui/custom.css:/app/backend/open_webui/static/custom.css