AI makes up wine facts. So we gave it real data.

AI makes up wine facts. So we gave it real data.

Ask any AI assistant how many points a particular Bordeaux wine scored in the 2024 vintage. You will get an answer. It will sound confident, it will have the right shape — and it will be invented. Not because the model is stupid, but because those numbers are nowhere on the open web. En primeur notes are written in April, at the barrel, in Bordeaux; whoever has them keeps them behind a subscription.

This is part two of the series Building bordeaux.guru. In part one we built the data layer: living maps of fifteen appellations, a climate database from ERA5 and a vintage radar that updates itself every week. This part is about what you do with a layer like that — how you open it so AI can take the data itself, without it slipping out of your hands.

Two interfaces, one data layer

One decision holds up everything else: the data gets exactly one gate. Not two implementations, not "this one for the website and that one for the API". One process, one set of tools, one set of rules about who may see what.

Two consumers sit on top of that gate:

Architecture diagram — the database, 11 tools with gating above it, and two interfaces on top: /mcp for other agents and /chat for the Ask the Guru widget

It looks like a needless extra layer. It is not: this is exactly where it is decided who sees what, and because it is the only such place, it cannot be dodged by picking a different door.

Ask the Guru — sample conversation: a question about the Pontet-Canet 2024 score and an answer from the real tasting note

You can see it is the same data layer right there: 95 points, tasted 7 April 2025, "a big surprise of the vintage". That is not text a model made up. It is a note from the database, only retold.

What is actually in the data

For wine people this is the more interesting half. Four kinds of data sit in the database, and each came about differently:

Dataset catalogue on bordeaux.guru — daily appellation climate, first-hand tasting corpus, vineyard boundaries, named plots

This is what the answer looks like when an agent asks for a climate comparison — four appellations, three seasons, none of it estimated:

Chart from compare_climate data — days above 30 °C and rainfall for Pauillac, Margaux, Pomerol and Saint-Emilion across the 2024, 2025 and 2026 seasons

And the 2026 season is still running — the figures stand at 23 August, 140 days instead of a full 214. Even so it already has more hot days than the two previous seasons combined, on roughly a quarter of the rain that fell in 2024. That is exactly the kind of connection nobody can google about a wine.

That last one is also the hardest. Parcel-level varieties are not public anywhere. The French CVI register, which holds them, is a fiscal secret. The only route is digitising the maps an estate publishes itself — by hand, château by château.

How to connect it

The server is remote, so there is nothing to install. You need a single address: https://mcp.bordeaux.guru/mcp.

How to connect the MCP server — Claude desktop and web, Claude Code, any other client with a configuration JSON

Then you ask in plain language — "how did the 2026 season in Pauillac compare with 2024?", "which varieties does Gazin grow on which parcels?" — and the assistant picks from eleven tools by itself. You never need to know they exist.

Eleven MCP tools grouped into en primeur tastings, climate and phenology, terroir and parcels

What you get for free, and what you do not

I wanted to be tediously specific here, because "free tier" can mean almost anything in practice.

Access table — what the server returns without a key and what it returns with a Cellar member key

With no key and no account you get every score, profiles of châteaux, appellations and vintages, Pauillac climate for the latest season, terroir, and samples of named plots and parcel varieties. Twenty calls a day per address, at most five a minute. For tasting notes you get the score and the opening line — the full text is a membership matter.

If you want to read a full note for free, there is another route: Ask the Guru on the site gives every signed-in visitor one sample note a day from a curated set of eight wines. Registration is free and takes no card.

Gating belongs in the data, not in the prompt

This is the architectural decision I cared about most, and it is worth explaining, because it can easily be done badly.

The tempting route is to write into the system prompt: "only give full notes to members". It works. It looks finished. And it is worthless, because a prompt is just text, and text can be talked around. Sooner or later somebody finds the right phrasing and the model happily hands over what it should not.

So the gating is not in the prompt at all. It sits one floor down, in the data layer: the tool itself will not return a full note to anyone who is not entitled to it, no matter what the model asks. The model gets a teaser because nothing else exists. It cannot leak what it never received.

Two architectures side by side — gating in the prompt versus gating in the data layer, step by step

The same logic covers things that must never leave at all — audio transcripts from tastings, wholesale prices, verbatim brochure text. No tool, no route, no exceptions.

The registry: we are not alone, but we are different

Since 23 August 2026 the server is listed in the official MCP Registry as guru.bordeaux/en-primeur. The namespace is the domain reversed — that is what the registry requires, and ownership is proven by a DNS record, so nobody else can register a server under our name.

I expected to be the first wine server in the registry. We are not. When I actually checked, I found five: a wine catalogue, a home-cellar manager with a hundred thousand wines, a directory of thirty-two thousand wineries for visitors, a guide to no- and low-alcohol drinks, and a concierge for one German estate.

The difference matters more than being first, though: all of them aggregate, we measure and taste. A catalogue will tell you Pontet-Canet is Pauillac. None of them will tell you what the 2024 vintage scored, when that estate picked, how much rain fell between flowering and veraison, or which variety grows on which parcel. That data is not borrowed — somebody either measured it or drank it.

Four things it taught me

What is next

The nearest thing is a personal key for Cellar members — a connection that sees everything, with five hundred calls a day. Then streaming answers, so the assistant writes as it goes instead of staying silent and then producing a whole paragraph at once.

But the more interesting question is a different one. Once your data is available to AI agents, the website stops being the only place people meet you. Somebody asks their assistant about the 2025 vintage in Saint-Julien and the answer comes from us — they just see it in an entirely different window. That is why every answer from the server carries attribution and a link to the source page, in the language you asked in.

Whether it leads anywhere, we will know in a few months. So far it is the cheapest distribution channel I have ever built: one JSON file, one DNS record, and data nobody else has.

The MCP server runs at mcp.bordeaux.guru, connection instructions are at bordeaux.guru/mcp-server, the dataset catalogue at bordeaux.guru/data. Built on .NET 10, the official C# SDK for MCP and Claude. Have your own experience opening data to AI agents? Message me on LinkedIn.