# "Spicy food under RM20." Zero results.

> Seventeen matching dishes were in the catalogue.

- **Format:** short video, 9 steps, ~51 seconds
- **Topic:** Why a food delivery search box fails a customer who knows what they want, and what an AI agent in Microsoft Foundry actually is: a model that asks your code to run functions, with the API as the trust boundary.
- **Author:** Suthahar Jegatheesan (MSDEVBUILD)
- **Category:** Azure · Azure
- **Published:** 2026-04-20
- **Tags:** microsoftfoundry, azureai, aiagents, dotnet, flutter, azure, aicoding, msdevbuild
- **Canonical URL:** https://blog.msdevbuild.com/shorts/foundry-agent-search-box-seventeen-dishes/

---
## What you'll learn

- Why keyword search fails a sentence
- What an AI agent is underneath
- Why the API stays the trust boundary

## Understand it one step at a time

### 1. A sentence in a search box

The customer knows exactly what they want, and says it in words.

### 2. Zero results

Not a weak match. An empty state.

### 3. Seventeen were there

29 spicy dishes in the catalogue, 17 of them under RM20.

### 4. Words, not filters

Keyword search matches text. The sentence is a price filter plus a boolean.

### 5. What an agent is

A model given functions it may ask you to run. It asks; your code runs them.

### 6. The API decides

The agent never touches the database. Your API validates every call.

### 7. The same sentence, again

search_menu(spicy: true, maxPrice: 20) returns the matching dishes.

### 8. No greenfield

The agent goes on top of an app that already exists, roles and all.

### 9. The search worked, the design did not

A model asks your code to run functions. Your API stays the trust boundary.

---

## The takeaway

**The search worked. The design did not.**

An agent turns a sentence into the parameters your API already understands.
