The practical architecture behind a useful agent: tools for action, controlled context for knowledge, state for continuity, app connections for real work and approval boundaries for safety.
QUICK ANSWER
An AI agent becomes useful when it can do more than generate text. Tools let it perform actions or retrieve information; state and memory help it carry work across steps; APIs and MCP servers connect it to business systems; permissions determine what it may do; and tracing lets you see what happened.
Tools, memory and app access are different things
Tools
Callable capabilities such as searching a database, reading a file, creating a CRM note or sending a message.
State
Current working information for a run: completed steps, task status and returned results.
Memory
Information retained beyond the immediate exchange, from session history to longer-term stored facts.
Business knowledge
Authoritative information held in Drive, Notion, a CRM or a database. It is not model memory.
App access
The authentication and connection layer that lets tools reach those systems.
Step 1: list the information and actions the job actually needs
Start with the workflow, not the integrations directory. For a lead-research agent, the minimum may be: read a CRM record, inspect the company’s website and write a draft research note. It does not automatically need Gmail, the whole Drive, Slack, billing data and your calendar.
For every proposed connection, write two columns: information the agent needs to read, and actions it needs to take. This immediately exposes permissions you can remove.
Step 2: turn capabilities into clear tools
A good tool has one clear purpose, a narrow input schema and an output the model can understand. “CRM” is not a good tool. “Get CRM company record by company ID” is. “Create email draft to an existing contact” is safer and clearer than a general send-any-message tool.
Tool descriptions matter because the model uses them to decide what to call. Include when the tool should be used, what it returns and important constraints. Validate inputs before execution rather than trusting model-generated arguments.
Step 3: separate read tools from write tools
| Class | Capability | Default control |
|---|---|---|
| Read | Retrieve without changing the source | Allow only approved scope |
| Prepare | Create a draft or staged change | Review the output |
| Write | Modify a business system | Require approval first |
| Communicate | Send something externally | Require approval first |
| High impact | Delete, deploy, spend or commit | Use stronger controls or exclude |
Start with read and prepare. Put approval in front of write and communicate actions. High-impact actions need stronger controls and may not belong in an autonomous agent at all.
Step 4: give the agent session state
Most agents need to remember what happened earlier in the same job. Session state can contain the conversation, tool results, task status and intermediate decisions. Modern SDKs often provide this layer, including persistent working context and resumable or forkable sessions.
Keep state purposeful. Storing every raw token and tool result forever increases cost, privacy exposure and context noise.
Step 5: add persistent memory carefully
Persistent memory should solve a specific repeated need. Useful examples include stable communication preferences, a project naming convention or a summary of a previous approved interaction that genuinely improves later work.
Do not use memory as a substitute for your source of truth. Current pricing, customer status, contracts, policies and product facts should normally be retrieved from the authoritative system when needed. If a remembered fact can materially affect an action, keep provenance and make it replaceable when the source changes.
Step 6: connect controlled business knowledge
For documents and business data, decide whether the agent should search a bounded knowledge store, retrieve directly from an application or use an existing API or MCP server. Restrict scope: a marketing agent may need one campaign folder, not the CEO’s entire Drive.
Use service accounts or scoped OAuth permissions where appropriate, and separate test credentials from production credentials.
Step 7: choose API, MCP or automation-platform connections
| Connection | Best fit |
|---|---|
| Direct API or function | A defined endpoint, simple custom integration or precise control |
| MCP | A reusable AI-facing interface for tools and context |
| Automation platform | Deterministic workflows and existing business integrations |
These approaches can coexist. An agent might use MCP for a research tool, call a custom function for internal logic and hand a deterministic downstream workflow to Make.
Step 8: design approvals before you enable actions
An approval system should show exactly what the agent is proposing, what data it used and what will happen if the human approves. Show the proposed arguments, not merely “Allow tool?”. “Send this draft to customer@example.com” is more informative than “Allow email_tool”.
Step 9: make credentials invisible to the model
The model should not need to see raw API keys, OAuth tokens or passwords. Store credentials in the platform’s secret or authorisation mechanism and let the tool runtime use them. Avoid placing secrets inside prompts, URLs or long-lived memory.
Step 10: trace what the agent actually did
For each run, capture enough information to reconstruct:
- which model was used
- which tools were available and called
- tool arguments and results where safe to log
- approvals requested and granted
- failures and retries
- the final outcome and any human correction
Without observability, an agent that works 90% of the time can be more dangerous than a workflow that visibly fails. Silent partial success is hard to manage.
A practical permission ladder
- 01Read approved data
- 02Analyse and recommend
- 03Prepare drafts or staged changes
- 04Execute reversible actions after human approval
- 05Execute low-risk actions autonomously inside strict rules
- 06High-impact autonomous action
Most small-business agents should spend a long time around Levels 2–4. The goal is not maximum autonomy. It is dependable business value with a failure mode you can tolerate.
Common questions
Frequently asked questions
Clear answers to the practical questions readers ask most often.
Does an AI agent need memory?
No. Many useful agents only need the state of the current task and fresh access to authoritative data.
Is MCP required to connect agents to apps?
No. Agents can use direct function tools, APIs, platform integrations or automation tools. MCP is one standard connection method.
How many apps should an agent access?
Only those required for its job. Broad access increases security exposure and makes tool selection harder.
Should agents be allowed to send emails automatically?
Only when the task, recipients and failure consequences are well controlled and testing demonstrates sufficient reliability. Draft-first approval is a safer starting point.
Can an agent remember customer data?
Technically yes, but that does not mean it should. Prefer controlled source systems, clear retention rules and minimal persistent memory for personal or sensitive data.
Sources and methodology
This guide is based primarily on current official documentation and product materials. Product capabilities can change quickly; recheck implementation details before production use.
EDITORIAL VERIFICATION
Sources & review information
- Editorial status
- Editorially researched
- Last reviewed
- 2 September 2026