Knowledge Source vs. Tool — Which Should Your AI Agent Use?
When you give an agent access to information, you have two ways to do it — add it as a knowledge source or read it live with a tool — and picking the wrong one is a quiet source of bad answers. The decision is easier than it sounds, and it comes down to a single question.
Watch the 60-second guide
The one question: does the content change?
That's the whole decision. Is the content static, or does it change regularly?
- Static content — a policy document, an FAQ, your Zendesk Help Center articles, an internal guide. It doesn't change often. → Add it as a knowledge source. Macha indexes it once, and the agent searches that index.
- Dynamic content — a pricing sheet, an escalation matrix, an inventory list, a live Google Sheet your team edits constantly. It changes regularly, and a stale answer would be wrong. → Read it live with a tool, so the agent always pulls the current value.
Why this matters: indexing is a one-time snapshot
Here's the catch that trips people up. When you add something as a knowledge source, Macha indexes it once — it reads the content, makes it searchable, and that's it. The index does not auto-update. So if you index a pricing sheet today and prices change next week, the agent is still answering from last week's prices until you re-index.
That's perfectly fine for content that rarely changes (your refund policy from 2024 is still your refund policy). But for anything that updates regularly, a static index will quietly serve stale answers — which is exactly when you want a tool that fetches the live value instead.
How to decide, in practice
| Content | Changes? | Use |
|---|---|---|
| Policies, FAQs, help-center articles | Rarely | Knowledge source (indexed) |
| Product docs, guides, manuals | Rarely | Knowledge source (indexed) |
| Pricing sheet, escalation matrix | Often | Tool / live source (read live) |
| Inventory, order status, account data | Constantly | Tool (read live) |
A handy rule of thumb: if a stale answer would be wrong, read it live. If a slightly-out-of-date answer is fine, index it as a source.
A note on "live" sources
Some connected apps can be added as live sources (Google Workspace, Confluence) — these pull content in real time, giving you the freshness of a tool with the simplicity of a source. So for that constantly-edited Google Sheet, connecting it live is often the cleanest answer. (See what knowledge sources are for the live-vs-ready distinction.)
Frequently asked questions
What's the difference between a knowledge source and a tool here? A knowledge source is indexed content the agent searches; a tool (or live source) fetches the current value in real time.
Does a knowledge source update automatically? No — indexing is a one-time snapshot. Re-index when the content changes, or read it live if it changes often.
When should I read content live instead of indexing it? When the content changes regularly and a stale answer would be wrong — pricing, inventory, escalation rules.
What about my Help Center? That's static-ish content and it auto-syncs on publish/unpublish, so a knowledge source is the right fit.
The bottom line
Ask one question: does the content change? Static content — policies, FAQs, help articles — goes in a knowledge source (indexed once). Content that changes regularly — pricing, inventory, live sheets — should be read live with a tool so the agent always has the current value. Get this right and your agent is never confidently out of date.
Set it up right: index your static docs, and read your changing data live. 7-day free trial, no credit card required. Start free.