Same silo, new interface
SaaS spent 20 years selling silos. Agents and MCP finally give us a way out, and the incumbents are pulling everything back into their own box. The silo was never the database. It was the meaning.
By Craig Tracey ·

For about twenty years, SaaS has been siloed. That wasn't an accident. It was more or less the business model.
Each vendor owns one slice of the customer. The CRM owns the deal. The helpdesk owns the tickets. Billing owns the invoices. Product analytics owns usage. Each one has its own IDs, its own fields, and its own idea of what an "account" is.
And, getting those slices to agree? That was always your problem.
So we built an entire economy around it. iPaaS to move records between systems. RevOps headcount to reconcile them. Warehouses to copy everything into one place so somebody could finally write the query. Every company paid for it, and most of them are still paying.
Now, for the first time in a long time, there's a real way out. Agents can work across systems. MCP gives them a standard way to reach into those systems. The walls are a lot thinner than they used to be.
So, naturally, the incumbents are building new walls.
What shipped this month
Salesforce's Winter '27 release went GA on October 12. Agentforce gets curated memory, persistent context that carries across conversations, with the platform handling "memory curation, retrieval, and context injection behind the scenes." It also gets third-party agent orchestration, so Agentforce can orchestrate agents from AWS, Azure, Google and others over A2A, or act as a subagent when someone else is orchestrating.
On October 8, Microsoft made 30 pre-built CRM skills generally available in Copilot Cowork, working across more than 180 tools in Dynamics 365 Sales, Customer Service, and Customer Insights, exposed over MCP. And, Microsoft is clear about where it thinks the center of gravity is: those Dynamics 365 apps "remain the systems of action."
Both of these are real, useful work. I'm not here to dunk on them.
But, read them together. Agents should work across everything. MCP is great. And, the memory, the orchestration, and the system of action should all live with us.
Every CRM vendor now agrees the customer lives outside the CRM...they just each think the answer is their own CRM.
Shocker.
Same silo, new interface.
The silo was never the database
This is the part I think most people miss.
We tend to talk about silos as a data problem. The records are in different databases, so connect the databases and the silo goes away. That's what iPaaS promised. That's what the warehouse promised. That's what a lot of people now assume MCP delivers.
But, access was never really the hard part. You could always get the data out. The hard part was knowing what it meant.
Which record in the CRM is the same company as which organization in the helpdesk and which customer in Stripe. Whether "P1" in one system is the same claim as "Urgent" in another. Whether the account owner field is current, or was current in 2023.
And, sometimes, what a color means.
I even spoke to a customer whose CRM encodes vertical as a color. Not "Healthcare" or "Fintech"..."red," "blue," or maybe even "mauve."
Good luck to the agent that has to figure that out from memory.
And, mauve isn't a one-off. Another customer told me their ERP was designed almost 20 years ago and in some places has "interesting" data fields.
That's the silo. The meaning lives inside one system, or more often inside a few people's heads, and nothing outside that boundary knows how to read it.
MCP can hand an agent the field. It can't tell the agent what mauve means.
Moving the silo into an agent makes it faster
So what happens when you give an agent access to all of this, and let each platform's agent work it out on its own?
You don't break the silo. You make it faster.
Agentforce figures out (or guesses) what mauve means and remembers it. Copilot, reading the same data through a different set of tools, guesses differently. Your support team's agent has a third opinion. Each one is confident. None of them are comparing notes.
Before, a silo was slow. A human hit the wall, filed a ticket, asked someone in RevOps, and eventually got an answer. Annoying, but it gave somebody a chance to notice. Now the agent hits the wall and keeps going.
That's where curated memory comes in.
Where curated memory fits
The problem is that memory is not context.
Memory is a record of what an agent saw at some point. It doesn't know when that thing stopped being true. The champion left. The contract was amended. The account got merged into its parent. The escalation closed yesterday. The memory still says what it said.
And, once an agent is acting on its own, those mistakes compound. A stale assumption informs an action. That action becomes new memory. The agent then uses its own mistake to justify the next one.
Now do that across every platform at once.
Curation doesn't fix that. Curation decides what's worth remembering. It doesn't tell you whether it's still true, or whether it was ever true for the customer you think it was about. A well-curated wrong answer is still wrong. It's just tidier.
Now give every platform its own curated memory of the same customer. You'll have several agents, each one sure it's right. It's not.
And, orchestration doesn't reconcile any of that. When Agentforce hands work to an agent on another cloud, the task travels. Maybe some context travels. But, the receiving agent still has its own memory and its own view of who this customer is. Orchestration moves the work around. It doesn't move the meaning.
That isn't institutional memory...it's organizational chaos.
What actually breaking the silo takes
If the silo is the meaning, then breaking it means the meaning has to live somewhere no single vendor owns.
That meaning is organizational. It needs to survive the person, agent, model, and workflow that discovered it. It needs to be available to everyone who is authorized to use it. And, when the organization learns something new, every agent operating from that context needs to know what changed.
In plain terms, that's four things.
Knowing which records are the same customer. The account in the CRM, the org in the helpdesk, the customer in billing, the tenant in your product. Different IDs, different names, sometimes different domains. If you can't say these are one entity, every agent is reasoning about a slightly different company.
Knowing where each fact came from. Which system said it, which record, and when it was observed. If two systems disagree, you want to see both claims and their sources, not a winner someone picked in a sync job years ago.
Knowing when it stopped being true. Owners change. Contracts get amended. Tickets close. Without history you can't tell "is" from "was," and that difference is most of what matters in a renewal conversation.
Knowing who's allowed to see it. Permission has to follow the fact, not whichever agent happened to remember it.
None of that is exotic. It's what a good ops person does in their head every day. The problem is that it lives in their head.
And, when it stays there, it costs real things. One customer had custom internal tools that only some people used. Salespeople would go onsite with a customer without even a basic understanding of where the account stood...a total waste of time.
For another customer, messy data has kept them from rolling out a new website for years.
A website.
And, none of it can belong to one platform. Your support data doesn't live in your CRM. Neither does billing, usage, or whatever lives in the custom internal tool only some of your team actually uses. Every platform sees its own records clearly and everyone else's through a connector. So, every platform's version of the customer is shaped by what it sees best, which is itself.
The stack will keep moving, too.
The agent can change. The model can change. The memory implementation can change.
The business still has to mean the same thing.
What we do at SixDegree
This is the problem we've been building around.
SixDegree resolves identities, relationships, observations, history, and provenance across the systems you already run. We don't sync data into another system of record, and we don't ask you to move everything into our box. Each source stays authoritative for what it owns. What we add is the layer that says these records are the same customer, this is how they relate, this is what each system observed and when, and this is who's allowed to see it.
That layer is independent of the model, the agent, and the person asking. Agentforce can use it. Copilot can use it. Your own agents can use it. A human in a pipeline review can use it. Everyone gets the same answer, with the same sources attached.
We've written about what this looks like when support and the renewal forecast disagree, when Gainsight and Salesforce report different health for the same customer, and why governance falls apart when agents don't share your view of reality.
Access is not integration. Integration is not understanding.
And, an agent without provenance is just a confident guess with a workflow attached.
FAQ
Doesn't MCP break down SaaS silos?
It breaks down access. An agent can now reach into the CRM, the helpdesk, and billing through a standard interface. It still doesn't know that three records across those systems are the same customer, or what a field like 'mauve' means. That's where the silo actually lives.
What is Agentforce curated memory?
Persistent memory for Agentforce agents, released with Salesforce Winter '27. The platform decides what to keep from prior interactions, retrieves it, and injects it into the agent's context, with a console where users can review and edit what's stored. It's useful. It's also scoped to Agentforce.
Why not just make our CRM the system of action?
Because most of what tells you how a customer is actually doing doesn't live in the CRM. Support, billing, usage, and contracts each own their part. Pulling all of it into one vendor means picking which field wins and losing where each fact came from.
Isn't this just another integration platform?
No. iPaaS moves records between systems. SixDegree doesn't push records from one system into another or replace any of them as the record. It resolves which records refer to the same thing, how they relate, and where each fact came from, so any agent or person can work from the same understanding.
Book a working session
If you've got agents on more than one platform and you're starting to wonder which one actually understands your customers, let's look at it together. Book a working session and bring your mauve.
See SixDegree on your stack.
Tell us where to reach you and we will set up a walkthrough against your own systems.
Keep reading

The escalation your renewal forecast cannot see
Support knows the account is unhappy. The forecast does not. The two systems hold the same customer under different identifiers and never compare notes.

When Gainsight and Salesforce disagree about the same customer
Why Salesforce and Gainsight customer health data disagree, when syncing destroys useful signal, and how to keep each value tied to its source.

Contracted revenue says one thing. Billing says another.
The CRM records what was sold. Stripe records what is being invoiced. When those diverge, the gap is usually a real event nobody logged.