Memuat
Memuat
Want to go deeper?
Join one of our courses or ask us directly on WhatsApp.
Picked from the software, topic, and level of “Agentic AI Without Coding Class #33: Giving the Agent Tools: Searching Data, Sending Messages, and Updating Tables”.
Other ways we can help with Agentic AI.
Learn with a mentor
Scheduled AI & Machine Learning courses with live guidance and a certificate.

MATLAB Agentic AI Course: Building Autonomous AI Agents with MATLAB & Simulink

Midjourney Course: Create Stunning AI Images from Text
★ 4.9

DALL-E Course: Creating Professional AI Images from Text
★ 4.9
Have it built for you
No time to learn Agentic AI? Our team can do the project for you.

MATLAB & Simulink Development — Agentic AI for Simulation Automation and Data Analysis

AI Image Creation with Stable Diffusion — Unlimited Custom Visual Production
★ 4.9

AI Image & Video Creation with Leonardo AI — All-in-One Visuals for Business
★ 4.9
Get notified about new Agentic AI classes
At most one email a week. Unfollow anytime with one click.
The full narration of this video. The current sentence is highlighted while the video plays; click any sentence to jump there.
Welcome back to Session 7. Our agent already has a brain and a memory, and Sunset Coffee's data is tidy in Google Sheets. What's missing are hands to use that data. In this episode we attach three tools: checking products, logging orders, and sending notifications to Dimas. We also learn to write tool descriptions, because the agent chooses tools from those descriptions.
Before attaching tools, let's understand how the agent chooses them. The agent doesn't open each tool's settings one by one. It only reads each tool's name and description. From there the agent decides: for this message, which tool fits? So a tool description isn't just a note. It's a work guide: what the tool is for, when to use it, and when not to. Imagine leaving your shop with a new employee, with three labeled drawers. If the labels just say drawer one, two, and three, they'll surely be confused. If the labels say stock check, order book, and call the admin, they know right away which one to open. The Sunset Coffee admin agent will have three tools. First, Check Product. A Google Sheets tool that reads the Products tab to answer prices, stock, and variants. Second, Log Order. Also a Google Sheets tool, but its job is to add one new row to the Orders tab. Third, Notify Dimas. A Gmail tool that emails Dimas whenever there's a new order, or when a customer needs help from a human. We remove the Calculator from Episode 31. The fewer tools there are, the smaller the chance the agent picks the wrong one. Only add a tool when it's truly needed. These three tools don't carry the same risk. A reading tool, like Check Product, is low risk. At worst the agent misreads something, but no data changes. This tool can be used at any time. A data-writing tool, like Log Order, is medium risk. A wrong entry means Dimas prepares the wrong order. That's why this tool may only be used after the customer agrees. A message-sending tool is also medium risk. We lock the recipient, so the agent can't email just anyone. And a tool that changes prices or deletes orders is high risk. For an admin agent, we don't give it tools like that at all. The principle: give the agent the smallest access that is still enough for its job.
Open the Sunset Coffee Admin Agent workflow. Click the Calculator node and delete it. Now only the model and the memory remain below the agent. Click the Tool point below the agent, then type Google Sheets in the search box. Choose Google Sheets from the tools section. The new tool appears with a dashed line to the agent. Rename it to Check Product. This name matters, because the agent reads it when choosing a tool. Under Tool Description, choose Set Manually, which means we write the description ourselves. Write: checks the price, stock, and variants of Sunset Coffee products, used whenever a customer asks about products, prices, or stock. The rest of the settings are the same as the test in Episode 32. Operation Get Row(s), document Sunset Coffee Store Data, and sheet Products. The filter stays empty. Customers often name products in different ways, for example a liter of the iced one. If the filter looks for the exact name, the result can come back empty. It's better for the agent to read all four rows and match them itself. This tool only reads. It can't change or delete anything. That's why the agent can use it safely at any time, without anyone's approval. For Make users, the concept is similar. An agent in Make also gets tools in the form of scenarios or modules, and each tool needs a clear name and description. In this class we continue with n8n.
Add the second tool the same way: the Tool point, then Google Sheets. Name it Log Order. This time the operation is Append Row, which means adding a new row at the bottom of the table. The description is written more firmly: logs a new order to the Orders tab, and is only used after the customer says yes to the order confirmation. The word only is in capitals on purpose, so it stands out. Why so firm? Because this tool changes data. An order logged before the customer agrees would make Dimas prepare coffee that nobody ends up buying. Once the Orders sheet is selected, n8n shows its seven columns: Time, Name, WhatsApp No, Product, Quantity, Total, and Status. Now we decide what goes into each column. Look at the columns from Name to Total. Next to each column is a small star button called Let the model define this parameter. Click that button, and the column value turns into a yellow box like the one on screen. This means the agent itself fills in that column from the conversation. The customer's name, WhatsApp number, product, quantity, and total are taken from what was said and confirmed in the chat. We don't type any formulas. Two columns are deliberately not handed to the agent. The Time column takes the time from the system, so it's always accurate. The Status column is typed as a fixed value: New, as written in the panel title. The agent can't mark an order as Done or Canceled. The principle: only hand the agent the values that actually come from the conversation. Anything the system or a fixed rule can decide, just lock it. The less there is to guess, the smaller the chance of a mistake. Let's sum up this tool's values in one table. The time is filled in by the system, so it's always accurate. The name and WhatsApp number are filled in by the agent from the chat. The agent will ask for them if the customer hasn't given them yet. The product and quantity also come from the chat, but the name is matched against the Products tab, so what gets logged is the official name, not a liter of the iced one. The total is filled in by the agent from the number the customer approved during confirmation: price times quantity, plus the delivery fee if any. And the status is always New. Only Dimas changes it, after the payment and address are confirmed.
The third tool. Click the Tool point again, search for Gmail, and choose the tool. Name it Notify Dimas. Now there are five sub-nodes below the agent: the model, the memory, and three tools. One Tool point can hold many tools at once. Notice that all three tool lines start from the same point below the agent node. Double-click the Notify Dimas tool to open its settings. On screen, we focus on just the agent and this tool. Its description: email Dimas after an order is logged, or when a customer needs help from a human. So this tool has two uses: news of a new order, and a request for help. The operation is Send, which sends an email, using the shop account's Gmail credential. Look at the To field. The address is typed as a fixed value: Dimas's email. It's not filled in by the agent. That way, whatever the customer writes in the chat, the agent can't send an email to any other address. Only the subject and message are handed to the agent, with the same yellow boxes as before. The agent writes a summary of the order or the customer's problem in its own words. If Dimas watches WhatsApp or Telegram more than email, this tool can be swapped out later. We cover the integration options in Session 8. Those three tools are specific to a shop. For your business, there are many more options. Mr. Hendra at Cerdas Tutoring can give the agent a Google Calendar tool to check which private lesson slots are still free. Dewi at Maju Bersama Co. can give it a read-only Gmail tool, to find quote emails from suppliers. A Google Docs or Drive tool lets the agent read the SOP and the list of frequently asked questions before answering. And HTTP Request, an all-purpose tool for fetching data from other services, such as delivery rates. This tool is more technical, so start with ready-made tools first. The principle stays the same: a clear name, a clear description, and the smallest possible access.
Let's compare vague and clear descriptions. For Check Product, the vague description just says Sheets. The agent doesn't know which sheet, or what for. For Log Order, the description add data is too general. The agent might log an order as soon as a customer names a product, when the customer was only asking. The clear description states the condition: only after the customer says yes. For Notify Dimas, send email doesn't explain when. The clear description names both situations: a new order, or a customer who needs help from a human. A clear description is longer, but still short: one or two sentences. There's no need to write a long paragraph. We put the more detailed rules in the system instructions in the next episode. To make it easy to remember, use a four-part formula. The first part is the task: what this tool does. It logs one new order to the Orders tab. The second part is when to use it: after the customer says yes to the order summary. This summary lists the product, quantity, and total, so the customer knows exactly what they're agreeing to. The third part is the limits: when this tool must not be used. Don't use it while the customer is only asking, is bargaining, or hasn't given a name and WhatsApp number. The fourth part is the data it needs: the name, WhatsApp number, product name as in the Products tab, quantity, and total including delivery. You can copy this full description into the tool's Description field. A few more tips. Name your tools with clear verbs, like Check Product or Log Order, not Google Sheets one and Google Sheets two. Name the specific tab, file, or recipient, so the agent knows exactly what the tool touches. State restrictions firmly, especially for tools that change data or send messages. Avoid two tools with similar descriptions. If both sound the same, the agent will struggle to choose. And most importantly, test with real questions. If the agent picks the wrong tool, fix the description first before changing anything else.
Time to test. Save the workflow, then open Open chat. The first question: is the five hundred milliliter cold brew still available? How much is it? A gray line appears: Check Product, reading four rows from the Products tab. The agent chose the right tool just from its name and description. The answer matches the data: the price is fifty-five thousand, but it's sold out. The agent even offers an alternative that's in stock. Compare this with Episode 32, when the agent made up the hamper price. The second question: is there a sugar-free hamper? The agent calls Check Product again. It doesn't rely on memory from the previous answer; it reads the latest data. The answer: yes, a sugar-free variant, priced at one hundred fifty thousand, six in stock. Everything matches the Products tab. Try changing the hamper stock in Sheets, then ask again. The agent's answer changes too, because it always reads the latest data. Back to the canvas. Look at the green check marks. The trigger, agent, model, memory, and Check Product ran. Log Order and Notify Dimas weren't touched at all. That's the right decision. The customer was only asking, not ordering yet, so there was nothing to log and nothing to report to Dimas. But we're not completely safe yet. The agent has no written instructions: it doesn't know the delivery rules, isn't required to confirm, and doesn't know when to call Dimas. We write all of that in Episode 34. Now let's test the writing tools with test data that's obviously fake. Type: test, order one iced coffee cup, name Test Order, with a WhatsApp number of all zeros. The agent first calls Check Product to confirm the product and its price. Then it goes straight to Log Order. Notice that the agent doesn't ask anything. The tool description does ask for confirmation, but the agent treats our message as a definite order, so it skips that step. Then it sends a notification to Dimas. All three tools work, and that's good news. But there are two problems. First, the order was logged without confirmation. Second, the ten thousand delivery fee was simply added, even though the agent doesn't know our delivery rules yet. It got lucky and guessed right. This proves that tools alone aren't enough. The agent needs instructions. Open the Orders tab. Below the last row, a new row appears: Test Order, one iced coffee cup, total twenty-eight thousand, status New. The time is filled in automatically from the system clock. The product name is logged as the official name in the Products tab, not iced coffee cup as we typed it. That's the result of the tool description asking for the product name as listed in the Products tab. Once you've checked it, delete this test row so Dimas doesn't process it. Make a habit of putting the word test in your test data, so it's easy to spot and clean up. In Dimas's inbox, the notification email has arrived too, with the Orders label. The content is short and clear: the name, WhatsApp number, product, total, status, and a request to confirm the payment and address. The agent wrote all of these sentences itself. For a test, just read this email and then delete it. Let's check today's work. The Calculator is removed, and three tools are attached to the Tool point. Check Product only reads the Products tab. Log Order adds a row to the Orders tab, with the Time and Status columns locked. Notify Dimas sends email to a locked address. And every tool has a full description: the task, when to use it, the limits, and the data it needs. If everything is checked, your agent now has hands. Don't forget to delete the test row in the Orders tab before moving on.
Let's recap. The agent chooses tools by their name and description. We attached Check Product, which only reads, Log Order with a locked time and status, and Notify Dimas with a locked recipient. In the next episode we give the agent two things that make it truly ready to work: properly configured conversation memory, and system instructions covering its role, price rules, order confirmation, and when to hand over to Dimas. See you in Episode 34.
Try these on your own after watching to lock in what you learned.
Type a question or keyword; we find the part of this episode that explains it and jump the video there.
Notes are saved with the current video time and are only visible to you.
Stuck on a step? Ask here; the instructor and other learners can answer.
No questions yet.

Cerdas Inovasi Digital Team
Software developers, BIM & 3D engineers, and AI practitioners
We build software, BIM models, games and AI automations for clients every day, and turn that hands-on work into step-by-step classes: every step is shown on screen and comes with a PDF guide you can keep.
See our clients →