Module 06 Strands Foundations Tools Memory and MCP - akash-coded/aws-bedrock-agentcore-strands GitHub Wiki

๐Ÿงต Module 06 ยท Strands Foundations: Tools, Memory and MCP

Agents with hands, memory, and a standard way to reach the outside world.

Module 06 of 16 ยท track Build ยท Estimated time: 5โ€“6 hours ยท Prerequisites: Module 05.

Strands is AWS's open-source agent framework. This module covers the three things that turn a chat wrapper into an agent: tools it can call, memory it can keep, and MCP servers it can connect to.

Open the module on GitHub โ†—: the slides, notebooks, exercises and solutions are there. This page is the reading order, with the tutorial and the workbench alongside.

Read first, on the site

The lesson that frames this module is The Agentic PDLC for Software Engineers: Build With Agents (6 min): the engineer's own steps, where tools and memory get their contracts.

What you will be able to do

  • Build a Strands agent with custom tools and a clear tool catalogue
  • Add conversational and persistent memory, and know the difference
  • Connect an agent to an MCP server and call its tools
  • Design a tool schema that the model calls correctly the first time

Concepts in this module

Portable GenAI concepts AWS-specific surface
Tool design Strands Agents SDK
Short vs long-term memory Bedrock model providers
Model Context Protocol AgentCore Memory
Agent composition

Portable concepts transfer to any stack. The AWS column is where this module touches the cloud โ€” see docs/concepts/portability-matrix.md.

Run it in this order

# Step What it is
1 ๐Ÿ“– slides/Strands_Deck1_Foundation.pptx Strands foundations
2 ๐Ÿ’ป notebooks/01_strands_foundations.ipynb Foundations notebook
3 โœ๏ธ exercises/build-1-give-the-agent-a-job.md Build 1 โ€” give the agent a job
4 ๐Ÿ’ป notebooks/02_strands_tools_memory_mcp.ipynb Tools, memory and MCP
5 ๐Ÿ“Š activities/Tool_Catalog.xlsx Design your tool catalogue
6 โœ๏ธ exercises/build-2-the-toolsmith.md Build 2 โ€” the toolsmith
7 ๐Ÿ“– slides/Strands_Deck2_Advanced.pptx Strands, advanced
8 ๐Ÿ’ป notebooks/03_strands_multiagent_capstone.ipynb Multi-agent capstone
9 ๐Ÿ’ป notebooks/04_strands_multiagent_deepdive.ipynb Multi-agent deep dive
10 โœ๏ธ exercises/build-3-open-sandbox.md Build 3 โ€” open sandbox
11 โœ๏ธ exercises/take-home-build-your-own-agent.md Take-home โ€” build your own agent

๐Ÿ“– read   ๐Ÿ’ป run   โœ๏ธ practise   ๐Ÿ“Š workbook   ๐Ÿ”– reference

These exercises have no answer key, deliberately. The three builds and the take-home are open-ended: you are designing an agent for a domain you choose, and there is no single correct implementation.

What they give you instead:

  • Each build works in levels โ€” give it a role, stop it guessing, then push it โ€” so you always know whether you have cleared the current one
  • Each ends with Notice this and Poke at it sections that tell you what should have happened and what to break next
  • The take-home has a What to hand in section that defines done

If you want something to compare against, the multi-agent notebooks in this module and the worked solutions in Module 07 are the nearest reference.

Common mistakes

  • Tool descriptions written for humans, not models. The model only has the schema.
  • Confusing conversation history with memory. History is a buffer; memory is a decision about what to keep.

When it breaks

Every error anyone has hit in this course is in the Error Index, by the exact string. Model access and region problems are in Model and Region Notes. If it is a question rather than an error, check the answered ones first, then ask in Q&A.

Field guide for this module

Frameworks

Quick reference

Recipes and procedures


โ† Module 05 ยท The Agent Loop: No Framework to Strands ยท All modules ยท Module 07 ยท Multi-Agent Patterns with Strands โ†’

โœ๏ธ This page is generated from modules/06-strands-foundations/README.md. To change it, edit the module README: an edit made here is replaced at the next sync.

โš ๏ธ **GitHub.com Fallback** โš ๏ธ