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 it shows the Table widget: when Claude previews a table or a company search, the rows appear in the conversation as the same grid as the Oxygen web app, and Expand opens all of it.
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 reaches every other tool without reconnecting: oxygen_capabilities_search finds it, oxygen_capabilities_schema returns its arguments, and oxygen_capabilities_read (read-only tools) or oxygen_capabilities_call (anything else) runs it by name with that tool's own previews, spend caps and approvals. A domain pack (?toolset=<pack>) still lists a pack's tools natively if you prefer. 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 preview one of your tables (for example "show me a preview of my Leads table"). The Table widget appears under Claude's answer with the table's first rows, Expand and Open in OXYGEN.
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.