Build an IT Helpdesk Agent

Design a conversational IT helpdesk agent with Microsoft Copilot Studio.

Introduction

30 Second Summary

Every day, IT teams answer the same questions over and over: password resets, VPN issues, email setup. An AI agent that handles these common requests instantly could free up hours of human time.

In this project, you will build an IT helpdesk agent using Microsoft Copilot Studio. Your agent will answer employee questions from a real knowledge base and walk users through a guided password reset process with branching paths depending on their situation.

What You'll Build

Picture this: you send someone a link, they open it, type "I need to reset my password," and your agent walks them through the exact steps for their situation. No human needed.

By the end of this project, you'll have:

  • An agent that generates answers from a grounded knowledge source for general IT questions, complete with citation links so users can verify the information.
  • A custom Password Reset topic with a multi-turn conversation flow that branches based on the user's account type and guides them to a resolution.
  • A published demo website with a shareable URL where anyone can chat with your agent and experience the full helpdesk flow.
  • Secret Mission: Add an escalation path that hands off to a human when the agent cannot resolve the issue.

Are there any prerequisites?

You need a Microsoft 365 subscription with access to Copilot Studio. A trial-only license lets you build and test agents but does not allow publishing. You will also need a web browser (Microsoft Edge recommended).

Before We Start

Before you dive in, take a moment to think about the problem you are solving. You are about to create an AI helpdesk agent that could replace hours of repetitive support tickets at any company.

Sign In and Create Your IT Helpdesk Agent

Before your agent can answer a single question, it needs to exist. This step gets you signed into Microsoft Copilot Studio and walks you through creating the agent that will become your IT helpdesk.

The platform lets you describe what you want in plain English and it bootstraps the entire agent structure for you. You will have a working, testable agent in minutes.

In this step, get ready to:
  • Sign in to Microsoft Copilot Studio.
  • Create your IT Helpdesk agent from a natural language description.
  • Configure the agent's name and professional tone.
Sign in to Copilot Studio

Copilot Studio is a no-code, graphical environment for building AI-powered agents. You access it entirely through your web browser.

You land on the Home page. You will see a text box prompting you to describe what your agent should do.

Don't see the description box?

If the box prompting you to describe your agent is missing, your environment may not support natural language agent creation. Check that you are signed in with a Microsoft 365 account that has a Copilot Studio license (not just a Teams plan).

help me sign in to Copilot Studio

Describe your agent to create it

Instead of configuring your agent from scratch, you tell Copilot Studio what you want in plain language. The AI generates a name, description, and instructions based on what you write.

  • Click inside the description box on the Home page.
  • Type the following description (up to 1,024 characters are allowed):
Help employees troubleshoot common IT issues like password resets, VPN problems, email setup, and software installation requests. Be friendly and professional.
  • Press Enter or click the submit button to create your agent.

Copilot Studio provisions your agent and takes you to the Overview page. You will see an AI-generated name, description, and instructions already populated for your agent.

What just happened?

Copilot Studio used your description to bootstrap the entire agent. It generated a name, a description field, and initial instructions automatically.

It may also suggest knowledge sources and tools. You can ignore or dismiss these suggestions for now.

Update the agent name and instructions

The AI-generated name and instructions are a starting point. You will now set a specific name and write clear instructions that define your agent's tone.

  • On the Overview page, find the Details section.
  • Select Edit in the Details section.
  • Change the agent name to:
  • IT Helpdesk
  • Select Save.

Now update the instructions to set the agent's tone and behaviour.

  • Find the Instructions section on the Overview page.
  • Select Edit in the Instructions section.
  • Replace the existing text with the following instructions:
You are an IT helpdesk assistant for a company. Help employees resolve technical issues. Be patient, clear, and professional. If you cannot resolve an issue, let the employee know you will connect them with a human agent.
  • Select Save.

What do instructions do?

Instructions tell the agent how to behave across every conversation. They set the personality, boundaries, and escalation rules your agent follows.

The better your instructions, the more consistent and helpful the agent's responses become.

Time to see if your agent is alive. Before you test, what do you think will happen when you type a greeting in the test chat?

  • Look at the test chat panel on the right side of the screen.
  • Type Hello in the chat input and press Enter.

Your agent responds with a friendly, professional greeting that matches the tone you set in the instructions. This confirms the agent is active and responding.

Agent not responding in the test chat?

Make sure you saved both the name and the instructions before testing. Unsaved changes will not affect the agent's behaviour.

If the test panel is not visible, look for a Test button at the top or bottom of the page to open it.

help me get the test chat working in Copilot Studio

Your agent is alive and greeting users. Next up, you will give it real knowledge so it can answer actual IT questions instead of generic responses.

Ground Your Agent with a Knowledge Source

Your agent can respond to greetings, but ask it a real IT question and it has nothing specific to draw from. It falls back on general AI knowledge, which might be inaccurate or unhelpfully vague.

Grounding fixes this. By connecting your agent to a trusted public website, it generates answers based on real documentation and cites where the information came from. This is the difference between a chatbot that guesses and one that knows.

In this step, get ready to:
  • Add a public website as a knowledge source for your agent.
  • Test that the agent generates cited answers from the source.
  • Observe how the agent handles questions outside its knowledge boundary.
Add a public website as a knowledge source

Your agent needs a source of truth to draw from when answering IT questions. You will connect it to Microsoft's public Windows support documentation.

  • On the Overview page, find the Knowledge section.
  • Select Add knowledge.
  • In the panel that opens, select Public websites.
  • Enter the following URL as your knowledge source: https://support.microsoft.com/windows.
  • Select Add, then select Add to agent.

What is knowledge grounding?

Knowledge grounding connects your agent to a specific, trusted information source. Instead of generating responses from its general training data, the agent searches the grounded source first and pulls relevant content from it.

This reduces hallucination and lets the agent cite exactly where an answer came from. The user sees the citation link alongside the response.

Test grounded answers in the chat panel

Now that your knowledge source is connected, ask the agent something that Microsoft's Windows support documentation should cover.

  • Open the test chat panel on the right side of the screen.
  • Type: How do I connect to Wi-Fi on Windows? and press Enter.

The agent generates an answer using information from the knowledge source. You should see a citation link in the response pointing back to the Microsoft support page.

Citations confirm grounding is working

If you see a numbered citation or a link at the bottom of the agent's response, that means it pulled the answer from your knowledge source. No citation means the agent fell back to general knowledge.

Not seeing a cited response?

Knowledge sources can take a few moments to index after being added. Wait 30 seconds, then select Start new test session at the top of the chat panel and try again.

Also confirm the knowledge source shows as active in the Knowledge section on the Overview page.

Still stuck? Why isn't my agent citing its knowledge source?

Test the knowledge boundary

A well-grounded agent should know what it knows and handle everything else gracefully. Try asking something completely outside your knowledge source to see how it behaves.

  • In the test chat, type: What is the meaning of life? and press Enter.

Notice how the agent either declines gracefully or provides a general response without a citation. This shows the boundary between grounded knowledge and general AI responses.

Why does this matter?

In a real helpdesk, you want the agent to answer IT questions confidently with sourced information. For anything outside its scope, it should signal uncertainty rather than fabricating an answer. Grounding creates that distinction automatically.

Before you run this final test, what do you think will happen when you ask a Windows-specific IT question? Will the agent give a generic response or a grounded one with a citation?

  • Select Start new test session at the top of the test chat panel.
  • Type: How do I reset my PIN on Windows? and press Enter.

The agent responds with relevant information pulled from the knowledge source, and you should see a citation link visible in the response. Your agent now generates accurate, sourced IT answers instead of guessing.

Your agent now has real knowledge behind its answers. Next up, you will build a custom conversation topic that guides users step-by-step through a password reset, with different paths depending on their situation.

Design a Password Reset Topic

Your agent can now answer general IT questions by pulling from its knowledge source. But what happens when someone needs a specific, step-by-step procedure with different paths depending on their situation?

Generative answers fall short here. A custom topic gives you precise control over the conversation flow, letting you guide users through branching paths based on their answers. In this step, you will build a Password Reset topic that asks the right questions and responds with tailored instructions.

In this step, get ready to:
  • Create a new topic from blank and configure its trigger.
  • Add a Question node with multiple-choice branching.
  • Complete the Outlook branch with resolution instructions.
Create the Password Reset topic

Topics are the building blocks of structured conversations in Copilot Studio. Each topic handles one intent and controls exactly how the agent responds.

  • In the left navigation, select Topics.
  • Select Add a topic, then select From blank.
  • Name the topic Password Reset.
  • Select the Trigger node on the canvas.
  • Confirm the trigger type is set to The agent chooses (this is the default for generative orchestration).
  • In the Description field, type: Use this topic when a user needs help resetting their password or is locked out of their account.

What does 'The agent chooses' mean?

With generative orchestration, the agent reads the topic's name and description to decide when to trigger it. You do not need to write specific trigger phrases. The AI matches user input to the most relevant topic automatically.

You should see the Trigger node on your canvas with the description you entered. The topic is now ready to receive its first conversation node.

Add a Question node with branching options

The first thing your agent should do when this topic fires is ask the user what type of account they need help with. Different account types require different reset procedures.

  • Below the Trigger node, click the Add node icon (the + symbol).
  • Select Ask a question.
  • In the question text box, enter: What type of account do you need to reset the password for?
  • Under Identify, select Multiple choice options.
  • Under Options for user, add three options:
  • Work email (Outlook)
  • Computer login (Windows)
  • VPN or remote access

Copilot Studio automatically creates a branching path for each option on the canvas.

  • Under Save user response as, click the variable name and rename it to AccountType.

Why rename the variable?

Copilot Studio auto-generates variable names like Var1. Renaming to something meaningful like AccountType makes your topic easier to read and maintain, especially when you add conditions later.

Your canvas now shows three branching paths extending from the Question node. Each branch corresponds to one of the options you added.

Build the Outlook branch with a resolution message

Start with the most common request. When someone selects the Outlook option, the agent should provide clear step-by-step reset instructions.

  • On the Work email (Outlook) branch path, click the Add node icon.
  • Select Send a message.
  • In the message box, enter the following text:

For Outlook password resets, follow these steps: 1) Go to https://account.microsoft.com 2) Select 'Forgot password' 3) Follow the verification prompts 4) Create a new password. Your new password will sync within 15 minutes. Is there anything else I can help with?

  • Select Save in the top right corner of the canvas.

What is a Message node?

A Message node sends text to the user without expecting a response. It is the simplest node type. Use it for delivering instructions, confirmations, or any information the user just needs to read.

Before you test, think about what should happen when you type "I need to reset my password" in the test chat. Will the agent jump straight to giving you Outlook instructions, or will it ask you a question first?

  • In the test chat panel on the right, select Start new test session (the refresh icon at the top of the panel).
  • Type I need to reset my password and press Enter.
  • The agent should trigger your Password Reset topic and ask about the account type.
  • Select Work email (Outlook).
  • Confirm the agent responds with the Outlook reset instructions you wrote.

Agent not triggering the Password Reset topic?

If the agent gives a generative answer instead of asking about account type, check that you saved the topic after adding the trigger description. Also verify that the trigger description mentions "password" and "locked out" so the agent can match the user's input.

If you see no response at all, make sure you clicked Start new test session before testing. The agent needs a fresh session to pick up topic changes.

Why isn't my Password Reset topic triggering in the test chat?

Your Password Reset topic is working. The agent asks the right question, branches based on the answer, and delivers tailored instructions for the Outlook path. Next up, you will complete the remaining two branches so every option leads to a resolution.

Complete the Conversation Flow with Branching

Your Password Reset topic can handle Outlook resets. That is one scenario out of three. Real users arrive with different problems, and the Windows and VPN branches currently lead nowhere.

Completing all branches turns your topic from a prototype into something that handles every scenario. The VPN path adds extra depth with a follow-up question that narrows the problem before giving a specific fix.

In this step, get ready to:
  • Complete the Windows login branch with a resolution message.
  • Build the VPN branch with a nested question and two specific fix paths.
  • Close all branches with Topic management nodes so conversations end cleanly.
Add the Windows login resolution

The Windows branch needs a single Message node with step-by-step instructions for resetting a Windows PIN.

  • Return to the Password Reset topic canvas in Copilot Studio.
  • Find the Computer login (Windows) branch path below the Question node.
  • Click the Add node icon on that branch.
  • Select Send a message.
  • Enter the following message text:
To reset your Windows login password: 1) On the sign-in screen, select I forgot my PIN 2) Sign in with your Microsoft account 3) Follow the verification steps 4) Set a new PIN. If your device is managed by your company, contact your IT admin through the Teams chat instead.

What does this message do?

This gives the user a clear, numbered sequence they can follow on their physical machine. The final sentence handles the edge case where the device is company-managed and a self-service reset is not possible.

  • Confirm the Message node now appears on the Windows branch in your canvas.

You should see the message text displayed inside the node on the canvas. The Windows branch is now complete.

Build the VPN branch with a nested question

VPN issues are harder to diagnose than a simple password reset. Instead of one generic answer, you will ask a follow-up question that narrows the problem first.

  • Find the VPN or remote access branch path below the original Question node.
  • Click the Add node icon on that branch.
  • Select Ask a question.
  • Enter the question text: Are you getting a specific error message?.
  • Under Identify, select Multiple choice options.
  • Under Options for user, add two options: Connection timed out and Invalid credentials.

Copilot Studio automatically creates a branching path for each option. You should see two new branches appear on your canvas.

Why a nested question?

A timeout error and an invalid-credentials error have completely different root causes. Asking this question before giving a fix avoids a one-size-fits-all response that would frustrate the user.

  • On the Connection timed out branch, click the Add node icon and select Send a message.
  • Enter the following message text:
Connection timeout usually means the VPN server is temporarily unavailable. Try: 1) Disconnect and wait 30 seconds 2) Switch to a different network if possible 3) Restart the VPN client application.
  • On the Invalid credentials branch, click the Add node icon and select Send a message.
  • Enter the following message text:
Invalid credentials typically means your VPN password expired separately from your main password. To fix this: 1) Open the company portal at https://myapps.microsoft.com 2) Update your VPN password under Security settings 3) Reconnect using the new password.

What does each message do?

The timeout message addresses a server-side issue with practical retry steps. The invalid-credentials message addresses a user-side issue where the VPN password expired independently of the main account password.

Each message gives a specific, numbered fix rather than a vague suggestion to contact support.

  • Confirm both Message nodes now appear under their respective branches on the canvas.

Don't see two branches under VPN?

Make sure you selected Multiple choice options under Identify in the Question node. If you accidentally chose a different identification type, the automatic branching will not appear.

Help me fix my VPN branch in the Password Reset topic.

Close each branch with a Topic management node

Without a clear ending, the agent leaves the conversation hanging after delivering a resolution. Adding a Topic management node signals that the conversation is complete.

  • On the Work email (Outlook) branch, scroll to the bottom of its Message node.
  • Click the Add node icon below the message.
  • Point to Topic management and select End the conversation.
  • Select End with survey when prompted.
  • Repeat this for the Computer login (Windows) branch: Add node, Topic management, End the conversation, End with survey.
  • Repeat for the Connection timed out sub-branch: Add node, Topic management, End the conversation, End with survey.
  • Repeat for the Invalid credentials sub-branch: Add node, Topic management, End the conversation, End with survey.

Why end with a survey?

Selecting End with survey triggers the built-in End of Conversation system topic. This asks the user whether their issue was resolved and collects a satisfaction score. It also marks the session as resolved in your agent's analytics.

Your canvas should now show every branch ending with a Topic management node. Before you test, predict: if you type a VPN-related message, do you think the agent will route you to the nested question or give a generic response?

  • Click Start new test session in the test chat panel on the right.
  • Type I can't connect to VPN and press Enter.
  • Select VPN or remote access when the agent presents the account type question.
  • Confirm the agent asks Are you getting a specific error message? with two options.
  • Select Invalid credentials.
  • Confirm the agent responds with the VPN credential fix instructions including the https://myapps.microsoft.com link.

The agent routes you through the full nested flow. Every option now leads to a specific resolution and a clean conversation ending.

Agent not triggering the Password Reset topic?

Make sure the topic's Trigger description matches: "Use this topic when a user needs help resetting their password or is locked out of their account." The generative orchestration uses this description to decide when to fire the topic.

If you still see a generic response, try more direct phrasing like Reset my VPN password in the test chat.

Why isn't my Password Reset topic triggering in the test chat?

All three branches of your Password Reset topic are fully built. Next up, you will publish your agent to a live demo website that anyone can visit and interact with.

Publish to a Demo Website

Your Password Reset topic is fully built with branching paths for every account type. Now it is time to make your agent accessible to the world.

Right now, only you can interact with the agent through the test chat panel inside Copilot Studio. Publishing to a demo website gives you a shareable URL that proves your agent works end-to-end. You can include it in a portfolio or show a recruiter in under 30 seconds.

In this step, get ready to:
  • Configure authentication settings so anyone can access the demo site.
  • Publish the agent to make it live.
  • Set up and customize the demo website channel with a welcome message and conversation starters.
Configure authentication for the demo site

The demo website channel does not support user authentication. If authentication is left at its default setting, visitors to your demo site will hit an error instead of your agent.

  • On the top menu bar, select Settings.
  • In the side navigation panel, select Security.
  • Select Authentication.
  • Choose No authentication.
  • Select Save.
  • Exit Settings by clicking the X or back arrow to return to your agent.

Why no authentication?

The demo website channel does not support single sign-on or integrated authentication. Setting it to No authentication ensures anyone with the URL can chat with your agent without hitting an authentication error.

For a production deployment (like Microsoft Teams), you would use a more secure authentication option. The demo site is for testing and portfolio use only.

Publish your agent

Publishing pushes your agent's current configuration (including the authentication change you just made) to the live environment.

  • At the top of the page, select Publish.
  • In the confirmation message, select Publish again.

A green success banner appears at the top of the page. This confirms your agent is now live.

Not seeing the green banner?

If publishing fails, your account may be on a trial license. Trial licenses allow testing in the chat panel but do not permit publishing. Confirm you have a full Microsoft 365 subscription with Copilot Studio access.

If you see an error about permissions, check with your organization's admin that your account has the Copilot Studio maker role.

help me troubleshoot why my Copilot Studio agent won't publish

Set up the demo website channel

The demo website is a prebuilt page hosted by Microsoft where anyone with the link can interact with your published agent. You will customize it with a welcome message and conversation starters that guide visitors on what to ask.

  • On the top menu bar, select Channels.
  • Under Channels, select Demo website.
  • On the Demo Website panel, under Welcome message, enter: Hi! I'm the IT Helpdesk agent. Try asking me about password resets, Wi-Fi issues, or software installation.
  • Under Conversation starters, add the phrase Reset my password.
  • Add a second conversation starter: VPN not working.
  • Select Save.
  • Select Open demo website to open the demo site in a new browser tab.
  • Copy the URL shown under Share your website so you can share it with others.

What are conversation starters?

Conversation starters appear as clickable suggestions on the demo site. They guide visitors toward topics you have built, making it easy for someone to trigger your Password Reset flow without guessing the right phrase.

Before you test, think about what you expect to happen. If you type a general IT question, will the agent use its knowledge source or your custom topic? If you type "I need to reset my password", which path should fire?

  • In the demo website tab, first ask a general IT question like "How do I connect to Wi-Fi on Windows?" and confirm the agent generates an answer with a citation from its knowledge source.
  • Then type I need to reset my password and walk through the entire Password Reset flow by selecting an account type and following the branches.

You should see the agent respond to general questions with cited answers from the knowledge source. When you trigger the password reset, it should ask about your account type and provide the correct resolution message for whichever branch you select.

Seeing an authentication error on the demo site?

If you see an error mentioning authentication not supported in the channel, go back to Settings > Security > Authentication and confirm it is set to No authentication. After changing the setting, you must publish your agent again for the change to take effect.

help me fix an authentication error on my Copilot Studio demo website

Secret mission

Add an Escalation Path

No agent can solve everything. Real enterprise agents need a graceful way to hand off to a human when they are stuck. In this secret mission, you will add an escalation path that acknowledges the user's frustration, provides clear next steps, and redirects from your Password Reset topic when none of the existing options fit.

Clean Up Your Resources

Clean Up Your Resources

Decide whether to keep your resources running or delete them entirely. This project runs entirely within your Microsoft 365 subscription, so there are no ongoing costs regardless of what you choose.

Resources you used:

  • One IT Helpdesk agent in Microsoft Copilot Studio (included with your Microsoft 365 subscription).
  • One demo website hosted by Microsoft (no separate cost, tied to the agent).

Keep everything running

No action needed. Choose this if you want to keep iterating on your agent or sharing the demo website URL with others.

  • Your agent remains accessible via the demo website URL at no cost.
  • You can continue editing topics, adding knowledge sources, and republishing at any time.

Pause - I'll come back to this later

Take the demo website offline while keeping your agent and all its configuration intact. This prevents anyone from chatting with your agent via the public URL, but preserves your work for later.

  • In Copilot Studio, select Settings in the top menu bar.
  • Select Security in the side navigation, then select Authentication.
  • Change the setting from No authentication back to Require users to sign in. Select Save.
  • Anyone visiting the demo website URL will now be prompted to authenticate, effectively taking your agent offline for anonymous visitors.
  • When you are ready to resume, reverse this setting and republish.

Delete - I don't want to use this again

Remove all project resources permanently. After deletion, all agent data, topics, knowledge sources, and the demo website are gone and cannot be recovered.

  • Go to the Agents page in Copilot Studio (select the Copilot Studio logo or navigate to the home screen).
  • Select your IT Helpdesk agent from the list.
  • On the top menu bar, select the three dots next to Settings, then select Delete.
  • Copilot Studio prompts you to confirm. Enter the agent name (IT Helpdesk) and select Delete agent.
  • After a few minutes, all data associated with the agent is deleted permanently. This includes the demo website, all topics, and the knowledge source connection.

Nice Work!

Nice Work!

Nice work! You just built and published a fully functional IT helpdesk agent using Microsoft Copilot Studio.

You've learned how to:

  • Built an AI helpdesk agent from scratch by describing what you wanted in natural language, then refined its name, instructions, and tone to match a professional IT support persona.
  • Grounded the agent in a public knowledge source so it generates accurate, cited answers to real IT questions instead of relying on generic AI knowledge.
  • Designed a multi-turn Password Reset topic with Question nodes, Condition nodes, and Message nodes that branches based on user input, and published the agent to a live demo website with a shareable URL.
  • Secret Mission: Added an escalation path that hands off unresolvable issues to a human agent, demonstrating end-to-end conversational design including graceful failure handling.

Ready to quiz yourself?