---
name: setup-wrenai-mcp
description: "Set up WrenAI MCP server connection. Detects Node.js, configures {{MCP_CONFIG_FILE}} with stdio proxy, and verifies the connection. Triggers on 'connect to wrenai', 'setup wrenai mcp', 'connect mcp', or 'wrenai mcp setup'."
---

## Setup WrenAI MCP Connection

Configures the current project to connect to a WrenAI MCP server so the AI can
query data, generate SQL, run queries, build charts, and provide business insights.

### When to Use

- User wants to connect to a WrenAI instance
- User says "connect to wrenai", "setup mcp", "connect mcp"
- User needs to query their data through WrenAI

---

### Step 1 — Gather connection info

Ask the user for:

1. **WrenAI URL** — e.g. `http://localhost:3000` or `https://app.getwren.ai`
2. **Project ID** — the numeric project ID (visible in the WrenAI URL)
3. **Authentication** — one of:
   - **API key** (`sk-...`) — recommended for most setups
   - **None** — local dev with `MCP_SKIP_AUTH=true` on the server

Construct the MCP endpoint: `{url}/api/mcp/{project_id}`

---

### Step 2 — Check Node.js >= 20

The stdio proxy requires Node.js >= 20 (for native `https` module ESM support). Find a suitable `node` binary:

```bash
node --version
```

If not found or version < 20, search common locations:
- `~/.nvm/versions/node/v2*/bin/node`
- `~/.volta/bin/node`
- `/usr/local/bin/node`
- `/opt/homebrew/bin/node`

If no Node.js >= 20 found, offer to install:
> You need Node.js >= 20 for the MCP proxy.
> - **nvm**: `nvm install 20`
> - **Direct**: download from https://nodejs.org

Record the **full absolute path** to `node` (e.g. `/Users/me/.nvm/versions/node/v20.20.1/bin/node`).

---

### Step 3 — Write MCP config

{{MCP_CONFIG_INSTRUCTIONS}}

---

### Step 4 — Verify & next steps

Tell the user:

{{VERIFY_INSTRUCTIONS}}

---

### Step 5 — Troubleshooting

If the connection fails:

| Issue | Fix |
|-------|-----|
| "Failed to reconnect" | Fully restart the agent — `/mcp` reconnect uses cached config |
| 401 Unauthorized | Check API key, or set `MCP_SKIP_AUTH=true` on the WrenAI server |
| Node.js version error | The proxy needs Node >= 20 — check the `command` path |
| Connection refused | Verify WrenAI is running at the specified URL |
| OAuth timeout (HTTP transport) | Do NOT use `type: "http"` — use the stdio proxy to bypass OAuth discovery |
| "Token expired without refresh token" | Remove any stale server config from `~/.claude.json` with `claude mcp remove wrenai -s local` |

{{DESKTOP_CONFIG}}
