---
name: plungeai-in-claude-ai
description: "Connect claude.ai web or Claude Desktop to PlungeAI (Ocean Studio) — Desktop live tools via the mcp-remote bridge in claude_desktop_config.json (OAuth isn't available yet, hence the bridge), claude.ai web via skill.zip upload, and a plungeai_whoami + plungeai_list_agents verify for Desktop. Use when the user is on claude.ai or Claude Desktop and says connect / install / set up PlungeAI, mentions claude_desktop_config.json, Customize → Skills, or a PlungeAI tool call there is failing. For the Claude Code CLI use plungeai-in-claude-code; for an unlisted but MCP-capable client use plungeai-mcp-setup's generic client config."
---

# PlungeAI in claude.ai and Claude Desktop

Two different surfaces, two different capabilities:

| Surface | What it gets |
|---|---|
| **Claude Desktop** | live `plungeai_*` MCP tools, via a bridge (below) |
| **claude.ai (web)** | a PlungeAI *skill* upload — Claude produces paste-ready CNL workflows for Ocean Studio, not live tool calls (claude.ai has no custom-connector bearer-header field yet) |

## Prerequisites

- An `ozk_` key: Dashboard → **One API → Keys** (https://dashboard.plungeai.com) —
  self-service, shown once, copy it now.
- Desktop only: Node.js installed (the bridge runs via `npx`).

## Connect (once) — Claude Desktop

**Why a bridge:** Settings → Connectors → Add custom connector authenticates
through OAuth only (no bearer-header field), and PlungeAI OAuth hasn't
shipped. Until it does, Desktop connects through the `mcp-remote` stdio
bridge.

Settings → Developer → **Edit Config** opens the file — macOS
`~/Library/Application Support/Claude/claude_desktop_config.json`, Windows
`%APPDATA%\Claude\claude_desktop_config.json`. Merge:

    {
      "mcpServers": {
        "plungeai": {
          "command": "npx",
          "args": ["-y", "mcp-remote", "https://mcp.plungeai.com/v1",
                   "--header", "Authorization: Bearer ozk_YOUR_KEY"]
        }
      }
    }

Quit Claude Desktop completely and relaunch — the config is only read at
start.

## Connect (once) — claude.ai web (skill only)

Needs code execution enabled first: **Settings → Capabilities** → turn on
**Code execution and file creation** (a prerequisite for any custom skill
upload, not PlungeAI-specific). Then **Customize → Skills → + → Upload a
skill** — upload https://mcp.plungeai.com/skill.zip. This teaches Claude
PlungeAI conventions; it does not give claude.ai a live MCP connection.

## Verify (Claude Desktop)

1. Ask Claude: "use plungeai_whoami to confirm my identity" → an identity
   card (user id, auth tier, key label, rate window, server).
2. "use plungeai_list_agents to search 'web search'" → live results from the
   active agent catalog.

claude.ai web has no live tool call to verify — a successfully uploaded skill
is the only signal; ask Claude to draft a PlungeAI CNL workflow to confirm it
loaded.

## Quirks

- **Windows:** Desktop does not escape spaces inside `args` — if the bridge
  401s only on Windows, replace the header arg with
  `"--header", "Authorization:${AUTH_HEADER}"` plus
  `"env": { "AUTH_HEADER": "Bearer ozk_YOUR_KEY" }` in the same entry.
- Logs: `~/Library/Logs/Claude/mcp*.log` (macOS) ·
  `%APPDATA%\Claude\logs` (Windows) — check these before re-editing the
  config.
- The bridge is an `npx` process — a cold start can take a few seconds; if
  tools "never appear," wait, then check the logs above.
- Long CNL workflow runs: prefer `mode: "async"` +
  `plungeai_get_workflow_status` polling — Desktop caps a single synchronous
  tool call.
- Money-verb operations (payments, sends) still stop: a gated call pauses
  with a structured `needs_approval` outcome — relay it to the user, then
  `plungeai_continue`; never retry blind.
- 401 through the bridge but the key looks right → whitespace or a missing
  `ozk_` prefix; re-paste it into the config.

## Where next

- The Claude Code CLI instead of Desktop/web: **plungeai-in-claude-code**.
- Operating the `plungeai_*` tools once connected: **plungeai-mcp-setup**.
- Writing code that calls `https://api.plungeai.com` directly: **plungeai-api-setup**.
- Picking MCP vs the One API for a given job: **choose-your-plungeai-door**.
- An unlisted but MCP-capable client, or the shared connect concepts (native
  remote vs. stdio bridge, key hygiene): **plungeai-mcp-setup**.
