> For the complete documentation index, see [llms.txt](https://v2.dataos.info/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://v2.dataos.info/consume/consume-with-ai/connect-a-client/claude.md).

# Claude

Configure Claude Code or Claude Desktop to connect with Data Product MCP.

Connecting Claude to Data Product MCP lets it answer from governed products instead of guessing: discovery, querying, quality checks, lineage, and owner lookup all run against trusted, authorized data. From a product page, select **Activate → MCP**, then **View install guide** on the Claude Desktop or Claude Code card.

## What you need

Your DataOS instance URL. Claude Desktop needs a [DataOS API token](/consume/get-started/before-you-begin.md). Claude Code needs one only if you connect with the API token method.

{% hint style="warning" %}
[API tokens](https://v2.dataos.info/references/key-concepts/api-tokens) are secrets. Do not commit them to source control. Store the token outside your repo or inject it through an environment variable.
{% endhint %}

## Claude Code

Run this in your terminal, replacing the placeholders:

{% hint style="info" %}
Replace `<instance-url>` with your DataOS instance FQDN. For example: `productsandbox.instance.dataos.cloud`.
{% endhint %}

{% tabs %}
{% tab title="OAuth" %}

```bash
claude mcp add --scope user --transport http DataProduct-MCP \
  https://<instance-url>/mcp/api/v1
```

Restart Claude Code, run `/mcp`, select **DataProduct-MCP**, and authorize in the window that opens.
{% endtab %}

{% tab title="API Token" %}
Replace `<API_TOKEN>` with your actual DataOS API token.

```bash
claude mcp add --scope user --transport http DataProduct-MCP \
  https://<instance-url>/dataproduct-mcp/api/v1 --header "apikey: <API_TOKEN>"
```

Restart Claude Code and confirm **DataProduct-MCP** appears in the MCP tools list.
{% endtab %}
{% endtabs %}

`--scope user` installs the server globally for your user account, so it is available across all projects, not just the current folder.

## Claude Desktop

Claude Desktop reaches Data Product MCP through a local `mcp-remote` bridge that you add to its config file.

1. Install `mcp-remote` globally. This requires [Node.js](https://nodejs.org).

   ```bash
   npm install -g mcp-remote
   ```
2. Open Claude Desktop, go to **Developer** settings, and select **Edit Config**.
3. Paste the configuration below, replacing `<instance-url>` with your instance FQDN and `<API_TOKEN>` with your [DataOS API token](/consume/get-started/before-you-begin.md), then save.

   ```json
   {
     "mcpServers": {
       "DataProduct-MCP": {
         "command": "npx",
         "args": [
           "mcp-remote@latest",
           "https://<instance-url>/dataproduct-mcp/api/v1",
           "--header",
           "apikey: <API_TOKEN>"
         ]
       }
     }
   }
   ```
4. Fully quit and reopen Claude Desktop to apply the configuration.
5. In **Developer** settings, confirm **DataProduct-MCP** appears under configured MCP servers.

## Verify

Ask Claude:

```
What data products are available to consume?
```

Claude returns products from your DataOS instance, scoped to your token. Next: [Discover in natural language](/consume/consume-with-ai/discover-in-natural-language.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://v2.dataos.info/consume/consume-with-ai/connect-a-client/claude.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
