The Demo Is Magic. But Data Kills the Project: The Composable AI Fix.
Blog
•
4
Mins
Share


The Demo Is Magic. But Data Kills the Project: The Composable AI Fix.
A former Lululemon exec wrote an op-ed in the Times about why AI pilots die inside big companies. One line stuck: the demo looked like magic, but the tool wanted clean, connected data. Their data was scattered across a dozen systems, and none of it matched. So the pilots failed, quietly, the way many do.
That's not a rare story. It's the default outcome when you point AI at data nobody normalized first. So instead of writing another post about why that happens, our Head of Product, Uri Bushey, put together a ten-minute demo showing the fix instead.
In ten minutes: raw purchase data in Snowflake normalized with a skill, an audience defined in one sentence and delivered to Snapchat, and a data partner evaluated before spending a dollar — using two different AI agents.
Watch it above. A few things worth remembering are below.
Pick the Pieces You Need, Skip the Rest
When Narrative relaunched its composable AI marketplace this spring, the idea was that companies shouldn't have to choose between speed, freedom, and ownership. In practice, that means the marketplace is one catalog — skills, an MCP server, data planes, connectors, data partners — and you take only what you need.
Skills are pre-built agentic workflows bundled with domain knowledge, and they run wherever your agent runs, not just inside Narrative's UI. The MCP server hands that same access to any agent that speaks the protocol. Data planes mean the work executes where your data already lives: in the demo, inside the customer's own Snowflake account, never moved, never copied out.
Nobody had to pick a single vendor's chat window and live there. That's the whole point.
Normalization Is a Skill, Not a Six-Week Project
Uri typed one prompt — "I want to normalize my CPG data" — and didn't mention a single skill by name. The agent picked the Generate Rosetta Stone Mapping skill on its own, read the dataset through the MCP server, and proposed a mapping from raw columns to standard attributes based on column names, statistics, and whatever metadata it could find.
Twenty-three raw columns became nineteen standard attributes. The agent proposed the mapping; a human approved it before anything ran.
This is the step the Times article was describing, minus the failure. A raw email column becomes a hashed identifier every downstream connector understands. A product category field becomes a standard purchase attribute any partner can match against. Normalize once, and every step after this works off the same schema instead of starting over.
One Sentence Replaces a Data-Team Ticket Queue
The next prompt: "I want to build an audience of supplement and vitamins purchasers and deliver it to Snapchat." Two skills chained automatically. Write NQL drafted and validated the query first — which only worked because the data was already speaking standard purchase attributes. Create Workflow took the validated result and wired it to the Snapchat connector.
There's no Snapchat-specific skill. The agent worked out the delivery mechanics from the connector itself.
Think about what that one sentence replaced: a brief to the data team, a SQL ticket, a hashing script, a manual upload. Normally days. Here, the data went straight from Snowflake through the connector into Snapchat Ads Manager, ready to target, inside one conversation.
See the Overlap Before You Spend a Dollar
Reach depends on identifiers — more phone numbers and hashed emails per customer means more reliable targeting. So the natural next question: can a marketplace partner fill that gap? Uri pulled up the Generate Match Report skill and ran a comparison against Infutor, one of the data partners in Narrative's marketplace.
The comparison ran inside the secure enclave in Narrative's Snowflake native app. Infutor never saw the customer file. Narrative never saw Infutor's raw records. All that came back was the answer, before either side spent a dollar. That's enough to decide with confidence.
Evaluating a partner like this used to mean sending a file over and waiting on a slide deck. Here, it took the length of a coffee break — and Infutor delivered a real, usable match.
The Skill Doesn't Care Which Agent Runs It
Here's the detail worth sitting with: Generate Match Report is a file, not a feature bolted to Narrative's chat window. Uri's data lives in Snowflake and his analytics team works in Snowflake, so he installed the same skill into Snowflake's own agent, Cortex Code, with one command.
The skill ran identically. Snowflake's agent used the Narrative MCP server to search the marketplace, pick the right identifier types, and submit the same report.
And when Uri asked, back in Narrative's UI, to see that match report rendered for humans, it was there. Every dataset, every workflow, every approval from both agents, inspectable in one place, regardless of which one did the work.
That's the payoff: a partner's data evaluated against your own, on real overlap numbers, before spending a dollar. When the numbers hold up, licensing that data is a click away in the marketplace.
The marketplace is public. The MCP server is generally available to every Narrative customer. Bring whatever agent you already use.
Explore related
Insights, stories, & resources for the teams building modern data infrastructure.

Blog
•
5
Mins
If You Don't Own Your Identity Infrastructure, You Don't Own Your Business




