---
title: Client configuration
description: MCP client configuration examples, CLI flags, and advanced usage for the DaVinci MCP Server.
component: build-with-ai
page_id: build-with-ai:davinci-mcp-server:client-configuration
canonical_url: https://developer.pingidentity.com/build-with-ai/davinci-mcp-server/client-configuration.html
revdate: May 1, 2026
keywords: ["MCP", "configuration", "Claude", "Cursor", "VS Code", "Gemini", "CLI", "DaVinci"]
section_ids:
  mcp-client-configuration: MCP client configuration
  cli-flags: CLI flags
  filter-tools: Filter tools
  other-flags: Other flags
  advanced-configuration-examples: Advanced configuration examples
  maintenance-commands: Maintenance commands
---

# Client configuration

This page covers client-specific configuration formats, CLI flags, and advanced configuration examples for the DaVinci MCP Server.

Replace `your-environment-id` and `your-client-id` with your actual PingOne environment ID and OAuth Client ID in all examples below. `DAVINCI_MCP_ENVIRONMENT_ID` selects which PingOne/DaVinci environment the server queries, while `AUTHORIZATION_CODE_CLIENT_ID` identifies your worker application.

## MCP client configuration

* Claude Desktop

* Claude Code (CLI)

* VS Code (Cline)

* Cursor

* Gemini CLI

Add the following to your `claude_desktop_config.json`:

* **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`

* **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

```json
{
  "mcpServers": {
    "davinci": {
      "command": "npx",
      "args": ["-y", "@ping-identity/davinci-mcp-server", "start"],
      "env": {
        "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
        "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
        "ROOT_DOMAIN": "pingone.com"
      }
    }
  }
}
```

Run the following command in your terminal:

```bash
claude mcp add --transport stdio davinci \
--env DAVINCI_MCP_ENVIRONMENT_ID="your-environment-id" \
--env AUTHORIZATION_CODE_CLIENT_ID="your-client-id" \
--env ROOT_DOMAIN="pingone.com" \
-- npx -y @ping-identity/davinci-mcp-server start
```

1. Open the Cline sidebar in VS Code.

2. Click the **Settings** [icon: gear, set=fa]icon.

3. Scroll to **MCP Servers** and click **Add MCP Server**.

4. Use the following configuration:

   ```json
   {
     "davinci": {
       "command": "npx",
       "args": ["-y", "@ping-identity/davinci-mcp-server", "start"],
       "env": {
         "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
         "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
         "ROOT_DOMAIN": "pingone.com"
       }
     }
   }
   ```

1) Open Cursor **Settings** > **Features** > **MCP**.

2) Click **+ Add New MCP Server**.

3) Set the following:

   * **Name:** `davinci`

   * **Type:** `command`.

   * **Command:**

     ```bash
     npx -y @ping-identity/davinci-mcp-server start
     ```

4) Add environment variables:

   * `DAVINCI_MCP_ENVIRONMENT_ID`: `your-environment-id`

   * `AUTHORIZATION_CODE_CLIENT_ID`: `your-client-id`

   * `ROOT_DOMAIN`: `pingone.com`

Use the target PingOne environment UUID for `DAVINCI_MCP_ENVIRONMENT_ID` (not the OAuth client ID).

Add the following to your `~/.gemini/settings.json`:

```json
{
  "mcpServers": {
    "davinci": {
      "command": "npx",
      "args": ["-y", "@ping-identity/davinci-mcp-server", "start"],
      "env": {
        "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
        "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
        "ROOT_DOMAIN": "pingone.com"
      }
    }
  }
}
```

## CLI flags

The `start` command supports the following flags. Add them to the `args` array in your MCP client configuration.

### Filter tools

| Flag                           | Description                                                                         |
| ------------------------------ | ----------------------------------------------------------------------------------- |
| `--include-collections <list>` | Comma-separated list of collection names to include (for example, `davinci_admin`). |
| `--exclude-collections <list>` | Comma-separated list of collection names to exclude.                                |
| `--include-tools <list>`       | Comma-separated list of tool names to include.                                      |
| `--exclude-tools <list>`       | Comma-separated list of tool names to exclude.                                      |

### Other flags

| Flag        | Description                                              |
| ----------- | -------------------------------------------------------- |
| `--verbose` | Enable verbose logging to `stderr`.                      |
| `--logout`  | Clear stored tokens from the system keychain on startup. |
| `--help`    | Show the help message and exit.                          |

## Advanced configuration examples

> **Collapse: Filter by tool collection**
>
> Limit exposed tools to only those in the `davinci_admin` collection.
>
> ```json
> {
>   "mcpServers": {
>     "davinci": {
>       "command": "npx",
>       "args": [
>         "-y",
>         "@ping-identity/davinci-mcp-server",
>         "start",
>         "--include-collections",
>         "davinci_admin"
>       ],
>       "env": {
>         "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
>         "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
>         "ROOT_DOMAIN": "pingone.com"
>       }
>     }
>   }
> }
> ```

> **Collapse: Filter by specific tools**
>
> Expose only a targeted set of tools, such as only flow tools.
>
> ```json
> {
>   "mcpServers": {
>     "davinci": {
>       "command": "npx",
>       "args": [
>         "-y",
>         "@ping-identity/davinci-mcp-server",
>         "start",
>         "--include-tools",
>         "list_flows,describe_flow"
>       ],
>       "env": {
>         "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
>         "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
>         "ROOT_DOMAIN": "pingone.com"
>       }
>     }
>   }
> }
> ```

> **Collapse: Exclude specific tools**
>
> Enable all tools except variable-related ones.
>
> ```json
> {
>   "mcpServers": {
>     "davinci": {
>       "command": "npx",
>       "args": [
>         "-y",
>         "@ping-identity/davinci-mcp-server",
>         "start",
>         "--exclude-tools",
>         "describe_variable,list_variables"
>       ],
>       "env": {
>         "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
>         "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
>         "ROOT_DOMAIN": "pingone.com"
>       }
>     }
>   }
> }
> ```

> **Collapse: Enable verbose logging**
>
> Enable detailed logging to help debug connection or tool issues.
>
> ```json
> {
>   "mcpServers": {
>     "davinci": {
>       "command": "npx",
>       "args": ["-y", "@ping-identity/davinci-mcp-server", "start", "--verbose"],
>       "env": {
>         "DAVINCI_MCP_ENVIRONMENT_ID": "your-environment-id",
>         "AUTHORIZATION_CODE_CLIENT_ID": "your-client-id",
>         "ROOT_DOMAIN": "pingone.com"
>       }
>     }
>   }
> }
> ```

## Maintenance commands

Run these commands manually in your terminal when needed.

* Clear stored credentials:

  ```bash
  npx -y @ping-identity/davinci-mcp-server start --logout
  ```

* Display help:

  ```bash
  npx -y @ping-identity/davinci-mcp-server --help
  ```
