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: Oxygen's ui:// widgets render inline — table previews, run timelines, provider and cost breakdowns — alongside the JSON result.
What works here
| Capability | Claude Desktop |
|---|---|
| Hosted MCP connector (OAuth) | Yes — the only surface |
ui:// widgets | Yes — rendered inline |
oxygen CLI in a terminal | No — Claude Desktop has no shell; use Claude Code for the CLI |
| Agent skills | Not applicable — skills teach terminal CLI agents; Claude Desktop reads the MCP tool descriptors directly |
Setup
- Open Settings → Connectors and add a custom connector.
- Point it at the hosted server. Claude Desktop lists every advertised tool inline and has no tool search, so use the core profile rather than the full registry:
https://oxygen-agent.com/mcp?toolset=core- 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 calloxygen_orgs_selectwith the org slug.
?toolset=core trims what is advertised, and a bare URL selects the same core profile. Claude can still discover the rest with oxygen_capabilities_search; each result carries its toolset_pack. If the client refuses an unadvertised exact name, reconnect with that pack, or with explicit ?toolset=full for an automation that genuinely spans the registry. The MCP tool reference lists every tool, its pack, and which tools core advertises.
Verify your setup
Ask Claude to run these read-only tool calls (they spend no credits):
oxygen_whoami— returns your user email and the activeorganization.name, plus anonboardingblock. Ifonboarding.completeisfalse, load workspace context before paid work.oxygen_capabilities_searchwith a query likefind company emails— returns ranked tool matches, each flaggedread_only,paid, andin_core. A non-empty ranked list confirms the connector is live and searchable.
To confirm widgets render, ask Claude to call oxygen_tables_list or oxygen_billing_balance and check that 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 localoxygen tables import ... --backgroundcommand 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.
?toolset=fullcrowds Claude Desktop's context — prefer core or the returned domain pack.