> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xpander.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Desktop AI clients

> Which clients run as harnesses inside xpander, which connect from a laptop, and what each connection carries.

The same names play two roles. As a **harness**, the client runs inside xpander in a cloud session. As a **desktop client**, it runs on a laptop and reaches xpander over MCP.

![Diagram](https://docs.xpander.ai/images/diagrams/run-integrations-desktop-clients-307adb3e.svg)

## As harnesses inside xpander

| Harness | Runs on xpander | Default when the organization's default provider is |
| - | - | - |
| Claude Code | Yes | Anthropic, or Amazon Bedrock with an Anthropic model |
| Codex | Yes | OpenAI |
| OpenCode | Yes | Any other provider the gateway routes |
| Cursor | Not selectable yet | |

Each conversation runs in its own sandbox with memory and CPU limits, gets the skills your organization made available and a short-lived [AI gateway](https://docs.xpander.ai/run/integrations/ai-gateway.md) token instead of a provider key, and is recorded on its task. The composer can switch harness or model, and the history carries over.

## As desktop clients

Any MCP client (Claude Code, Claude Desktop, Cursor, ChatGPT or another) can connect to either endpoint. The client keeps its own model sign-in, including a personal Claude plan (Pro or Max) through `/login`. The MCP connection signs in to xpander separately and never touches the model sign-in.

| Endpoint | What is behind it | Auth |
| - | - | - |
| `https://omni.xpander.ai/mcp` | Omni: task the organization's agents, build skills and agents from what admins approved, start cloud sessions, ask what a run did | OAuth 2.1 in the browser, per person |
| `https://api.xpander.ai/mcp/` | The xpander API itself: agents, tasks and threads, skills and operations, custom functions, workspace files, schedules, usage. Not an agent. Each operation is one API call | OAuth 2.1, per person. No API key |

### Which endpoint to connect

* **A person's own client: Omni.** One URL covers everything xpander Chat offers, and "Deploy this agent to xpander as a scheduled task" ends with an agent running in a cloud session. Setup: [Connect your MCP client](https://docs.xpander.ai/guides/deploy/omni-mcp.md).
* **An integration or automation: the API endpoint.** Raw calls, with no agent deciding in between. Setup: [Model Context Protocol](https://docs.xpander.ai/api-reference/mcp.md).

### On a self-hosted install

On Air-Gapped, the endpoint exists once `global.mcp.publicUrl` is set. Until then, the **MCP** row on **Platform > Agents > Channels** reads **Not offered on this install**. On Hybrid, the chart serves `mcp.<your domain>` with nothing to set. If either page says the gateway is not available, contact [xpander support](https://xpander.ai/contact-us).

A desktop client can also reach the organization's skills directly at the address on **Platform > Agents > Skills registry**, with each person signed in as themselves ([MCP gateway](https://docs.xpander.ai/run/integrations/mcp-gateway.md)).

## What is different between the two roles

| On the laptop | In a cloud session |
| - | - |
| The client calls the vendor with its own sign-in (provider key or a personal plan such as Claude Pro or Max), unless pointed at the [LLM Gateway](https://docs.xpander.ai/run/llm-gateway/connect-tools.md) with an xpander key | The session holds a gateway token. The controller holds the key |
| File edits, shell commands and local skills follow the client's own permission settings | Risky actions wait for a named person's approval |
| Local history stays on the laptop. Only model calls sent through the LLM Gateway are recorded | Every task, skill call and answer is recorded |
| Runs while the laptop is open | Runs unattended and answers in xpander Chat, Slack, Teams, email or on a schedule |

## Next steps

> **[Connect a client to Omni](https://docs.xpander.ai/guides/deploy/omni-mcp.md)**
>
> Setup per client.

> **[Connect a client to the API](https://docs.xpander.ai/api-reference/mcp.md)**
>
> The API over MCP.

> **[Send laptop model calls through the gateway](https://docs.xpander.ai/run/llm-gateway/connect-tools.md)**
>
> Use an xpander key.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.