OXYGENOxygen/ Docs
Surfaces

Claude Desktop

Connect Claude Desktop to Oxygen's hosted MCP server — an MCP-Apps host that renders Oxygen's ui:// widgets inline.

Claude Desktop has no terminal, so it drives Oxygen entirely through the hosted MCP connector. It is an MCP-Apps host, so Oxygen's ui:// widgets render there — table previews, run timelines, provider and cost breakdowns show up inline alongside the JSON result.

What works here

CapabilityClaude Desktop
Hosted MCP connector (OAuth)Yes — the only surface
ui:// widgetsYes — rendered inline
oxygen CLI in a terminalNo — Claude Desktop has no shell; use Claude Code for the CLI
Agent skillsNot applicable — skills teach terminal CLI agents; Claude Desktop reads the MCP tool descriptors directly

Setup

  1. Open Settings → Connectors and add a custom connector.
  2. Point it at the hosted server. Because Claude Desktop lists all tools inline and has no tool search, add the core profile so ~40 golden-path tools load instead of the several hundred in the full registry:
https://oxygen-agent.com/mcp?toolset=core
  1. Sign in when the OAuth flow opens. Then ask Claude to call oxygen_whoami. If your account has more than one organization, ask it to call oxygen_orgs_select with the org slug.

?toolset=core only trims what is advertised — every other tool stays callable by exact name, and Claude can discover any of them with oxygen_capabilities_search. Drop the parameter (or use ?toolset=full) to advertise the whole registry.

Verify your setup

Ask Claude to run these read-only tool calls (they do not spend credits):

  • oxygen_whoami — returns your user email and the active organization.name, plus an onboarding block. If onboarding.complete is false, load workspace context before paid work.
  • oxygen_capabilities_search with a query like find company emails — returns ranked tool matches, each flagged read_only, paid, and in_core. A non-empty ranked list confirms the connector is live and searchable.

You should also see widgets render: ask Claude to call oxygen_tables_list or oxygen_billing_balance and confirm a visual card appears next to the text result.

Cost and approval posture

Read and dry-run tools (oxygen_tools_run_dry, table/context/billing reads) never spend credits; the paid tools (oxygen_tools_run_live, oxygen_columns_run on paid columns, enrichment, external writes) run only after you approve the row scope and credit ceiling. See Approvals and Spend caps.

Known limitations

  • No terminal means no CLI, no local file imports, and no scripting — for bulk file work use oxygen_cli_file_import_prepare, which hands back a local oxygen tables import ... --background command to run on a machine that has the CLI.
  • The connector requires OAuth with dynamic client registration; a first-run failure usually means the OAuth handshake did not complete.
  • Without ?toolset=core, the full tool list can crowd Claude Desktop's context — prefer the core profile and let oxygen_capabilities_search surface the rest.

On this page