I've spent months passively thinking about automating one of the most mundane tasks my wife and I do every week: meal planning. Finding recipes from our favorite cook books. Slotting them into a weekly plan so we know who's cooking what days. Turning that plan into a grocery list, and then balancing all of this with the stressors and time constraints of being parents of two children.
Last night I sat down with Adapt and built it. The whole thing took about thirty minutes. Two skills, both genuinely useful, both already part of our weekly routine, and integrated deeply into the tools we already used (Notion) and that just work. In this post, I'll share what I built, how it works under the hood, and where I still want to take it.
A quick hello before I dive in: I'm new to Adapt. I joined a couple weeks ago to lead Product and Engineering (more on the why here). I actually first built a rough version of these skills during my interview loop. Adapt asked me to go deep on a real product problem I cared about, and this seemingly mundane task that could be automated was the one I'd been thinking could be improved for months. I had such a good time with it that I ended up joining the team. This is the first of what I expect will be many posts on what we're building.
The shape of the problem
A problem like this is interesting because it isn't painful enough on any given Sunday to actually sit down and solve. It's just annoying enough that you keep thinking about it and it's an itch that I just haven't scratched.
Our workflow had three steps and, importantly, every single one was manual:
- Find recipes. Photograph a page from a cookbook or pull one off a website.
- Plan the week. Decide who's cooking what, on which night.
- Make the list. Combine the ingredients across every recipe, dedupe, and head to the store.
The closest thing I had to automation was a Gemini workflow that would leverage OCR (optical character recognition) to parse a cookbook photo into a nicely formatted recipe in plain text. That was useful, but it was also where the automation ended. From there I'd open Notion, create a new page, type a title, paste the ingredients, paste the instructions, fix the formatting, tag the cookbook, and so on. About five minutes per recipe, every recipe. Steps 2 and 3 were entirely on me too.
So in practice the workflow wasn't partially manual. It was manual end to end.
Skill 1: the recipe parser
Quick note on what "skill" means here, since it shows up a lot in this post: a skill is Adapt's reusable, invokable unit of work. Think of it like a named function you can call from any chat. And the meta thing, the thing that I keep finding delightful, is that I built both of these skills inside Adapt, using Adapt itself. Same conversational loop: describe what you want the skill to do, Adapt scaffolds the scripts and prompts, you iterate, and then you (or anyone in your org) can invoke it by name forever after. Natural language gets you quite far and it's a natural interaction pattern for humans since you know, we communicate and we generally sometimes communicate well.
The first skill takes a photo of a cookbook page and writes a clean, complete entry into our Notion recipe database.
I snap the photo, drop it into Adapt, and say "parse this recipe." Adapt OCRs the page, normalizes everything into a consistent format (title, effort, tags, cookbook, total time, ingredients, instructions), and creates the page in Notion. If the cookbook isn't already in our list of options, it adds it. If there's a sub-recipe, like the chipotle salsa for the avocado breakfast tacos we made this week, it folds that in too.

This sounds small, but the thing I care about most here is consistency. Across the dozen-or-so cookbooks we actually cook out of, the formatting in our Notion is uniform, consistent, and highly automated for efficiency. That makes everything downstream easier: searching, planning, and (eventually) the grocery list.
Skill 2: the grocery list
The second skill is for after the planning is done. (For now, the planning itself is still human-driven. There's something nice about my wife and I sitting down together to choose what we want to eat. I'm not in a rush to automate that part.)
Once the weekly plan is in Notion, I invoke the skill: "make my grocery list from the most recent weekly plan." Adapt reads every recipe in that week's plan, walks the ingredients, dedupes them, and hands back a single shopping list. "2 avocados." "1 13.5-oz can coconut milk." "Fresh basil." Done.

No more flipping back and forth between five recipes at the store trying to remember whether I need cilantro or not.
(PS: here's the resulting parsed recipe if you'd like to take a gander)
How Adapt actually works (a quick aside)
One thing I didn't appreciate until I joined was how much of Adapt's value is hidden in the model layer and intelligent model routing based on the use case.
When I say "parse this recipe" or "make my grocery list," I'm not picking a model or thinking about which model is best at that particular use case. I'm not configuring a system prompt. I'm not deciding whether this is a vision task or a structured-output task or a multi-step agent task. Adapt is doing that for me and all I am thinking about is getting the job done well.
Under the hood, Adapt does intelligent model routing: it reads the workflow and the intent signaled by the user, and picks the best flagship model for that specific task. The recipe parser involves reading a photo, extracting structured data, and writing into a third-party tool, that gets routed differently than a quick conversational follow-up. The user doesn't see any of this. You don't have to know — or care — which model is best at vision, which is best at long-context reasoning, which is best at tool use. You just describe what you want and Adapt provides flagship intelligence that just works for the task at hand.
This is one of the things I find most underrated about the product. The model picker dropdown is where most AI tools end up. Users shouldn't have to think about the model for the task at hand. We started one level higher: best intelligence, by use case, by default.
Integrations that just work
Before Adapt, I'd looked at doing this with Notion's MCP server. MCP is great in principle, an open standard for AI assistants to talk to tools, but in practice setting it up means installing an MCP client, editing a JSON config file by hand, walking an OAuth flow, and then per-page sharing inside Notion to actually expose your databases. Further still, when I've tried this workflow with Claude Code, MCP clients, etc. it fundamentally just doesn't work that well due to Notion's complicated blocks API and presumption that the MCP server exposes the appropriate functionality. With Adapt and our integration layer and sandbox approach, the API is the source of truth for the integration and LLMs are remarkably good at getting things done. It's caused me to start saying something internally: always best on LLMs as well as a mantra of this is the worst LLMs will be -- and they're already pretty amazing.
With Adapt the integration was three clicks. Connect Notion. OAuth. Done. Same workspace, same database, available to every chat and every skill from that point forward. No client to install. No config to maintain.
But the bigger thing, and this is the part I think people miss when they evaluate AI tooling, is what Adapt provides on top of the integrations. The grocery list skill isn't a single tool call. It reads every recipe in a Notion database, parses ingredients written by humans for humans (so "2 garlic cloves" and "four cloves of garlic, minced" need to collapse into the same thing), dedupes them, and writes the result back out. That's a small program, not a function call. Adapt runs it in a sandbox with the Notion connection already wired in, in the same turn as the conversation. MCP gives you tools. Adapt gives you tools plus compute plus the connective tissue to stitch them together into something that actually finishes the job.
That, more than anything else, is what "just worked" means here. Not "we have a Notion integration." It's:
- I described what I wanted, and Adapt read from Notion
- Ran (its own generated) code over the result, and
- Wrote back, without me ever thinking about how any of that was wired up
The workflow, solved
After creating these skills, adding these integrations, and experiencing the joy of technology that actually just worked I still wasn't content. There was one final piece that was still bothering me which is that we had our recipes in Notion, we had our weekly plan, but I still had to manually curate the groceries list by hunting and pecking through recipes in Notion like a modern caveman foraging for berries. So, I took it one step further and integrated Resend alongside a scheduled task that will check to see if the weekly meal plan has been filled out, and if so, will send a summarized list of the groceries and a one-click iOS/Mac shortcut to add them all to reminders.
An integration in Adapt is just anything that has an API and an API key.
Ultimately what is this all giving me? Well first and foremost, it's fun to build and will be forever fun to build. But perhaps more importantly it's giving me quality time back with my kids and wife to spend that time with them, be fully present, and not think about the mundane minutiae because I can let Adapt handle that for me with the universal agent that just does work and integrates flawlessly.
Closing the loop
The thing that struck me about this build wasn't the result, although the result is great. It was how short the loop was between "I've been complaining about this for years" and "this is solved." Thirty minutes. Two skills. A few integrations. A chore that has been sitting in the back of my brain for months that is now just handled.
This is the part of Adapt I find most compelling, and it's the same thing that pulled me to join in the first place. It isn't a chatbot. It isn't (just) a coding agent. It's a deeply integrated utility that just works with any integration that has an API (which is... like every integration), a model routing layer that uses the best available model for the given task at hand, and a compelling web UI and Slack agent to get work done. All of this combines to create what we're calling the universal AI agent for work: Adapt.
If you want to build something like this for your own household, your team, or both, give Adapt a try.
We are eager to see what you automate, integrate, and build.


