πŸ”’ Guided

Pre-launch preview. Authorised access only.

Incorrect code

Guided by A Guide to Cloud
Explore AB-900 AI-901 aws-aif-c01
Guided AB-620 Domain 1
Domain 1 β€” Module 8 of 10 80%
8 of 28 overall

AB-620 Study Guide

Domain 1: Plan and Configure Agent Solutions

  • Getting Started: Copilot Studio for Developers Free
  • Planning Enterprise Integration and Reusable Components Free
  • Identity Strategy for Agents Free
  • Channels, Deployment and Audience Design Free
  • Responsible AI and Security Governance Free
  • Agent Flows: Build, Monitor and Handle Errors Free
  • Human-in-the-Loop Agent Flows Free
  • Topics, Tools and Variables Free
  • Advanced Responses: Custom Prompts and Generative Answers Free
  • API Calls, HTTP Requests and Adaptive Cards Free

Domain 2: Integrate and Extend Agents in Copilot Studio

  • Enterprise Knowledge Sources: The Big Picture
  • Copilot Connectors and Power Platform Connectors
  • Azure AI Search as a Knowledge Source
  • Adding Tools: Custom Connectors and REST APIs
  • MCP Tools: Model Context Protocol in Action
  • Computer Use: Agent-Driven UI Automation
  • Multi-Agent Solutions: Design and Agent Reuse
  • Integrating Foundry Agents
  • Fabric Data Agents: Analytics Meets AI
  • A2A Protocol: Cross-Platform Agent Collaboration
  • Grounded Answers: Azure AI Search with Foundry
  • Foundry Model Catalog and Application Insights

Domain 3: Test and Manage Agents

  • Test Sets & Evaluation Methods
  • Reviewing Results & Tuning Performance
  • Solutions & Environment Variables
  • Power Platform Pipelines for Agent ALM
  • Agent Lifecycle: From Dev to Production
  • Exam Prep: Diagnostic Review

AB-620 Study Guide

Domain 1: Plan and Configure Agent Solutions

  • Getting Started: Copilot Studio for Developers Free
  • Planning Enterprise Integration and Reusable Components Free
  • Identity Strategy for Agents Free
  • Channels, Deployment and Audience Design Free
  • Responsible AI and Security Governance Free
  • Agent Flows: Build, Monitor and Handle Errors Free
  • Human-in-the-Loop Agent Flows Free
  • Topics, Tools and Variables Free
  • Advanced Responses: Custom Prompts and Generative Answers Free
  • API Calls, HTTP Requests and Adaptive Cards Free

Domain 2: Integrate and Extend Agents in Copilot Studio

  • Enterprise Knowledge Sources: The Big Picture
  • Copilot Connectors and Power Platform Connectors
  • Azure AI Search as a Knowledge Source
  • Adding Tools: Custom Connectors and REST APIs
  • MCP Tools: Model Context Protocol in Action
  • Computer Use: Agent-Driven UI Automation
  • Multi-Agent Solutions: Design and Agent Reuse
  • Integrating Foundry Agents
  • Fabric Data Agents: Analytics Meets AI
  • A2A Protocol: Cross-Platform Agent Collaboration
  • Grounded Answers: Azure AI Search with Foundry
  • Foundry Model Catalog and Application Insights

Domain 3: Test and Manage Agents

  • Test Sets & Evaluation Methods
  • Reviewing Results & Tuning Performance
  • Solutions & Environment Variables
  • Power Platform Pipelines for Agent ALM
  • Agent Lifecycle: From Dev to Production
  • Exam Prep: Diagnostic Review
Domain 1: Plan and Configure Agent Solutions Free ⏱ ~14 min read

Topics, Tools and Variables

Build agent conversations with topics, integrate tools and flows, manage variable scopes, and format responses with Power Fx.

The Building Blocks of an Agent Conversation

β˜• Simple explanation

Think of a topic as a recipe card. Each card has a title (the trigger β€” what makes the agent start this recipe), a list of steps (nodes β€” questions, messages, conditions), and sticky notes (variables β€” bits of information the agent remembers while cooking).

Tools are the kitchen appliances β€” a blender (prebuilt connector), a custom sous-vide machine (custom connector), or a delivery service (HTTP call). The agent picks the right tool for each step.

Variables are the labels on your ingredient jars. Some labels only exist for one recipe (topic variables). Others are visible across the whole kitchen (global variables). And some are printed by the manufacturer and you cannot change them (system variables).

Topics, tools, and variables are the three pillars of agent conversation design in Copilot Studio:

  1. Topics define conversation units β€” each topic has trigger phrases that activate it, a canvas of nodes that define the conversation flow, and variables that hold state.
  2. Tools extend the agent’s capabilities beyond conversation β€” prebuilt connectors, custom connectors, MCP servers, and HTTP actions let the agent interact with external systems.
  3. Variables carry data through the conversation β€” scoped at topic, global, or system level, each with different visibility, lifetime, and use cases.

The exam heavily tests variable scoping rules, tool selection, and how flows integrate with topics through input/output mapping.

Topics: Triggers, Nodes, and Flow

A topic is a self-contained conversation unit. It has three parts:

Trigger phrases β€” natural language phrases that activate the topic. When a user says something that matches (or is semantically close to) a trigger phrase, the agent starts that topic. Examples: β€œtrack my delivery,” β€œwhere is my package,” β€œshipment status.”

Nodes β€” the steps in the conversation canvas:

Node TypePurpose
MessageSend a message to the user
QuestionAsk and store the answer in a variable
ConditionBranch based on variable values
Call an actionInvoke an agent flow or connector
RedirectJump to another topic
TransferHand off to a live human
Generative answersAI generates a response from knowledge

Variables β€” data containers that hold information collected during the conversation.

Adding Flows to a Topic

To call an agent flow from a topic, you use the Call an action node. The process:

  1. Add a Call an action node to the canvas.
  2. Select the flow β€” only flows with the β€œWhen an agent calls a flow” trigger appear.
  3. Map input parameters β€” connect topic variables to flow inputs. Types must match.
  4. Map output parameters β€” capture flow return values into topic variables.
  5. Branch on results β€” use a Condition node to check success and handle errors.

The mapping is where most mistakes happen. If a flow expects a number but receives text, the flow fails at runtime β€” the authoring canvas does not always catch type mismatches at design time.

Tool Types

Tools are how the agent reaches beyond conversation into action. Four types are available in Copilot Studio.

Four tool types available in Copilot Studio
FeaturePrebuilt ConnectorsCustom ConnectorsMCP ServersHTTP Actions
What it isMicrosoft-managed connectors for popular services (SharePoint, Outlook, Dataverse, SQL)OpenAPI-based connectors you build for proprietary or third-party APIsModel Context Protocol servers that expose tools for AI agents to discover and callDirect HTTP calls configured in a flow β€” GET, POST, PUT, DELETE
Setup effortMinimal β€” select and authenticateMedium β€” import OpenAPI spec, configure authMedium β€” deploy MCP server, register with agentLow β€” configure URL, headers, body in the flow
Auth modelConnection references managed by Power PlatformOAuth2, API key, or certificate configured in the connectorDepends on MCP server implementationManual β€” you set headers and tokens in the HTTP action
Best forMicrosoft 365 and common SaaS integrationsInternal APIs or niche SaaS products without prebuilt connectorsAI-native integrations where the agent dynamically discovers available toolsOne-off API calls where building a connector is overkill
Exam signalDefault choice for Microsoft ecosystemQuestion mentions proprietary API or OpenAPIQuestion mentions dynamic tool discovery or AI orchestrationQuestion mentions quick integration or no connector available

Variable Scopes

Variables in Copilot Studio have four scopes. Getting the scope wrong is one of the most common mistakes β€” and a frequent exam topic.

ScopeVisibilityLifetimeSet ByExample
TopicOnly within the current topicExists while the topic is active; cleared when the topic endsQuestion nodes, Set Variable action, flow outputsTopic.CustomerName, Topic.OrderID
GlobalAcross all topics in the agentPersists for the entire conversation sessionSet Variable action with global scope, flow outputsGlobal.UserLanguage, Global.IsAuthenticated
SystemRead-only, across all topicsSet by the platform at runtimeCopilot Studio runtimeSystem.User.DisplayName, System.Conversation.Id, System.Activity.Text
πŸ’‘ Exam tip: Use global variables for cross-topic state

If you need a variable that survives across topic redirects β€” like whether the user is authenticated, their preferred language, or a cart total that accumulates across multiple product topics β€” it must be a global variable. Topic variables are destroyed when the topic ends.

A common exam trap: a scenario where variable data is lost after a topic redirect. The answer is always β€œchange from topic scope to global scope.”

Response Formatting

Copilot Studio supports rich response formatting using markdown and Power Fx expressions:

Markdown in messages β€” bold, italic, bullet lists, numbered lists, and links work in message nodes. The rendering depends on the channel (Teams renders full markdown; a custom web chat may not).

Power Fx for dynamic content β€” you can use Power Fx expressions inside message nodes to format data dynamically:

// Concatenate strings
"Hello, " & Topic.CustomerName & "! Your order " & Topic.OrderID & " is " & Topic.Status & "."

// Format a number as currency
"Total: $" & Text(Topic.Amount, "0.00")

// Conditional text
If(Topic.DaysUntilDelivery <= 1, "arriving tomorrow!", "arriving in " & Text(Topic.DaysUntilDelivery) & " days.")

// Format a date
"Shipped on " & Text(Topic.ShipDate, "dd MMM yyyy")

Power Fx in Copilot Studio uses Power Apps syntax but only a subset of functions is available.

🚚 Dev Adds Tools to the Delivery Tracker

Dev is enhancing his logistics agent’s delivery tracking topic. Currently the topic only shows a static status message. He wants to add real-time tracking data from three sources.

Step 1: Prebuilt connector for Dataverse β€” Dev adds a Call an action node that invokes a flow using the Dataverse connector. The flow takes Topic.TrackingNumber as input, queries the Shipments table, and returns the current status, estimated delivery date, and driver name.

Step 2: Custom connector for the carrier API β€” The carrier exposes a REST API. Dev’s team built a custom connector from the OpenAPI spec. He adds another flow call to get the real-time GPS location.

Step 3: HTTP action for weather β€” Dev wants to warn customers about weather delays. He adds a flow with an HTTP GET action that calls a public weather API using the delivery city from the Dataverse result. No connector needed β€” it is a simple one-off call.

Step 4: Response formatting β€” Dev composes a rich response combining all three data sources using Power Fx concatenation with Char(10) line breaks, Text() for date formatting, and If() for a conditional weather alert. Each data source used a different tool type (prebuilt, custom, HTTP).

Key Terms

Question

What are the three variable scopes in Copilot Studio and when do you use each?

Click or press Enter to reveal answer

Answer

Topic scope: visible only in the current topic, cleared when it ends. Global scope: visible across all topics, persists for the entire session β€” use for cross-topic state like authentication or language preference. System scope: read-only, set by the runtime β€” includes User.DisplayName, Conversation.Id, Activity.Text.

Click to flip back

Question

How do you add an agent flow to a topic?

Click or press Enter to reveal answer

Answer

Use a Call an action node. Select the flow (must have 'When an agent calls a flow' trigger), map topic variables to flow input parameters, and map flow output parameters back to topic variables. Then add a Condition node to branch on the success output.

Click to flip back

Question

What are the four tool types available in Copilot Studio?

Click or press Enter to reveal answer

Answer

1) Prebuilt connectors β€” Microsoft-managed for popular services. 2) Custom connectors β€” OpenAPI-based for proprietary APIs. 3) MCP servers β€” AI-native tool discovery. 4) HTTP actions β€” direct REST calls in a flow for one-off integrations.

Click to flip back

Question

What Power Fx functions are commonly used for response formatting in Copilot Studio?

Click or press Enter to reveal answer

Answer

Text() for number and date formatting, If() for conditional messages, the ampersand operator for concatenation, Char(10) for line breaks, and Value() for converting text to numbers. Same syntax as Power Apps but a subset of functions.

Click to flip back

Knowledge Check

Knowledge Check

Dev's delivery tracking topic collects a tracking number, calls a Dataverse flow, and then redirects to an upsell topic. The upsell topic needs the customer name collected in the tracking topic. What should Dev do?

Knowledge Check

Priya at AgentForge is building an ISV agent that needs to call a customer's proprietary inventory API. The API has an OpenAPI spec and uses OAuth2 authentication. Which tool type should she use?

Knowledge Check

An agent topic calls a flow that expects a Number input, but the developer mapped a Text variable containing '42'. What happens?


🎬 Video coming soon

Topics, Tools and Variables

Next up: Advanced Responses: Custom Prompts and Generative Answers β€” control how your agent generates responses using custom prompts, knowledge sources, and the generative answers node.

← Previous

Human-in-the-Loop Agent Flows

Next β†’

Advanced Responses: Custom Prompts and Generative Answers

Guided

I learn, I simplify, I share.

A Guide to Cloud YouTube Feedback

© 2026 Sutheesh. All rights reserved.

Guided is an independent study resource and is not affiliated with, endorsed by, or officially connected to Microsoft. Microsoft, Azure, and related trademarks are property of Microsoft Corporation. Always verify information against Microsoft Learn.