diff --git a/skills/index.json b/skills/index.json index 3e804ef12..32ac24d37 100644 --- a/skills/index.json +++ b/skills/index.json @@ -74,7 +74,7 @@ }, { "name": "wren-mcp-setup", - "version": "1.1", + "version": "1.2", "description": "Set up Wren Engine MCP server via Docker and register it with an AI agent.", "tags": [ "wren", diff --git a/skills/versions.json b/skills/versions.json index 804788cef..ef201657f 100644 --- a/skills/versions.json +++ b/skills/versions.json @@ -3,7 +3,7 @@ "wren-connection-info": "1.1", "wren-project": "1.4", "wren-sql": "1.0", - "wren-mcp-setup": "1.1", + "wren-mcp-setup": "1.2", "wren-quickstart": "1.0", "wren-usage": "1.0" } diff --git a/skills/wren-mcp-setup/SKILL.md b/skills/wren-mcp-setup/SKILL.md index 18bfd6c70..74718edc8 100644 --- a/skills/wren-mcp-setup/SKILL.md +++ b/skills/wren-mcp-setup/SKILL.md @@ -5,7 +5,7 @@ compatibility: Requires Docker Desktop (or Docker Engine). license: Apache-2.0 metadata: author: wren-engine - version: "1.1" + version: "1.2" --- # Set Up Wren MCP via Docker @@ -13,10 +13,10 @@ metadata: ## Version check Silently fetch `https://raw.githubusercontent.com/Canner/wren-engine/main/skills/versions.json`. -Compare the `wren-mcp-setup` key with this skill's version (`1.1`). +Compare the `wren-mcp-setup` key with this skill's version (`1.2`). If the remote version is newer, notify the user before proceeding: -> A newer version of the **wren-mcp-setup** skill is available (remote: X.Y, installed: 1.1). +> A newer version of the **wren-mcp-setup** skill is available (remote: X.Y, installed: 1.2). > Update with: > ```bash > curl -fsSL https://raw.githubusercontent.com/Canner/wren-engine/main/skills/install.sh | bash -s -- --force wren-mcp-setup @@ -50,6 +50,40 @@ Save the answer as `` (use the absolute path, e.g. `/Users/me/wr ## Step 2 — Prepare workspace and start the container +### Check for a newer image + +Before starting the container, verify whether a newer `wren-engine-ibis` image is available on the registry. + +**If the image has never been pulled** (first-time setup), just pull it: + +```bash +docker pull ghcr.io/canner/wren-engine-ibis:latest +``` + +**If the image already exists locally**, compare the local digest with the remote one to detect updates: + +```bash +# Save current local digest (empty string if image not present) +LOCAL_DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' ghcr.io/canner/wren-engine-ibis:latest 2>/dev/null || echo "") + +# Pull from registry (downloads only if remote digest differs) +docker pull ghcr.io/canner/wren-engine-ibis:latest + +# Compare digests +NEW_DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' ghcr.io/canner/wren-engine-ibis:latest 2>/dev/null || echo "") + +if [ "$LOCAL_DIGEST" != "$NEW_DIGEST" ]; then + echo "✓ New image pulled — container will use the updated version." +else + echo "✓ Already up to date. No update was needed." +fi +``` + +> **Note:** If a `wren-mcp` container is already running and a new image was pulled, stop and remove the old container before proceeding: +> ```bash +> docker rm -f wren-mcp +> ``` + The workspace directory is mounted at `/workspace` inside the container. The container auto-loads the MDL and connection info at startup if you provide `MDL_PATH` and `CONNECTION_INFO_FILE` pointing to files inside the workspace. **Recommended workspace layout:**