OXYGENOxygen/ Docs
Surfaces

Cursor

Run Oxygen from Cursor — the CLI in Cursor's integrated terminal, with agent skills.

The verified path is the oxygen CLI in Cursor's integrated terminal, with agent skills installed for Cursor. Cursor also supports MCP servers, but Oxygen's hosted connector has not been tested end to end with Cursor — see Known limitations before relying on it.

What works here

CapabilityCursor
oxygen CLI in Cursor's terminalYes — the verified surface
Agent skills (--agents cursor)Yes — installed into ~/.cursor/skills
Hosted MCP connector (OAuth)Untested — the endpoint exists but we have not verified Cursor's remote-OAuth flow
ui:// widgetsUntested — treat as unavailable until verified

Setup — CLI

Run these in Cursor's integrated terminal:

npm install -g @oxygen-agent/cli
oxygen login
oxygen skills install --agents cursor --json

Requires Node.js >=22.22.0 and npm >=10.9.0. oxygen login opens a browser and stores credentials for the active profile. oxygen skills install writes the Oxygen skills into ~/.cursor/skills (context first, table first, dry run before live, inspect runs after) and installs every skill unless you pass --skill <name>.

For non-interactive use, authenticate with a token instead:

oxygen api-keys create --name "cursor" --json
oxygen auth use-token --token <token> --json

Verify your setup

These are read-only and spend no credits:

oxygen status --json
oxygen whoami --json
oxygen capabilities search "find public LinkedIn post engagers" --json
oxygen commands get "tools search" --json
  • oxygen statusdata.compatible: true means your CLI meets the server's enforced minimum. The envelope also carries client_version, server_version, minimum_cli_version, api_url, and a skew value.
  • oxygen whoamidata.user.email, data.organization.name, and an onboarding block. Load workspace context first if onboarding.complete is false.
  • oxygen capabilities search returns a bounded ownership card and gateway recommendations. oxygen commands get hydrates only one exact command; the full oxygen commands --json manifest remains an opt-in diagnostic.

Cost and approval posture

Dry-run and preview commands never spend credits or write externally; paid provider calls, AI/tool column runs, enrichment, and external writes execute only after you pass --approved with a --max-credits ceiling. See Approvals and Spend caps.

Known limitations

  • Hosted MCP is untested with Cursor. The connector at https://oxygen-agent.com/mcp uses OAuth with dynamic client registration; that flow is verified for Claude Desktop, Claude Code, and Codex, but Cursor's MCP client sends no distinguishable user agent in Oxygen's traffic, so we have neither verified nor instrumented it. Until it is verified, drive Oxygen through the CLI.
  • If you do connect it, use https://oxygen-agent.com/mcp?toolset=core&widgets=off. Cursor has no tool search, so it needs the core profile; and Oxygen auto-suppresses the inline widget block only for clients it recognizes as terminal-shaped, so an unrecognized client receives the block and pays for it in context whether or not it renders. Both parameters are documented in the generic MCP client guide.
  • Widget rendering is unverified — do not assume ui:// widgets appear; rely on the web_url in each JSON envelope and the web app.
  • Import large CSV/JSON files with oxygen tables import <table> --file <path> --background rather than pasting them into a prompt.

On this page