documentation/blog/2025-05-06-recipe-for-success/index.md
Ratatouille isn't just a heartwarming (and slightly unhygienic) film about a rat chef. It's also analogous to a popular tech trend: AI agents and the Model Context Protocol (MCP).
<!-- truncate -->If you haven't seen the movie, here's the gist: Remy is an incredible chef with all the know-how, but he's a rat, so no kitchen access. Linguini is a kitchen worker with full access but little cooking skill. Together, they form a symbiotic relationship: Remy hides under Linguini's hat and guides him on what tools to use and when.
If a customer orders fries, Linguini might freeze, but Remy scopes out the kitchen, sees what's available, and gives step-by-step instructions:
"Grab a knife and a cutting board. Now slice the potato."
Then, Linguini executes the plan.
Agentic systems work similarly. You have three core components:
The LLM is like Remy; it is full of knowledge and reasoning, but has no hands-on access. The agent is like Linguini; it can take action, but needs guidance.
If a user says, "Write some unit tests," the LLM analyzes the code and replies,
"Looks like JavaScript. Use Jest, create a test file, and import the module."
The agent follows the plan and uses tools like file.write() to get it done.
But Linguini's story doesn't stop there. Even with Remy's guidance, he's still clumsy, unsure how to confidently move through the kitchen. His boss, Chef Skinner, notices something's off. To help him improve, Linguini is paired with Colette, a seasoned cook who shows him how the kitchen works:
With Colette's guidance, Linguini understands the kitchen as a system. When a customer orders spaghetti, Remy quickly forms a plan:
"Boil the pasta, sauté the garlic and tomatoes, plate it with basil."
Instead of mindlessly following orders, Linguini is equipped to orchestrate the entire operation by:
That's how it works with AI agents that follow the Model Context Protocol(MCP). MCP shifts the agent from passive executor to active orchestrator, making it less reliant on an LLM and more aware of the context in which it's operating.
Goose is a local, open source AI agent that follows the structure of MCP.
MCP provides a standardized way for agents to interact with external data and services. It has three core components:
This architecture allows Goose to discover tools dynamically, understand how to use them, and orchestrate complex workflows across multiple systems.
When a user prompts Goose to "Gather all discussions about the authentication bug from last week," Goose orchestrates the operation. It coordinates tools, manages execution, and adapts on the fly by:
When something breaks, Goose doesn't panic; it pivots. For example, Goose might determine:
It's been 18 years since the movie came out, and I'd like to imagine that Linguini has surpassed his cooking era and stepped into his mentor era. Instead of training every new cook inefficiently, he's documenting his favorite dishes to make his knowledge shareable and scalable.
Similarly, Goose is a forward-looking AI agent with a solution for scaling knowledge through recipes. Recipes are complete orchestrations you can rerun, remix, or share, passing on knowledge to anyone who needs it.
Sharing a prompt doesn't always recreate the experience; AI is non-deterministic, and people may not have the same extensions or context configured. Recipes solve this by packaging your entire Goose workflow: the extensions, the setup, the goal, and example activities.
Let's try it: The link below is a recipe that lets you choose your favorite platform (GitHub, Bluesky, or Dev.to) and builds a custom, story-driven 404 portfolio page using your public content.
:::note The link above opens in the Goose Desktop app. :::
<details> <summary>View recipe ingredients</summary> ```yaml version: 1.0.0 title: "404Portfolio" description: "Create personalized, creative 404 pages using public profile data"instructions: | Create an engaging 404 error page that tells a creative story using a user's recent public content from one of the following platforms: GitHub, Dev.to, or Bluesky. You do not need to use all three—just the one selected by the user.
The page should be fully built with HTML, CSS, and JavaScript, featuring:
Use platform-specific methods to fetch recent user content:
app.bsky.feed.getAuthorFeed) to pull posts, replies, or likes.Incorporate the fetched data into a compelling narrative (e.g., “Looks like this page is missing, but [username] has been busy!”), and display it using engaging visuals like cards, timelines, or media embeds.
Wrap the user’s activity into a story — for example:
“This page may be lost, but @username is building something amazing. Their latest open source journey involves a new repo that’s gaining stars fast…” “You won’t find what you’re looking for here, but you will find @username’s hot take on async/await in their latest Dev.to post.”
The result should be a small narrative-driven microsite that dynamically celebrates the user's presence online—even when the destination is missing.
Ask the user:
Then generate the complete code in a folder called 404-story.
activities:
extensions:
</details>
---
## Reusable Agentic Workflows
Here are a few different scenarios where recipes come in handy:
### Onboarding a New Teammate
Typically, when a developer joins a team, they spend hours setting up their environment, figuring out which platforms to use, and decoding the unspoken rules of how things get done.
Instead, hand them a recipe. With preloaded context and the right tools, it can automate local setup, surface relevant docs, and walk them through your team's workflows, without a single screen share.
### Hosting a Workshop
Workshops are always a gamble: different machines, setups, and distractions.
Skip the chaos. Drop a Recipe link and let every attendee spin up the same environment, same tools, same goals, and same examples. You get more time to teach and spend less time troubleshooting.
### Accelerating Your Team
Your team is full of problem solvers. One teammate built a slick internal dashboard. Another nailed support ticket triage. Someone else automated changelog generation. Then there's the question: how do we make it easy for the entire team to use? Recipes turn your team's creations into reusable workflows that anyone can pick up. Build a shared library of Goose-powered processes and multiply your team's impact.
Grab [Goose](/docs/getting-started/installation) and start cooking up some [recipes](/docs/guides/recipes/session-recipes) of your own. Your future self (and team) will thank you!
<head>
<meta property="og:title" content="A Recipe for Success: Cooking Up Repeatable Agentic Workflows" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://goose-docs.ai/blog/2025/05/06/recipe-for-success" />
<meta property="og:description" content="A fresh look at AI agents, orchestration, and repeatability told through the metaphor of a rat who can cook." />
<meta property="og:image" content="https://goose-docs.ai/assets/images/cookingwithgoose-9114cf03cec76df4792fc58361ebe20b.png" />
<meta name="twitter:card" content="summary_large_image" />
<meta property="twitter:domain" content="goose-docs.ai" />
<meta name="twitter:title" content="A Recipe for Success: Cooking Up Repeatable Agentic Workflows" />
<meta name="twitter:description" content="A fresh look at AI agents, orchestration, and repeatability told through the metaphor of a rat who can cook." />
<meta name="twitter:image" content="https://goose-docs.ai/assets/images/cookingwithgoose-9114cf03cec76df4792fc58361ebe20b.png" />
</head>