ChatGPT is OpenAI's AI assistant. This destination lets ChatGPT read data from any source you connect in Dataddo, so you can ask questions about your data in plain language. Dataddo delivers the data directly to the model and takes care of the rest.
Dataddo handles the whole pipeline for you. It keeps the data fresh, stores it in SmartCache, and serves it through a built-in querying layer. Every answer comes with metadata: technical metadata such as data freshness, and business metadata such as what each table and column means. You do not write any code.
How It Works
On the Data Anywhere and Enterprise plans, ChatGPT is a destination, and the data comes from the flows you attach to it. On the Data to AI plan, ChatGPT is an AI Model, and the data comes from the Contexts you attach to it. A Context is data that Dataddo keeps ready to query. When ChatGPT needs data, Dataddo serves it from SmartCache and returns the rows together with their freshness and business metadata.
Access is authorized with OAuth. You sign in to Dataddo from ChatGPT once, with your Dataddo email and password. The sign-in page does not offer Google or Microsoft single sign-on. ChatGPT then keeps the connection active and renews it in the background, so you do not handle any tokens.
What ChatGPT Can Do with Your Data
Dataddo exposes your data through its data MCP server at https://headless.dataddo.com/mcp-data. The server is a semantic layer: ChatGPT asks in business terms (customers, invoices, deals), and Dataddo never accepts SQL from the model. The tools fall into these groups:
| Tools | Purpose |
|---|---|
list_flows, describe_flow |
See which flows are available to your account and what each one holds. |
list_models, list_entities, describe_entity, search, sample_values |
Find the business entities, fields, relationships and metrics that can be queried. |
query |
Query an entity by field names, with filters, grouping, date grains and predefined metrics. |
data_status, known_gaps |
Check how fresh the data is and which questions the data cannot answer. |
refresh, report_problem |
Check whether fresher data is available for an entity (this does not start a new extraction), or record an answer that looks wrong. |
A flow or Context can be available but not yet queryable. The model can see it as soon as it is attached, but it can query it only after a semantic model covers it. list_flows reports this for each one.
Setup Overview
The steps depend on your Dataddo plan:
- On the Data Anywhere and Enterprise plans, you work with sources, flows and destinations.
- On the Data to AI plan, you work with Contexts and AI Models instead.
- Create a ChatGPT authorizer.
- Make your data available:
- Data Anywhere and Enterprise: create a ChatGPT destination that uses the authorizer, then attach one or more flows to it.
- Data to AI: create a ChatGPT AI Model that uses the authorizer, then attach one or more Contexts to it.
- Add the Dataddo app in ChatGPT and sign in with your Dataddo account.
After you sign in, ChatGPT can access every flow or Context attached to an AI destination or AI Model in your Dataddo account, not only the ones attached to ChatGPT. Their data appears after they run for the first time.
Authorize Connection to ChatGPT
Authorize the connection so Dataddo can serve your data to ChatGPT:
- Go to Authorizers and click Authorize New Service.
- Select ChatGPT.
- Fill in the field below and click Save. Dataddo validates the connection when you save it.
| Field | Description |
|---|---|
| Label | A name for this authorizer in Dataddo. |
Make Your Data Available to ChatGPT
Follow the steps for your plan.
Data Anywhere and Enterprise Plans
- Go to Destinations, click Create Destination, and select ChatGPT.
- Enter a name, choose the authorizer you created, and click Save.
- Go to Flows and click Create Flow.
- Add one or more sources.
- Add the ChatGPT destination.
- Set the schedule that keeps the data fresh and click Save.
Data to AI Plan
- Go to AI Models and add a new one.
- Select ChatGPT.
- Enter a name and choose the authorizer you created.
- Attach one or more Contexts to the AI Model.
- Click Save.
Set Up the Connection in ChatGPT
ChatGPT connects to Dataddo as a custom MCP app, set up on the web at chatgpt.com. Which plans can add custom apps can change, and on workspace plans (Business, Enterprise and Education) an admin may need to allow them first.
-
Go to chatgpt.com/plugins, click the + button and select Add custom MCP server. On some accounts, the option is called Create MCP App.
-
Fill in the fields:
Field Value Name Dataddo Data AccessMCP server URL https://headless.dataddo.com/mcp-dataAuthentication OAuth Leave the OAuth client ID and client secret empty. ChatGPT registers itself with Dataddo automatically.
-
Accept the risk warning and create the app. ChatGPT opens the Dataddo sign-in page.
-
Sign in with your Dataddo email and password, and complete multi-factor authentication if asked.
-
After you sign in, the app appears on the plugins page, where you can turn individual tools on or off.
To use it in a chat, type @ and select Dataddo Data Access. Then ask a question about your data, for example "Which flows do I have in Dataddo?". ChatGPT may ask you to confirm a tool call before it runs.
Troubleshooting
- A flow or Context is missing: attach it to an AI destination or AI Model in the Dataddo account you signed in with, then let it run.
- ChatGPT asks you to sign in again: the sign-in expired or was revoked. Reconnect the app and sign in to Dataddo.
- The sign-in page does not open: check that the URL is exactly
https://headless.dataddo.com/mcp-dataand that Authentication is set to OAuth, not No Authentication. - There is no + button on the plugins page: on older accounts, turn on Developer mode in Settings > Security and login first. On workspace plans, ask your workspace admin to allow custom apps.
- ChatGPT shows outdated tools: click Refresh for the app on the plugins page, then start a new chat.
- A flow or Context is listed but ChatGPT cannot query it: it is available but no semantic model covers it yet.
- ChatGPT cannot fetch data: check that the flow has run at least once, so the Context holds data.
- Stale data: review the flow schedule. Dataddo serves the most recent data it has stored for the Context.