Ask an AI agent whether a supplier is still in business, or for a company's registration number, and you'll usually get a fluent, confident answer. Sometimes it's right. When it's wrong, it's wrong in a few predictable ways. This guide walks through three of them with real examples you can reproduce yourself, and shows how an answer that carries its source and check date fixes each one.
We don't quote any chatbot's output here. The examples use public French data: the State's company search API (which powers the Annuaire des Entreprises) and the official records in our demo data, checked between 6 and 8 October 2026.
What you'll learn
- The three most common ways agents get company facts wrong
- A real, reproducible example of each
- Why "source and date" is the fix, and what such an answer looks like
- A short checklist for anyone building an agent that handles company data
1. Stale status
A language model learns from text collected up to a cut-off date, then keeps answering long after. Companies don't stand still: they cease, merge, move and rename. An agent answering from what it learned is answering about the past, without saying which past.
A real example. PEUGEOT SA (SIREN 552 100 554) was one of France's best-known company names for decades. In the official Sirene data, it has been ceased since 16 January 2021. Any text written about it before then describes an active company, and there's a lot of that text. An agent that answers "Peugeot SA is an active French company" isn't inventing anything: it's repeating something that used to be true.
You can check it: search 552 100 554 on the Annuaire des Entreprises and look at the status and its date.
The fix: an answer with its check date. A status is only meaningful with a date: "ceased, according to Sirene, as of 16 January 2021, checked on 6 October 2026". The agent should get that from a live source at the moment it's asked, not from memory, and pass the date on.
2. Wrong entity
Company names aren't unique. Many companies share a name, or nearly do, and a name in a question rarely says which one is meant.
A real example. A name search for "renault" in the French State's company search API returns 10,000 results, the most it reports. The first five are all named exactly RENAULT, under five different SIRENs, and none of them is the carmaker (SIREN 441 639 465). An agent that takes the first match, or blends several, will confidently describe the wrong company.
The fix: look up by number. A number identifies one company; a name doesn't. An agent should ask for the SIREN, SIRET or registry reference when it can, look up by that number, and, when it only has a name, show several candidates with their addresses rather than pick one silently.
3. Invented numbers
Language models are good at producing text that looks right. A SIREN is nine digits; a model asked for one can produce nine digits that look like a SIREN and belong to no one, or to someone else.
A real, checkable fact. A SIREN's ninth digit is a check digit (the Luhn algorithm, per INSEE's definition of the ninth digit as a validity check). A made-up nine-digit number fails that check about 9 times in 10. The tenth time, it passes and still belongs to no one, or to an unrelated company.
The fix: validate, then look it up. Never let an agent output an identifier that didn't come from a tool. Check the format and check digit first; then look the number up to confirm it exists and matches the name. Our tutorial on SIREN, SIRET and VAT formats has the validation code.
What "source and date" looks like
All three fixes come down to the same thing: the agent should answer from an official record fetched when asked, and pass on where it came from and when. Here's part of the real record our demo data holds for Renault:
{
"name": {"original": "RENAULT"},
"status": {"value": "active", "original_label": "Active", "as_of": "2025-12-06"},
"provenance": {
"source": "fr_recherche_entreprises",
"source_url": "https://recherche-entreprises.api.gouv.fr/search?q=441639465&per_page=1",
"license": "Licence Ouverte / Etalab 2.0 (Annuaire des Entreprises, INSEE Sirene); officers: INPI RNE reuse licence",
"last_verified_at": "2026-10-06T10:20:27.698766Z",
"source_updated_at": "2026-10-05"
}
}
With that, an agent can say: "Renault (SIREN 441 639 465) is active according to the Annuaire des Entreprises, checked on 6 October 2026." Each part of that sentence can be checked by a person. If the source didn't state something, the honest answer is "unknown", and the agent should say so rather than fill the gap.
Fuentio will serve these records to agents through an MCP server and a REST API. Several other company-data providers also offer MCP servers; what matters, whichever you use, is that the answers carry their source and date.
A checklist for agent builders
- Give the agent a tool for company facts, and instruct it to use the tool rather than its memory for status, numbers and addresses.
- Prefer numbers to names. Ask for an identifier; when you only have a name, return candidates, not a single guess.
- Validate identifiers locally before any lookup, and never let the agent print one the tool didn't return.
- Pass the source and date through to the final answer, word for word.
- Keep "unknown" as an answer. Tell the agent explicitly that "the source doesn't say" is acceptable.
- Test with hard cases: a ceased company, a common name, a mistyped number. If the agent handles those, it handles most.
For a broader look at building agents on company data, read AI agents and reliable company data; for the protocol itself, what MCP is. See what we cover in France and Spain.
Limits. The examples come from the French State's company search API and our demo data, checked between 6 and 8 October 2026; search results change over time. A source and a date make an agent's facts checkable; they don't make its decisions right. Fuentio returns register facts, not judgements about a company.
Frequently asked questions
Why don't you quote a real chatbot's mistakes?
Chatbot answers change from one day and one prompt to the next, so a quote can't be reproduced. The examples here can: anyone can run the same searches.
Does connecting an agent to a data source remove these errors?
It removes most of them if the agent actually uses the tool and passes on the source and date. Test it with the hard cases in the checklist.
What should an agent do when it only has a company name?
Search, then show several candidates with their addresses and numbers, and ask which one is meant.
Is "unknown" a failure?
No. When the source doesn't state something, "unknown" is the correct answer.
Sources
- The State's company search API (read 6–8 October 2026): recherche-entreprises.api.gouv.fr
- Annuaire des Entreprises: annuaire-entreprises.data.gouv.fr
- INSEE, definition of the SIREN number: insee.fr
