> For the complete documentation index, see [llms.txt](https://help.daasity.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.daasity.com/core-concepts/ai-analyst/connect-your-ai-mcp.md).

# Connect Your AI (MCP)

Connect Claude, Cursor, Codex CLI, or ChatGPT to your governed Daasity data with MCP - set it up once in Daasity, then ask from inside your own AI.

{% hint style="info" %}
**CONNECT AND VERIFY**

## Connect Your AI (MCP)

**Connect Claude, Cursor, or another MCP-compatible AI tool to your governed Daasity data, then ask questions where you already work.**

<table data-view="cards"><thead><tr><th align="center"></th></tr></thead><tbody><tr><td align="center"><strong>Governed metrics</strong></td></tr><tr><td align="center"><strong>Read-only access</strong></td></tr><tr><td align="center"><strong>Workspace scoped</strong></td></tr></tbody></table>

{% endhint %}

{% columns %}
{% column width="16.666666666666664%" %}

<figure><img src="https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2F7mwjMLi8Kao2MTzbAce6%2FAudio_Icon.png?alt=media&amp;token=ae573cd7-c740-4b92-9bfa-5fad56839cc6" alt=""><figcaption></figcaption></figure>
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %} <mark style="color:$danger;">**LISTEN**</mark>

## Connect Your AI with Daasity

{% endcolumn %}
{% endcolumns %}

Listen to **Stop AI Hallucinations with Daasity MCP** for an introduction to governed AI answers, verification, and secure connection management.

Audio length: 5 minutes, 59 seconds

{% embed url="<https://on.soundcloud.com/C8vXxC7By13wK9ebzE>" %}

<details>

<summary>Read the full transcript</summary>

**Stop AI Hallucinations with Daasity MCP** Lightly edited for punctuation, readability, and Daasity terminology.

**\[00:00]** Imagine asking an AI to pull your company’s revenue for the month, and it confidently hands you a number that is, like, $50,000 off.

**\[00:10]** Yeah, that happens all the time.

**\[00:11]** Right. When you connect AI to raw business data, that isn’t just a possibility—it’s usually guaranteed. It’s a huge problem.

**\[00:18]** It is. So today, we’re doing a deep dive into Daasity’s latest technical briefs and developer notes to see how they are fixing that. Our mission is to figure out how Daasity’s new MCP connection safely bridges the gap between your external AI tools and your governed business data.

**\[00:35]** Which is super important.

**\[00:35]** Exactly. Okay, let’s unpack this, because the idea of letting an AI just, you know, hallucinate its way through a company database is terrifying.

**\[00:44]** Terrifying and expensive, which is why this new protocol is so crucial. MCP stands for Model Context Protocol. You can think of it as a standardized, secure bridge.

**\[00:53]** Like a guardrail.

**\[00:54]** Exactly. Instead of just dumping an AI into your raw database and letting it run wild, this protocol dictates exactly how the AI is allowed to ask for information.

**\[01:02]** Makes sense, because giving AI raw database access is basically dropping a chef into a massive grocery store with no labels, right? And just saying, “Hey, bake a cake.”

**\[01:14]** A perfect recipe for disaster.

**\[01:16]** Yeah. They have to guess the ingredients, guess the proportions, and just hope they don’t use salt instead of sugar. An AI left on its own has to infer how tables relate or what your specific definition of net sales actually is.

**\[01:30]** Right. And Daasity bypasses that whole chaos by pointing the MCP connection at a governed semantic layer.

**\[01:37]** So, to use your analogy, the AI isn’t wandering the grocery store guessing ingredients anymore. It has a recipe—better yet, it’s sitting at a restaurant ordering off a menu.

**\[01:45]** Oh, wow. I like that.

**\[01:47]** Yeah. The metrics, the joins, the model logic—they are all predefined in the kitchen by your data team. So the AI just asks for net sales, and the semantic layer serves up the exact same governed number that powers your existing dashboards.

**\[01:59]** Okay, that sounds great in theory, but AI is designed to predict the next plausible word, right? Not necessarily to do flawless math, right? It’s a language model. So even with a menu, how do we actually trust the number it hands us?

**\[02:11]** Well, you don’t trust it blindly. You have to verify it. And the way you structure your prompt is exactly how you test its accuracy, meaning we can’t just type, “Hey, how is the business doing?”

**\[02:21]** Definitely not.

**\[02:22]** You have to force the AI to use the predefined rules by asking a strict three-part question. You need a metric, a dimension, and a time period.

**\[02:32]** Got it. So something like, “Show the top 10 products by net sales for the last 30 completed days.”

**\[02:41]** Spot on. Your metric is net sales, the dimension is products, and the time period is the last 30 completed days. Then you take whatever result the AI gives you and compare it directly to your Daasity dashboard. And a strong verification means every single piece aligns perfectly.

**\[02:53]** Yes, exactly. But wait, what if the AI number is only off by, like, a tiny fraction? Isn’t it tempting to just assume, “Oh, it accounted for a time-zone difference or a pending return,” and just run with it?

**\[03:04]** No, absolutely not. A mismatch is a hard stop. Retrieving a number and interpreting a number are two very different tasks for an AI.

**\[03:11]** So we just don’t accept close enough.

**\[03:13]** Never. If there is even a fractional difference, it’s a signal to investigate definitions, filters, or date ranges. You do not share that insight with your team until you know exactly why the AI and the dashboard didn’t align.

**\[03:26]** Okay, so we can verify the AI’s math, which is huge.

**\[03:29]** Yeah.

**\[03:30]** But if the AI is constantly pinging the semantic layer to check things like net sales, what’s stopping it from hallucinating a delete command and just accidentally overwriting the sales data entirely?

**\[03:42]** I mean, the connection itself prevents that at a structural level. It is entirely read-only, so it physically can’t edit anything.

**\[03:49]** Right.

**\[03:49]** The AI can query the data, but the bridge simply does not have the mechanical capability to change, delete, or write anything back. Plus, it’s tenant-isolated, meaning it’s like a walled garden.

**\[04:00]** Exactly. The connection can only ever see data within your specific workspace.

**\[04:04]** Good to know, because I was looking at the setup process and it seemed surprisingly simple. You just drop a custom URL into an AI tool like Claude or Cursor.

**\[04:13]** Yeah, it’s very streamlined. But if your tool doesn’t support that guided flow, you use a manual token, and that token acts exactly like a password, right? So anyone who has it can just query your data.

**\[04:26]** That is where time-limited access comes in. These tokens act like self-destructing key cards.

**\[04:29]** Okay. Self-destructing key cards. I love that visual.

**\[04:31]** They expire periodically, so they require manual reapproval to keep working. Plus, you can just revoke them instantly if you suspect any sort of compromise.

**\[04:40]** What about volume, like a glitching AI just overloading things?

**\[04:44]** The system imposes strict quotas to automatically cap any runaway usage. It completely prevents an AI from hitting your database with a million questions a second.

**\[04:54]** So when you combine all of this—the semantic layer doing the heavy lifting, the strict verification process, and the self-destructing-key-card security—I mean, the payoff is massive.

**\[05:04]** It really is. We are talking about getting lightning-quick, highly accurate answers right inside the AI workflows you already have open.

**\[05:12]** That is incredible.

**\[05:13]** It accelerates data-backed decision-making to a level we really just haven’t seen before, because you aren’t waiting for an analyst to build a new dashboard or dealing with massive CSV exports just to answer a basic query.

**\[05:26]** No more downloading massive spreadsheets just to find one number.

**\[05:29]** Exactly. You have a reliable, secure path from a plain-language question directly to a verified business insight, which completely changes the whole dynamic of how we interact with our metrics.

**\[05:40]** I mean, it’s just so much faster and more integrated now.

**\[05:42]** And much safer.

**\[05:43]** Yes, much safer. So here is something for you to think about as we wrap up. Now that AI can perfectly retrieve your governed data without making you write a single line of SQL, what unexplored questions about your business are you ignoring simply because the data used to be too annoying to pull?

</details>

{% hint style="success" %}
OBJECTIVES

## What you will be able to do

* Explain why the connection uses Daasity's governed semantic layer instead of raw tables.
* Connect an approved MCP-compatible AI tool to your Daasity workspace.
* Run and verify a clearly scoped question using the intended metric, dimension, and time period.
* Decide when to use an answer, investigate the result, or stop and resolve a connection or data issue.
* Manage, renew, refresh, and revoke connections securely.
  {% endhint %}

#### Bring governed answers into the AI conversation you already use

Move from a business question to a governed Daasity result without writing SQL, exporting a CSV, or building a new dashboard.

{% columns %}
{% column %}

<table data-view="cards"><thead><tr><th></th></tr></thead><tbody><tr><td><strong>Which products led net sales in the last 30 days?</strong></td></tr><tr><td><strong>How did new versus returning revenue change this month?</strong></td></tr></tbody></table>
{% endcolumn %}

{% column %}

<table data-view="cards"><thead><tr><th></th></tr></thead><tbody><tr><td><strong>What were ROAS and CPO by channel and vendor?</strong></td></tr><tr><td><strong>Which products have the lowest weeks of supply by store?</strong></td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

**One setup, two locations:** Turn on the connection in Daasity. Ask and refine questions inside your external AI tool. The MCP connection is separate from the AI Analyst assistant used inside Daasity.

***

{% columns %}
{% column width="16.666666666666664%" %}
![](https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2Fdi5VsO8mzhRt7jVy9NPw%2FLearn_Icon.png?alt=media\&token=f8e3e66f-e303-46a8-8621-195399535443)
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %} <mark style="color:green;">**LEARN**</mark>

### Understand what the connection does <a href="#learn" id="learn"></a>

{% endcolumn %}
{% endcolumns %}

#### Your AI queries governed definitions

Your AI tool translates a plain-language question into a query. The important difference is what that query reaches. A raw database connection leaves the AI to infer table relationships, filters, and metric definitions. Daasity points the query to your governed semantic layer, where the metrics, joins, and filters are already defined in your models.

{% columns %}
{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Ask in your AI tool</strong></td><td>Use plain language.</td></tr><tr><td><strong>MCP carries the request</strong></td><td>The connection is read-only.</td></tr></tbody></table>
{% endcolumn %}

{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Daasity resolves the query</strong></td><td>Governed models supply the definitions.</td></tr><tr><td><strong>Verify the answer</strong></td><td>Compare material results with Daasity.</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

{% hint style="warning" %}
**Your configuration sets the boundary.** The AI can answer only from integrations, extractors, workflows, metrics, and modeled logic configured in your Daasity account. If something is not configured and modeled, the connection cannot answer questions about it.
{% endhint %}

#### Know which AI experience you are using

| Experience                | Where you set it up                       | Where you ask         |
| ------------------------- | ----------------------------------------- | --------------------- |
| **Connect Your AI (MCP)** | Daasity: AI Analyst > Connect Your AI     | Your external AI tool |
| **AI Analyst assistant**  | Enabled for your Daasity account and user | Inside Daasity        |

#### Understand the safeguards

| Safeguard           | What it means                                                                   |
| ------------------- | ------------------------------------------------------------------------------- |
| **Read-only**       | The connection can query data. It cannot change, delete, or write data.         |
| **Tenant-isolated** | A connection can see only the data in your workspace.                           |
| **Time-limited**    | Connections expire periodically and must be reapproved.                         |
| **Usage-limited**   | Workspace and per-user quotas cap heavy or runaway usage.                       |
| **Revocable**       | You can disconnect a connection at any time.                                    |
| **Governed**        | Queries use the validated semantic layer and its modeled, permissioned dataset. |

{% columns %}
{% column width="16.666666666666664%" %}
![](https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2FwPQ9r5jZZGFgdcQ7RVIe%2FDo_Icon.png?alt=media\&token=523b86d9-c11c-47da-8243-cc27bfe0569f)
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %} <mark style="color:blue;">**DO**</mark>

## Connect and verify your AI tool <a href="#do" id="do"></a>

{% endcolumn %}
{% endcolumns %}

#### Before you start

* [ ] Your Daasity workspace has AI Analyst enabled.
* [ ] Your user can open the AI Analyst tab and Connect Your AI screen.
* [ ] Your AI tool supports an MCP connector.
* [ ] You have permission to add a connector in the AI tool.

{% hint style="info" %}
**Claude Team or Enterprise:** An Owner or Primary Owner must first add the Daasity connector to the organization. After that one-time step, users can connect individually with their own credentials.
{% endhint %}

### Follow these steps to set up your AI tool

Select each tab to review the process of connecting your AI tool, asking a question, and verifying the results of your first inquiry.

{% tabs %}
{% tab title="Step 1" %}

### Open Connect Your AI in Daasity

Go to the **AI Analyst** tab, then open **Connect Your AI**. If you do not see AI Analyst, contact your account manager or Daasity Support to request access for the affected users.

![](https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2FfG5mFQfqiEjWuU5YmcZF%2FAccessing%20MCP.png?alt=media\&token=4d6341c2-c310-4c5f-afb7-b9b7709ff2fa)
{% endtab %}

{% tab title="Step 2" %}

### Copy your MCP server URL

On the **Connect via AI tool** tab, choose your AI tool and select **Copy**. Always copy the URL from your own screen because it is specific to your environment.

<figure><img src="https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2FTepuLHDNZQMsFMEHOe4z%2FMCP_server_URL.png?alt=media&amp;token=d54eb524-27a8-4bf6-8dae-2d5dcefbf2e5" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Step 3" %}

### Add the connector in your AI tool

Open the connector settings, add a custom connector, paste the Daasity URL, and complete the approval step in the browser. Daasity shows the exact steps for the tool you select. Use the manual-token method only when needed. If your tool does not support the guided flow, open the **Manual token** tab in Daasity, choose your AI, select **Generate Token**, and paste the token into the tool's MCP configuration.

**Treat the token like a password.** Anyone with the token can query your data until it expires or you revoke it.

<figure><img src="https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2FmWLoNnP5G5HUDAGWYeFm%2FAdd_Custom_Connector.png?alt=media&amp;token=03dd2a9f-e9b1-4cf1-8caf-a117b873a466" alt="Claude Add custom connector dialog with fields for a connector name and remote MCP server URL."><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Step 4" %}

### Run one focused question and verify the first result

Return to your AI tool and ask a question that names the metric, dimension, and time period.

#### Practice: run a verifiable first question

**Build the question with three parts:** **metric + dimension + time period**.

**Question Example: Show the top 10 products by net sales for the last 30 completed days.**

1. Review the result of your question in your connected AI tool.
2. Open the corresponding Daasity dashboard or Explore.
3. Match the metric definition, product dimension, date range, and result.
4. Record whether the result is verified or needs investigation.

**Check Your Work**: Compare the answer with the matching Daasity dashboard or Explore before using the connection for normal work. A strong verification confirms all four elements:&#x20;

1. the intended governed metric
2. the same dimension
3. the same date boundaries
4. matching result.&#x20;

**A mismatch is a signal to investigate, not a reason to choose whichever number looks more plausible.**
{% endtab %}
{% endtabs %}

{% columns %}
{% column width="16.666666666666664%" %}
![](https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2Fas0HHuel3QVlr1yGElvO%2FDecide_Icon.png?alt=media\&token=efd5bc20-7fcc-4d32-a4f1-60faadccc159)
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %} <mark style="color:cyan;">**DECIDE**</mark>

## Use, investigate, or stop <a href="#decide" id="decide"></a>

{% endcolumn %}
{% endcolumns %}

Retrieving a number and interpreting that number are different tasks. Use the evidence below to decide what happens next.

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>Use the result</h4></td><td>The question is clearly scoped, the required data is modeled, and the answer matches Daasity.</td></tr><tr><td><h4>Investigate further</h4></td><td>The result is plausible but needs a comparison, trend, driver, or human interpretation before action.</td></tr><tr><td><h4>Stop and resolve</h4></td><td>The answer conflicts with Daasity, a required metric is unavailable, or the connection returns an error.</td></tr></tbody></table>

#### Apply the decision check

| Check           | Ask                                                               | Decision signal                                                       |
| --------------- | ----------------------------------------------------------------- | --------------------------------------------------------------------- |
| **Scope**       | Did I name the metric, dimension, and date range?                 | If not, refine the question.                                          |
| **Coverage**    | Are the required integrations and metrics configured and modeled? | If not, the answer will be incomplete or unavailable.                 |
| **Agreement**   | Does the result match the corresponding Daasity view?             | If not, investigate definitions, filters, dates, and model freshness. |
| **Judgment**    | Am I asking for retrieval or a recommendation?                    | Recommendations require human review and a well-scoped prompt.        |
| **Consequence** | Will someone act on or distribute this result?                    | Verify material findings before sharing or deciding.                  |

{% hint style="info" %}
**Ready for normal use:** You can connect successfully, run a scoped question, and reproduce the result in Daasity using the same metric, dimension, and time period.
{% endhint %}

{% columns %}
{% column width="16.666666666666664%" %}
![](https://410725593-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FamTMWiPne1v1V3L7mbuj%2Fuploads%2F9vDETqAQJSK5UipMupa7%2FResolve.png?alt=media\&token=061b4b41-614e-49e0-b3bb-8adc9eb6200c)
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %} <mark style="color:purple;">**RESOLVE**</mark>

## Fix common connection and answer problems <a href="#resolve" id="resolve"></a>

{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>The connection fails</h4></td><td>Copy the MCP server URL again from your Daasity screen, confirm that you completed browser approval, and verify that the AI tool supports custom MCP connectors.</td></tr></tbody></table>
{% endcolumn %}

{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>A metric or field is missing</h4></td><td>Confirm that the integration or metric is configured and modeled. If the model changed recently, use <strong>Refresh MCP Views > Refresh Now</strong>.</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>The connection expired</h4></td><td>Reconnect using the guided steps. Connections are time-boxed and do not renew themselves.</td></tr></tbody></table>
{% endcolumn %}

{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>Claude does not show Add custom connector</h4></td><td>On Team or Enterprise, ask an Owner or Primary Owner to add the Daasity URL under <strong>Organization settings > Connectors > Add</strong>. Users can then connect individually.</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>Status is Ready, but authentication fails</h4></td><td>Disconnect and reconnect the affected connection to force a fresh underlying warehouse access token. Contact the Daasity account team if this happens repeatedly.</td></tr></tbody></table>
{% endcolumn %}

{% column %}

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><h4>The answer does not match Daasity</h4></td><td>Align the metric, filters, dimension, and date range. Confirm the data is modeled and refresh MCP views after recent model changes. Keep the result out of decision-making until the mismatch is explained.</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

#### Manage active connections

* **Review:** Check status, date added, last used, and expiration under **Your connections**.
* **Revoke:** Select **Disconnect** to remove access immediately.
* **Renew:** Reconnect after expiration.
* **Use several connections:** Tools and users can be connected and revoked independently.
* **Refresh definitions:** Model definitions refresh automatically; use **Refresh MCP Views > Refresh Now** to force a refresh.

{% hint style="warning" %}

#### Prepare a useful support request

If the problem remains, include the AI tool and plan, the affected Daasity user, connection status and expiration, the exact question, the metric and date range, the error message, the expected result, and the Daasity dashboard or Explore used for comparison. Never include a manual token in a support message.

**Send the request to Daasity Support at <support@daasity.com>.**
{% endhint %}
