Data to AI™ / Claude/Odoo

Connect Odoo to Claude

Finance teams on Odoo ask Claude about the exact models and custom fields their instance uses, from daily changes to totals per company, without writing exports.

Less tokens, better answers.

  • Lower AI costs for the same work
  • More accurate, reliable answers
  • Read-only
  • Uses the Odoo data you already sync
  • SOC 2 Type II certified
Claude
Connected to Dataddo

On which day last week did our invoice records change the most?

Claude Answer · Odoo

Monday 21 Sep was the busiest day, with 64 invoice records Created On and 118 Last Updated On. Updates outnumbered new records on each day shown.

DayRecords by Created OnRecords by Last Updated On
Mon 21 Sep Odoo Table Replication 64118
Tue 22 Sep Odoo Table Replication 4187
Wed 23 Sep Odoo Table Replication 3872

Counted on one replicated model filtered by Last Updated On, the date range field the docs recommend against Odoo pagination duplicates.

source
Odoo · as of Mon 06:40 UTC
covers
21-27 Sep 2026
Example answer · fictional account and figures
Odoo in Claude

Questions Claude can answer from your Odoo data

Odoo is an open-source ERP with modules for accounting, inventory, sales, CRM and HR. Dataddo replicates whole Odoo models: you pick a model from your instance and its columns, including custom fields, so the fields match your setup.

A data dictionary for your Odoo

Ask Claude

Use the dataddo server to describe every replicated Odoo entity, then write docs/odoo-fields.md listing each field with its type, custom fields marked.

A finance engineer runs Claude Code in the reporting repository, so custom fields are documented from the real schema of this instance instead of from memory.

Daily review of changed invoices

Ask Claude

Which records in the Odoo invoice flow have Last Updated On since yesterday, and how did their monetary totals change per customer?

Each morning the accountant asks Claude what moved overnight in the replicated invoice model, and checks the larger changes before the day's reconciliation work.

Group totals across companies

Ask Claude

Sum the monetary total field per company for September across the companies our custom filter includes, and show the swing against August.

With a custom filter that pulls several companies, the group controller gets monthly totals per company in one answer and asks about the biggest movements.

Odoo datasets you can use in Claude →
Pricing

Free during private pre-release.

Data to AI™ is free while in private pre-release. We onboard teams in waves and shape the product with their feedback. At launch, it will be priced like the AI assistants your team already uses. Need tailored contracts or volume pricing? Talk to us about Enterprise.

Data to AITM

Serve governed business data to Claude, ChatGPT and other AI tools over MCP.

Private pre-release

Free during pre-release

Enterprise

Flexibly deploy Dataddo in any cloud or hybrid environment.

Custom

We have a payment model that works for you

See all plans and features →
With vs. without

Odoo in Claude, with and without Dataddo

Without Dataddo With Dataddo Outcome for you
Getting Odoo data into Claude Someone exports a list view per model from Odoo and attaches the file to a Claude chat, one model and one company at a time. Claude reads each replicated Odoo model through the Dataddo Data Access connector, with the columns you picked, custom fields included. No list view exports
Instance-specific fields Claude sees raw column names from your instance and guesses what a custom field or a many2one value means. Claude calls describe_entity first and gets every field of your model with its type, so answers use your own field names. Fields read as defined
Duplicate records Duplicates caused by Odoo pagination slip into exported files, and totals in the chat come out too high. Filter the source on Last Updated On, as the docs recommend, and add dataddo_hash as a natural key for upserts. Totals without double counts
Claude Code on the same data Developers request a fresh Odoo export whenever they need to check a field name while writing reporting code. Claude Code reaches the same replicated models after claude mcp add, signing in with /mcp or claude mcp login dataddo. One source for chat and code
Token consumption Claude spends tokens exploring raw Odoo columns, sampling rows and retrying until it understands the data. Field definitions and relations are supplied up front, so the model skips the exploration and goes straight to the answer. Less tokens per answer
Answer quality Prone to wrong joins, invented fields and numbers that are hard to check. Answers grounded in defined fields. In the Dataddo benchmark, 78.5% of questions were answered correctly, against 65.5% with plain CSV files. Better answers
Datasets

Odoo datasets you can use in Claude

The Odoo datasets finance and RevOps teams use most, with their real field names. Claude queries them by name through the Dataddo semantic layer.

Odoo Table Replication (one model per source)

  • model
  • columns
  • language
  • date_range_field
  • custom_filter

Date range fields

  • Created On
  • Last Updated On

Replicated field types

  • monetary
  • float
  • date
  • datetime
  • many2one
  • selection
  • char

Dataddo metadata columns

  • dataddo_hash
  • dataddo_extraction_timestamp

Runs on your schedule. Each run reads a relative window on the date field you choose, such as Last Updated On, and a full data re-sync loads older records.

Odoo connector →
Benchmark

More right answers. Half the confident mistakes.

We asked 43 pre-registered questions of three real datasets - Google Search Console, HubSpot deals and Google Ads - and delivered the same rows to the same model in four ways. Only the data layer changed.

78.5%

of questions answered correctly - the best of the four delivery methods tested

2x

fewer confidently wrong answers - 14.0% of runs against 24.0% and 26.3%

2.8x

more correct answers on messy CRM data - better on 8 questions, worse on none

Answered correctly All 43 questions - higher is better
Wrong, but stated as fact Share of runs - lower is better

Same model, prompts and rows in every condition; 759 graded runs, ground truth frozen before any run. On Google Search Console alone, documented CSV files did as well as Data to AI™ - the advantage comes from messier data such as HubSpot deals.

Read the benchmark →
FAQ

Odoo and Claude: FAQ

How do I connect Odoo to Claude?

Authorize Odoo in Dataddo with your host, username, password and database, then create one Odoo Table Replication source per model you need, such as your invoice model. Attach the flows to a Claude destination or AI Model, add https://headless.dataddo.com/mcp-data as a custom connector in Claude, or run claude mcp add in Claude Code.

Which Odoo data can Claude see?

Only the models you replicate. Each Odoo source covers one model of your instance and the columns you tick, custom fields included. Claude reads them once the flow is attached to an AI destination or AI Model and has run.

Why do Odoo field names in Claude differ from another company's setup?

Fields come from your own instance, and column labels follow the language set on the source. Ask Claude to describe the entity first so it uses your real field names and types in every answer.

Does Claude Code work with the Odoo data?

Yes. Register the server with claude mcp add, sign in with /mcp or claude mcp login dataddo, and Claude Code can describe and query the replicated Odoo entities from your terminal.

Claude shows duplicate Odoo records. What should I do?

A bug in Odoo's pagination can cause duplicates. Set the date range field to Last Updated On, add dataddo_hash as a natural key, or ask the Dataddo Solutions Team to help load the additional values.

Can Claude answer for more than one Odoo company?

Yes, if the source extracts them. By default only the selected company is extracted. Add a custom filter on the Models and columns step to include other companies, then ask Claude per company.

What does my Odoo subscription need?

The Dataddo docs ask for a custom plan that includes access to the Odoo API. Without API access, Dataddo cannot extract the data Claude would query.