Build with AI

Client configuration

For new projects, it’s recommended that you use a remote MCP server. Remote MCP servers are hosted endpoints that require no local installation, and future tooling and feature development is prioritized for them. Refer to Remote MCP Servers.

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

{
  "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:

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.

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

  4. Use the following configuration:

    {
      "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:

      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:

{
  "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

Filter by tool collection

Limit exposed tools to only those in the davinci_admin collection.

{
  "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"
      }
    }
  }
}
Filter by specific tools

Expose only a targeted set of tools, such as only flow tools.

{
  "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"
      }
    }
  }
}
Exclude specific tools

Enable all tools except variable-related ones.

{
  "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"
      }
    }
  }
}
Enable verbose logging

Enable detailed logging to help debug connection or tool issues.

{
  "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:

    npx -y @ping-identity/davinci-mcp-server start --logout
  • Display help:

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