Why MotherDuck Refuses to Fork DuckDB

🔗 **Source:** [Why MotherDuck Refuses to Fork DuckDB](https://share.snipd.com/episode/36bf8a9a-ef32-4593-ab4d-1364ee0918aa)
## Highlights
- **DuckDB Is A Local-First Analytics Powerhouse**
- DuckDB excels as a high-performance, local-first analytical engine that often outperforms alternatives for many analytics tasks.
- Till Döhmen highlights DuckDB's zero-copy exchange with Python and its ability to process datasets larger than RAM by chunking rather than loading everything at once.
Transcript:
Alex Williams
Pandas-related problems. Now, that's DuckDB. What does Mother Duck bring to the table on top of it, and what was the original impetus, if you will, for building the company on top of this open source product that already has its own Foundation.
Till Döhmen
So people really like using DAGDB as kind of a drop-in replace. It's not fully drop-in, but as a replacement for things like Pandas or Polas, where just some analysts are really used to using SQL. Yep. And on top of the additional efficiency you get when using DuckTB, you also get the convenience of you can just use SQL. And you can always go back and forth between SQL and Pandas or Polas, whatever you like. There's a zero copy data exchange mechanism between the two, if you're on Python, for example. So there's this huge developer or analyst convenience aspect with DuckDB, but it's something we want to bring to a data warehouse, which is kind of a bit of a different target audience To the typical DuckDB users.
Alex Williams
Is that because the data sets are much larger and they're maybe more static and they might be full of... When I think about data warehousing, I think about the place to park all your stuff in the data context. So it's probably less organized. It's probably not all but as useful as other bits of data. So kind of a mishmash.
Till Döhmen
True, true, true. And there's one other important aspect that is you are typically using the data warehouse as an organization. So there's this aspect of multiple people having access to the same underlying data and all seeing the same ground truth of data. They don't have to share databases manually and whatever. There's a permissioning system. ([Time 0:04:21](https://share.snipd.com/snip/18690b90-e458-48b9-9801-a7358a09a90a))
- **MotherDuck Operates The Largest DuckDB Fleet**
- MotherDuck runs what Till calls the world's largest fleet of DuckDB instances and regularly pushes them to their limits in production.
- That scale gives the team real-world insights they share back with DuckDB Labs and the foundation to improve core behavior.
Transcript:
Till Döhmen
We are informing DuckDB Labs about things that we find because we are operating DuckDB. We're operating the largest fleet of DuckDB databases in the world, basically. So we really see what is happening in practice with a wide array of workloads in DuckDB and we really stretch it to the limits.
Alex Williams
Till, if I put on my hyper-capitalistic American hat and I think about you guys having this massive number of DuckDB databases, you see a problem, you see an issue your customers are Having, and you fix it internally, that makes Mother Duck as a platform and product more attractive compared to DuckTV vanilla because you've solved something that people are running Into in production. So what's the incentive to, instead of fixing something on your side, share that problem with the foundation and let them build what could be profit? Yeah. Because you are a venture-backed company.
Till Döhmen
This matters. True, true, true. The thing is, or the important detail is maybe we are not making changes, we're not forking DuckDB. So we are building a DuckDB extension and in that extension go things that are very MotherDuck specific. For example, we have a different query planner because as opposed to vanilla DuckDB, we don't execute the query only on the client. We also have a server-side component of the execution engine. So we have to hook into the, in our extension, DuckDB has a fabulous extension mechanism. And that's the thing we are using to extend the DuckDB query planner with certain aspects that we specifically need for MotherDuck. But if we encounter things that are in DuckDB core that we would like to change, this is something we also only fix in DuckDB core. ([Time 0:09:34](https://share.snipd.com/snip/eb634240-b591-448f-a512-5eb44cd90f97))
- **Extensions Over Forks Preserve Upstream Health**
- MotherDuck avoids forking DuckDB core and instead builds an extension to add server-side execution and a custom query planner.
- Till explains they use DuckDB's extension mechanism for MotherDuck-specific features while contributing core fixes upstream.
Transcript:
Till Döhmen
So we are building a DuckDB extension and in that extension go things that are very MotherDuck specific. For example, we have a different query planner because as opposed to vanilla DuckDB, we don't execute the query only on the client. We also have a server-side component of the execution engine. So we have to hook into the, in our extension, DuckDB has a fabulous extension mechanism. And that's the thing we are using to extend the DuckDB query planner with certain aspects that we specifically need for MotherDuck. But if we encounter things that are in DuckDB core that we would like to change, this is something we also only fix in DuckDB core. There is no aspect of us forking and diverging the DuckDB Core. ([Time 0:10:42](https://share.snipd.com/snip/6669a102-bae2-4abc-8a9f-23a1b5839eb5))
- **Bring Agents Into Existing Workflows To Unlock Value**
- Integrate agent protocols like MCP into existing user workflows to accelerate adoption rather than forcing users to change tools.
- MotherDuck shipped an open-source DuckDB MCP server and then a hosted remote MCP so business users could access data via agents in their existing chat clients.
Transcript:
Alex Williams
And I wanted to understand why it's such an important connection that you're here.
Till Döhmen
Yeah. So we developed a local mcp server i think a couple of weeks after the spec uh got released uh it's it's like 14 15 months ago now it feels like an eternity yeah yeah uh it feels much much longer But that's that's how it started and i think for the first three quarters after we launched it it was more like some people picked it up who were like curious. It's also a DuckDB MCP server, by the way. So we are basically maintaining an open source MCP server that Mother Deck users as well as DuckDB users can use. So we saw a lot of usage also from DuckDB community. But then in November, we launched the remote, December, we launched a remote MCP. So fully hosted by us, MCP version. And that's where really the kind of business users starting using the MCP together with clients like Claude that they were already using in a day-to work. ([Time 0:13:06](https://share.snipd.com/snip/d8b02155-cc6e-45ca-999c-986a733c9ac8))
- **Agents Turn Raw Data Into Superpowers For Business Teams**
- Providing agents direct access to raw warehouse data dramatically empowered nontechnical teams to answer exploratory questions without analysts or dashboards.
- Till notes sales and finance users began using MCP agents to fetch partner data and build recurring checks that previously required analyst requests.
Transcript:
Till Döhmen
Think I can just speak for myself. So if I speak for myself, I really underestimated the kind of excitement and the unlock that people felt once they had access through the agent to the raw data. We are managing our own. We also have an internal data warehouse that happens to be also hosted on Matadak or it happens to be a Matadak data warehouse. I'm shocked.
Alex Williams
If it was Pandas, that'd be really funny. Like, oh no, we don't actually eat this. We just sell it.
Till Döhmen
Right, right. So people from the sales side, financing side, you know, they started suddenly using the MCP instead of going to dashboards or to asking analysts.
Alex Williams
They're accessing this via the agents they've already spun up. So essentially, between Mother Duck on top of DuckDB, this bridge to MCP, and then the agent, they can tell an agent, the sales guy, and it can go all the way back to the data warehouse and Pull the partner data and go all the way back. Exactly. That was like a superpower for those people who previously probably had to go ask the data team to pull stuff for them. Exactly. Talk about cutting waste. They know the data is there, but it's very difficult to access it in a way that is useful.
Till Döhmen
Of course, there are dashboards, but often the questions, and that's, I guess, one of the key insights. The really important questions are not answered by the dashboards yet. They're more exploratory. Oh, I wish I could just quickly look into this. And those are tasks that usually they would, they're too small to really bother about, you know, creating a dashboard for, but in the accumulation, they are so, so important for those People to be able to ask. ([Time 0:14:30](https://share.snipd.com/snip/1b11e0ed-4e4a-40b6-82a3-e4b0b8c20932))
- **Join Standards Groups To Shape Agent Protocols**
- Participate in community governance and interoperability efforts to shape protocols rather than building isolated proprietary stacks.
- MotherDuck joined the Agentic AI Foundation and an MCP database interest group to share learnings and help evolve the protocol collaboratively.
Transcript:
Till Döhmen
Part of the reason why we joined the Argentic AI Foundation also earlier this year. So we are a silver of the AIF.
Alex Williams
It's the Agentic AI Foundation. A-A As Jim from the Linux Foundation told me, don't say that. Just say it out. Say the words.
Till Döhmen
It's much better. You should have told me that. So that was a step for us to get basically share our learnings with the community, but also learn what the rest of the community is thinking, where things are heading. And yeah, it's been a great platform. For example, there's also an interest group specifically for databases that we want to participate in. So you're really quite close to the development of the protocol. And it's, there's still, it feels like even though MCP is there and it's working, as we are getting more and more, we're really building a product experience here, like based on MCP. So, and that makes, yeah, it's just, there's still room to evolve the protocol beyond where it is right now. ([Time 0:19:10](https://share.snipd.com/snip/aa34a327-711e-4f46-a6a2-14140f9ed545))
- **Favor Interoperability Over Monolithic Tooling**
- Prioritize interoperability when deciding whether protocols should expand or new tools should be built to avoid fragmentation.
- Till recommends meeting users where they are by adding connectors and MCP apps rather than forcing a single monolithic tool.
Transcript:
Till Döhmen
For me, it's all about interoperability. So whatever, essentially, we want to bring our product as close to, we want to meet users where they are, essentially. And with this example I mentioned earlier with our sales side working in Cloud already. So it was already part of the workflow. If we add our connector there, it's right in their path. They don't have to change the way they work to start using Matadoc. The path has been cleared. You're just adding another lane. And when next year it's going to be a different protocol or it's going to be a different way, maybe CLIs or whatever. That turns out to be the fundamentally better way to go about these things. I think we're fine or the entire community might be fine with just evolving into something different. I don't want to speak for everyone here, but I think the main goal is the end. In the end of this is interoperability with agents. And currently it seems to be like MCP is solving a lot of the problems that we initially had. And MCP apps was a very great addition, I think. And then in my eyes, this gives us like customizable UIs right in those chats that I was talking about earlier. ([Time 0:20:50](https://share.snipd.com/snip/ae628c51-34fa-4b7b-8619-ca65a3649731))
- **EU Research Produces Innovations But Grants Create Friction**
- European research labs like CWI produce deep technical projects (Python, DuckDB) but funding tied to grant cycles creates bureaucracy that hampers long-term research continuity.
- Till contrasts base-funded national institutes with project-driven grant models and calls for more industry collaboration to free researchers.
Transcript:
Till Döhmen
So, again, I can just speak from my personal perspective to give some context. I was very fortunate to do my master's in Amsterdam and ending up at the CWI, which is the National Research Institute in the Netherlands for Computer Science and Mathematics. And it's the birthplace of Python. Yeah, I met Guido van Rossum a few weeks ago in San Francisco. And it was just like so, yeah, amazing to kind of connect the dots, you know, of kind of a bit the shared history. You know, we have been to this place in the Netherlands where not only Python originated, but also projects like DuckDB. Yeah. Yeah. And it's really a breeding ground for innovation. And it's a very, I would say, it's a quite rare setup. Because a large part of the European research ecosystem is funded through research projects. Yeah. So you have to apply for grants. And you have, like, someone has to review those things. And has to decide whether that fits into the EU-wide research agenda. I'm hearing time delays, committees. Exactly. And also kind of bending things to the way you think the committee that reviews it might like it. So you're managing up. Exactly. And that's where a lot of, that's my feeling, a lot of energy is kind of being wasted. So when I think about the CWI, as is National Institute, it's very unfortunate to have a big fraction of basically base funding that is not tied to projects. So it's just budget, which is there for positions that are not tied to a specific project, which frees up researchers there from the burden to go through all this. And every year having to be afraid it might be the last year if we don't get another funding round for this specific project. ([Time 0:23:13](https://share.snipd.com/snip/e5b3a4b3-1093-4dd9-a52d-23c112afe747))