# Set up display.dev

Set up display.dev in the agent host you are currently running in.

1. Identify the current host from its available commands, configuration, and runtime context. Do not ask the user when the host is already evident.
2. Follow only the matching host section below. For hosts configured through local packages or files, inspect the existing installation and MCP configuration first; update or reuse a valid setup instead of adding a duplicate. If the Claude Cowork section matches, go directly to its user-facing remote-connector instructions.
3. Follow the host's approval requirements before installing software or changing configuration.
4. Hand browser authentication or desktop UI steps to the user. Never ask for, print, or store an API key.
5. Verify that the display.dev server or tools are discoverable. Do not publish an artifact to test setup.

If the host remains ambiguous after inspection, ask the user which path to use.

## Cursor

Install the display.dev skill and the local CLI MCP bridge. Ask for approval before installing either package.

```sh
npx skills add display-dev/skill --skill display-dev
npm install -g @displaydev/cli
dsp login
```

Hand the browser login to the user. Preserve every existing entry in the user-global `~/.cursor/mcp.json`, then add or update only the `display` entry:

```json
{
  "mcpServers": {
    "display": {
      "type": "stdio",
      "command": "dsp",
      "args": ["mcp"]
    }
  }
}
```

Ask the user to reload Cursor when required. Verify that the display.dev server is connected and its tools appear under **Settings → MCP**. See [Cursor setup](https://display.dev/docs/mcp-cursor) and the [display.dev skill](https://display.dev/docs/skill).

## Codex

Install the display.dev plugin. It provides both the skill and OAuth MCP configuration. Ask for approval before changing the Codex plugin configuration.

```sh
codex plugin marketplace add display-dev/skill
codex plugin add display-dev@display-dev
```

Hand any browser authorization prompt to the user. If their account has no organization, they can create one on that screen before approving access. Start a new Codex task when required, then verify that the display.dev tools are listed. See [Codex setup](https://display.dev/docs/mcp-codex) and the [display.dev skill](https://display.dev/docs/skill).

## Claude Code

Install the display.dev skill and the remote OAuth MCP server. Ask for approval before installing the skill or changing user-scoped MCP configuration.

```sh
npx skills add display-dev/skill --skill display-dev
claude mcp add --transport http --scope user display https://api.display.dev/v1/mcp
```

Ask the user to run `/mcp` inside Claude Code and complete browser authorization. Then run:

```sh
claude mcp get display
```

Verify that the display.dev tools are discoverable. See [Claude Code setup](https://display.dev/docs/mcp-claude-code) and the [display.dev skill](https://display.dev/docs/skill).

## Claude Cowork

This is a remote-connector setup that the user completes in Claude's UI. Lead with
that. Do not install the display.dev skill or CLI, run package-install commands, or
edit MCP configuration inside Cowork code execution. Anything installed there is
ephemeral and does not configure Claude's remote connector.

Tell the user immediately: "For Claude Cowork, connect Display.dev as a remote
connector in Claude.ai. There is nothing to install in the Cowork container. Please
complete these UI steps:"

On Claude Team or Enterprise, an Owner or Primary Owner must first add Display for
the organization: open **Organization settings → Connectors**
(`https://claude.ai/admin-settings/connectors`), find **Display** in the directory,
and add it. Members then open the Display listing and continue with step 2 below. A
member who sees **Request** instead of **Connect** must wait for an Owner to add it.

On personal Claude Pro or Max, give the user this link to Display's listing in
Claude's connector directory: `https://claude.ai/directory/display`.

1. Open `https://claude.ai/directory/display`. The listing is named **Display** and shows Claude's **Community** label.
2. Select **Connect**.
3. On the Display.dev authorization screen, confirm that **Redirects to** shows `claude.ai`, review the requested access, then select **Authorize Claude**. Cancel if the redirect host is different.
4. When Claude.ai shows **Disconnect** and **Tool permissions** for Display, the connection is complete.
5. Start a Cowork cloud task from Claude on the web, Claude Desktop, or the mobile app. Enable Display.dev under **+ → Connectors**, then confirm that the expected Display.dev tools appear without calling them.

If the user prefers to add the connector by URL: in Claude.ai, select **Customize**
in the sidebar, then **Connectors**; select **Add → Add custom connector**; enter
`Display.dev` in **Name** and `https://api.display.dev/v1/mcp` in **Remote MCP
server URL**; leave **OAuth Client ID** and **OAuth Client Secret** empty; select
**Add**, then **Connect**, and continue with step 3. On Team or Enterprise, an Owner
adds the same URL under **Organization settings → Connectors** first, then members
open **Customize → Connectors**, find Display.dev, and select **Connect**.

Do not summarize or offer the Cursor, Claude Code, skill, or CLI paths unless the
user asks about another host. Keep this runbook to initial connector setup. For
later file-transfer limitations, direct the user to the Cowork guide instead of
adding recovery steps to setup.

See [Claude Cowork setup](https://display.dev/docs/mcp-claude-cowork).

## Claude Desktop or Claude.ai

Do not edit an undocumented local configuration file. Remote connectors belong to
the user's Claude account, so adding one on Claude.ai also configures Claude
Desktop. Hand these steps to the user:

1. Open `https://claude.ai/directory/display`, Display's listing in Claude's connector directory, and select **Connect**.
2. Complete OAuth authorization.
3. Confirm in the UI that the connector exposes its tools.

On Claude Team or Enterprise, an Owner or Primary Owner adds Display for the
organization first under **Organization settings → Connectors**
(`https://claude.ai/admin-settings/connectors`), then each member connects it from
the listing. To add it by URL instead, add a custom connector with
`https://api.display.dev/v1/mcp`.

See [Claude Desktop and Claude.ai setup](https://display.dev/docs/mcp-claude-desktop).

## ChatGPT

Hand setup to the user through ChatGPT's current custom MCP app UI. Full write actions currently require ChatGPT Business or Enterprise/Edu on the web, workspace developer mode, and an Admin, Owner, or authorized developer. ChatGPT Pro custom apps are limited to read and fetch actions.

1. Confirm that the user's plan, workspace role, and developer-mode access support the required tools.
2. Create a custom MCP app using `https://api.display.dev/v1/mcp` and OAuth.
3. Hand the OAuth flow to the user. If their account has no organization, they can create one on the authorization screen before approving access.
4. Verify in the UI that the app exposes the display.dev tools.

See [ChatGPT setup](https://display.dev/docs/mcp-chatgpt).

## Other coding agents

If the host supports Agent Skills, install the public display.dev skill with the host's approved installer. Configure display.dev MCP through the host's documented remote-OAuth support or through the authenticated `dsp mcp` stdio bridge. Do not invent a host-specific configuration path.

See the [display.dev skill](https://display.dev/docs/skill) and [MCP server guide](https://display.dev/docs/mcp-server).

## Report the result

After read-only verification, report only the details relevant to the selected host:

- which host path you used;
- which components were configured: a skill, a remote MCP connector, the local `dsp mcp` bridge, or a combination;
- any user action or restart still required; and
- whether the display.dev server or tools were actually discovered.

For Claude Cowork, report only whether the remote connector was authorized, whether
its tools were discovered, and which Claude UI action remains. Do not mention skill
installation, local MCP configuration, or the CLI bridge.

Do not say setup is complete when the relevant server or tools are not visible. Report a missing host CLI, denied installation approval, cancelled OAuth flow, malformed existing configuration, or unsupported custom-connector UI as a specific incomplete result and include the matching absolute documentation link above.
