Building an AI Agent in Microsoft Copilot Studio: Complete IT Support Bot Tutorial
This tutorial will guide you through creating a powerful AI agent for IT support using Microsoft Copilot Studio. You'll build a bot that can search a knowledge base, use AI for generative actions, and automate rule-based actions like creating support tickets. For a broader introduction to the platform, see this How to Use Copilot Studio: Complete Beginner Tutorial for Building AI Agents.
Getting Started with Agent Creation
- Navigate to CopilotStudio.microsoft.com.
- Click Agent in the left menu.
- Select Create blank agent in the upper right corner.
Configuring Agent Details
- Name: Change from "Agent" to "IT Support Agent"
- Description: "The IT support agent provides self-service IT support by answering common questions and enabling users to create IT service requests when further assistance is required."
- Icon: Upload a custom icon (available in the lesson files linked below).
Adding Knowledge Sources
To ensure your agent answers accurately, you must connect it to internal knowledge.
- Disable web search: Go to Overview > Select your agent's model > Knowledge. Toggle off "Web search."
- Choose a model: Select DBT-5 Chat (stable) over experimental or preview models.
- Add knowledge: Click Add knowledge and choose OneDrive.
- Upload your document: Upload the "IT Service Desktop Knowledge Base" Word document (approx. 20 pages) to your OneDrive first, then browse and select it from Copilot Studio.
- Confirm: Click Add to agent and wait for the status to change to "Ready."
Important: Disable "Use general knowledge" in Settings > Knowledge to prevent the agent from using general AI knowledge for answers.
Setting Agent Instructions
Instructions guide the agent's behavior. Go to Overview > Instructions and click Edit.
You are an internal IT service desk agent for [Company Name].
Only provide answers about the IT service desktop knowledge base.
If you are asked about topics outside the IT service desktop knowledge base, politely remind the user that you are an IT service desktop knowledge base assistant and only answer questions about them. Do not attempt to answer the question.
Creating Custom Topics
Topics guide the agent through specific scenarios. For a deep dive on building and managing these conversational paths, check out this Build AI Agents with Microsoft Copilot Studio – No Code Guide.
Topic 1: Capture the Issue
- Name:
CaptureTheIssue - Trigger: Agent chooses (when user describes a problem)
- Action: Set a variable
- Variable name:
UserIssueText(Global scope) - Value:
System.Activity.Text(captures user's last message)
- Variable name:
Topic 2: Create IT Support Request
- Name:
CreateITSupportRequest - Trigger: Agent chooses (when user wants to create a ticket)
- Actions:
- Ask a question: "Would you like me to create an IT support request for you?" (Yes/No options)
- Condition: If "Yes" -> Send message: "Your IT support request has been created. The service desk will follow up shortly."
- Condition: If "No" -> Send message: "All right! Let me know if you need anything else."
Integrating Actions with Tools
Connect your agent to external systems using tools. We'll use Microsoft Planner to create support tickets.
Creating the Flow
- Go to Tools > Add a tool > Agent flow.
- Input: Add an input variable named
IssueDescription(Text). - Action: Create a task (Planner connector)
- Plan: IT Support Issue Tracking (created earlier)
- Title: "IT Support Request"
- Bucket ID: "New Issues"
- Start Date:
convertTimeZone(utcNow(), 'UTC', 'W Europe Standard Time') - Due Date:
convertTimeZone(addDays(utcNow(), 3), 'UTC', 'W Europe Standard Time')
- Second Action: Update task details
- Task ID: From created task
- Description:
IssueDescription(from input)
Adding a Prompt for Summarization
- Go to Tools > Add a tool > New prompt.
- Name:
SummarizeIssue - Model: GPT-5 Chat
- Instructions: "Summarize the user's issue in two clear sentences for an IT support ticket."
- Input:
UserIssueText(Text) - Test with sample data.
Integrating into the Topic
- Open the
CreateITSupportRequesttopic. - In the "Yes" branch, after the question, add the
SummarizeIssueprompt tool. - Map the prompt's input to the global variable
UserIssueText. - Create a new variable
IssueSummary(Record) to store the output. - Add the
CreateITSupportTicketflow tool. - Map the flow's input to
IssueSummary.Text.
Publishing and Deploying Your Agent
- Click Publish in the upper right corner.
- Go to Channels.
- Add channels: Select Teams and Microsoft 365 Copilot.
- Customize: Edit details, add icon, and configure availability.
- Share: Submit for admin approval or share directly with users.
- Admin approval: In the Microsoft 365 Admin Center, approve and publish the agent for all or specific users.
Testing Your Agent
- In Copilot Studio: Use the test pane on the right.
- In Teams: The agent will appear as a chat bot.
- In Microsoft 365 Copilot: Users can find and add the agent from "All agents."
Your fully functional AI agent is now ready to assist users with IT issues and automate ticket creation! Once deployed, learn how to get the most out of your new agent by exploring this Master Microsoft Copilot in Teams & Outlook: Communicate Better with AI guide to enhance daily communication tasks.
Let me show you every important step in creating AI agents in Microsoft Copilot Studio. To find Copilot Studio, you
navigate to CopilotStudio.microsoft.com. Then to create an AI agent, you click agent here in the left menu. Up in the
upper right corner, say create plank agent. This will start the agent setup in Copilot Studio. Today you and I will
create an agent that will help an IT department. This case is designed so I teach you everything and you can
actually build along. I would recommend that our IT support agent will be able to search in a knowledge base that will
be one drive and word. It can also use AI to perform actions both generative actions using AI but also rulebased
actions such as updating our IT service board. We will also cover how to publish our agent to external sources such as
teams and Microsoft 365 copilot. Let's get started. First of all, here in the details, our agent is right now named
agent. Let's go change that. So, I will click edit here. We will call this IT
support agent. Then we will give it a description. The IT
support agent provides self service IT support. And please do this
with me. You will learn so much faster by answering common questions and enabling users to
create it service requests when further
assistance is required.
So that's it. We can also give it an icon. This is for internal use, but it is nice when you build a lot of AI
agents in Copilot Studio that you can distinguish them from each other. So click change icon. Then you click change
icon down here. And if I go to my desktop, I have the lesson files ready. So these are the lessons files that I
prepared. And in there we have an icon. You can get the lessons files by clicking the link in the description
below. Fill in your email and you will have the lesson files right away. Then I can click open and I click save.
So right now this agent is getting saved. It now has a name, an icon, and a description. We can also test it. So, if
I go over to the right to the test your agent, if you don't see it, it might look like
this. You can always find the test up in the upper right corner by clicking test. Then we can test it. For example, try to
say my VPN stopped working after I changed my password.
What should I do? Of course, right now our agent doesn't know anything because we haven't gave it any [clears throat]
knowledge. So here it goes on the web. We can see it gives us a guide. It also got three references. If I click one of
them, I will come to this and I could try to click the other ones. This is probably not how we want our AI agent to
behave. Sometimes it's nice with web sources, but since we are in IT support today at least, we want to only have it
looked in the official sources. So, let's improve this and see that we can solve for this. First of all, we go back
to overview up here in the upper menu. Select your agents model. We'll click that. Here we have various models
including the new entropic models, the Claude Sonnet 4.5 and the Opus. First of all, don't go with the
experimental. Experimentals are early models for testing new capabilities but not ready for productions since they are
less stable. Preview, they are almost ready for production but may still change. Let's go with the DBT5 chat. And
again this will update the model. We also want to give our agent some knowledge. So first of all I scroll down
to knowledge. Right now the web search is enabled. That's what we saw here. I don't want that. So I will disable this.
I can give it my knowledge by saying add knowledge here. Here I can add knowledge from various sources. I can upload a
file public website sharepoint service now ashure SQL datav versse in advanced I even have further options such as
datab bricks conference and synesk I don't want to upload my file today and that is because I want to make sure that
if this document gets updated this agent will also have the updated answers. So I can go to my one drive. Let's first
inspect what knowledge will be. So we will go into the lesson files. Take the IT service desktop knowledge base.
So as you can see we have around 20 pages. We will need to feed that into the
Microsoft cloud. Right now it's on my desktop. My desktop is not synchronized with one drive. So what I do here is to
Ctrl C to copy it. This is the root of my one drive. Let's create a new folder here. New folder. Feel free to place
yours wherever you want. I will call this anensen or IT support knowledge. Something like this. Anenog is by the
way my company. So if I go in here and Ctrl +V paste the word document, it's now synchronized with one drive. I can
close this. Let's add the knowledge because if I go to one drive now, click browse items. Then I can go into my
files and then you will see the new folder here onenorg it support knowledge.
Here we have the word document. I can confirm selection up here. The description, this is not
for the agent, but for us, let's say something like primary knowledge source
for the IT support agent. If a cuse
trouble shooting and how to
guidance for every everyday IT issues and then we can say add to agent.
Now it will add this knowledge to the agent. First of all you will see that it loads here for a little while. Let's
fast forward. There you go. And then you see in the knowledge you will see that this is in
progress. We will have to wait until it says ready. So let's again fast a little bit forward.
That's it. Now it says ready. We can test it again. We will use the same prompt. So
let me just mark this. Say Ctrl C. Of course in the real world you could just type it again. Then we will start a new
test session. I will go down here. Now what I want to see is that it can answer based on the
knowledge. So if I do this you will see that it reviews its knowledge. If it's the first time then I need to say allow
and then it will answer. So here we can see that
here's what you need to do to fix your VPN after password change. That looks fine. We can also see that it
reference their document. If I go up to new session again and if I answer it asks something about how do I reset my
Salesforce password and then I click enter. Then this is not covered in the document
by the way. But then I will see that it still answers. Now it answers and I can see it up here. This response was
generated by using general knowledge from the large language model. I don't want that. This is when the model got
trained the GBT 5 that we chose. So we need to do two things. The first thing is to go up into settings in the upper
right corner. Then I can scroll a little bit down into knowledge. Here I can see use general knowledge. The foundational
knowledge that generative AI was trained on. I don't want that. Click save. However, it will still answer on the
general knowledge at least sometimes. So what we also want to do is to go over to overview. We can also give it
instructions. Instructions are rules to our AI agent on how to behave. If I click edit up here, first of all, let's
just say you are an internal IT service desk agent for an NORC. Let me have a few line breaks. Now I want to be
very explicit. So I say only provide answers about the IT
service desktop top knowledge base.
So I and then I say if you are asked about topics that are outside the IT service
desktop top knowledge base
politely remind the user that you are an
you are an IT service desktop knowledge
base assistant and only answer
questions about them. do not attempt to answer the question.
Let's delete this. So yes, very explicit. I can click save now and then we can test with the same prompt again.
So let's refresh the test window over here. And then I say how do I reset my Salesforce password?
Now it should answer that it do not know because that's what we told it. So let's see here
to reset you follow the general password guidance from our IT service desktop base. Here we can see that use the
company reset method if available. So here it just said that if the reset fails due to multiffactor authentication
issues that one is covered in the document then you can do this or you can contact the service desk for assistance.
So right now it doesn't give any guidance on how to reset the Salesforce passwords from the general knowledge.
One thing salt but we will get more explicit on the instructions. Don't worry.
So what I also want to do here is to introduce topics. Topics guides the agent through specific structured
scenarios. So that is when we in certain scenarios when we want the agent to behave as we want. Then we can create a
topic. You will find the topic up here in topics. We have custom topics and system topics. Try to click the system
topics. These are topics that make your agent work. You can disable them but you cannot delete them. I will not recommend
to disable them. So for example, click on the conversation start. This is a topic that is invoked each time a new
conversation start. As you can see over here at conversation start. Hello, I'm it support agent. How can I help? This
is exactly this message. And if I go click in here, I can see hello, I'm bot name. And the bot name is this IT
support agent up here. How can I help? Let's try to add you. And maybe also a an icon. So
that is the window icon and then a dot. And let's have a little bit of a geekies icon here. Like those. Let's give it
this. So then this save is grayed out. That's because you need to click away and then
you can save it. So a small thing, but you can change them. But please don't delete them or disable them. Let's go
test it here. Now you will see that we get an emoji over here and a U. So far so good. Let's go back to topics because
we also can talk about custom topics. These are topics that we can create ourself.
So first of all, we want a topic that grabs the last message from the user immediately. So once the user provides a
problem, we want to grab that. That's because we want to save it into a variable. So we can we may use it for a
support ticket later in this AI agent flow. So what I do here is to go up to add a
topic and I choose add from blank. Then let's talk about what this does. This this needs to capture the topic of
the user. So here we can call it something. Right now it's capture [groaning]
the issue maybe. So that's what it does. And then I can invoke it here. So here this trigger if I click
this up here we can see the trigger the agent chooses that is fine but I can also choose to invoke this topic on
other occasions. I just choose this then we can give it a description. So here we can say something like
capture the users initial problem description and stores it for later use
in support workflows something like that we can also we can also add the next step
we do that by clicking the plus here and I choose set a variable. So in variable management I take set variable.
So here we will create a new variable. You do this by clicking here say create new. Variables are containers for values
that we can use to pass these values to actions but also between these topics. So what I do here is to click the var
one. Let's give it a better name than v v one. So here I say user issue text. So where should this user issue text um
be used? Right now it can only be used here in this topic. Let's set this to global. So it can be used in other
topics. That's exactly what we want. What value do we want it to have? Click the X here. Go to system. What you do
here is to search for activity text. This one here takes the last message from the user and then it will get saved
into this global variable. So that's all this does. The intuition here is that we want to update our instructions in a
little while and say after the user has provided a problem first run this topic. Then if it's not covered in the
knowledge then we want this agent to be able to create an IT support ticket one step at a time. So I will click save
here. Then we also want to create another topic. Then we can gather both. So right now this saves. Let's go
back to topics and add a new topic from blank. We could also add it with co-pilot, but I find this a little bit
easier. Up in the left corner, let's give it a name. Create it to port
request like this. Then here, what does it do? Handles relations
and uh creation. Let me fix this. That's my broken English.
here and the creation of it support request when
knowledge is insufficient something like this
what I do here again is to uh let the agent choose that's perfectly fine so this topic here. This will get invoked
if the user wants to create a ticket. We could create it very advanced. However, let's just ask a question. So, if I
click the plus here, I will say ask a question. What should we ask? Probably something like would you like me to
create an IT support request for you? This will be a multiplechoice.
I can just go down here say new option. Yes like this. Click enter and then we can also see afterwards it creates a
condition. So if the user chooses yes here it will go down here and perform this condition. Similarly if I say new
say no hit enter. Now we have two options going forward here. Again, this is called v1 and it's a
choice variable. That's fine. But let's just say create ticket confirmation something like this. Now we
see that this changes and down here. By the way, this is the Pascal case notation. I recommend that you always
name your variables the same way. So what we want to do here, let's just send a message here. So if I go down
here, we will not create their IT support ticket for now. So this will just be the
last step. We can see it functions. Let's say something like your IT support
rest has been created. the service desk will follow up shortly. Something like this.
Can also go over here and we can send a message or here I can say all right that is if the user chooses not to have an IT
support ticket created. Let me know if you need anything else something like this. You
can see that all these actions this is named question and we have a [snorts] condition here. So best practice is to
rename all of them. However, since this is a learning situation, I'll just say ticket
confirmation, I will just do it in the yes branch here. Please do so. I recommend that you still keep the
original name. Then it will get much easier to see what's going on. So, condition and message. I say ticket
created like this. That's it. And then I can hit save up here. So, now we have two topics. We want to be able to
combine these two with instructions and I also want to be able to end here that's saying that we can create an IT
support request because then we will add a step here that will be a flow where we can actually do our agent AI agent can
perform actions. So let's talk a little bit about what will go in here. If I go back to the lesson files in this
instructions here, here I have the the instructions that we're going to use. And let's talk a little bit about what
we're going to do. I think this but here we have the same actions up here. Then we have steps. We have six
steps. Perform the steps one by one. Only continue to the next steps once the current step is finished.
So when a user describes a problem, error or issue, start the insert the insert the capture issue. So that's what
the first thing we created to store the user's initial description. Then it should go to step two. Determine whether
the issue can be answered using internal knowledge. If yes, then it should go to step three otherwise go to step four.
So if it can be answered then it should say answer using using only information explicitly found in the internal
knowledge sources. Do not use general knowledge and then continue to step six. However, if it couldn't be found, ask
the user to confirm whether an IT support request should be created. Then it should go to step five. only after
explicit user confirmation start the that's the IT support request topic and submit the ticket using the captured
issue description then it should go to step six ask the user if there's anything else they need help with we
take these instructions and say controll C and let's close it let's go back here so then you go to overview
now down here in instructions Click edit. Ctrl +V. We have a large one now. So here we need to
insert a topic. So I delete the placeholder. And up here I say add. And here we
capture the issue. Send. And now you can see that it gets inserted here. And similarly down here. These were just
placeholders in my text. We create the IT support request. Then you hit save and the instructions will be saved. Now
they are rather long. I will say in my AI agents they're probably even longer than this. Let's go test it
and then I can give it the same pump. I do I reset my
Salesforce password. Then you will see that it will follow the steps over here to the left. We can
also see that first it says capture the issue and that's what we told it. Then it will search the sources and down here
in the window we can see that it the internal knowledge base does not provide Salesforce specific instructions. Would
you like me to create an IT support request to help you reset your Salesforce password?
And I can say yes here. Then we have this second option. This was the message that we created. So now you can see that
now it creates the IT support request. This is the topic. Would you like me to create an IT support request for you?
Your IT support request has been created. The service desk will follow up shortly. Yes, we haven't create created
anything now. But now our flow works. Our AI agent can take these instructions.
Now we want our co-pilot studio agent to perform actions. We can do that under tools.
So let's go up to tools up here and say add a tool. Here we have a lot of tools. We have custom connectors such as
Outlook, Microsoft Teams. We also have prompts, flows, rest APIs and MCPS. We will click new tool sorry and here we
have various other options such as the new computer use that is your AI agent can perform actions independently.
We will go with an agent flow. This is much like Microsoft Power Automate if you try that a workflow engine. Here we
take we uh defined all these actions. First of all, what should this do? If the user wants to create a ticket, it
should create a ticket in our system. Let me show you how I want to do that. I will use Microsoft Planner. have that
free in your Microsoft 365 subscription. So just go to planer.cloud.microsoft. We also want to create a new team. So we
just create it in a demo plan. So if I go down here and I go to Microsoft teams,
click the chat and in the teams and channels here I can go to your teams and channels and up here I will create a new
team. I will delete this. After we will call this issue reporting demo
and we will have a channel called support issues. Then we will click create. We
will use this issue reporting demo here in planner. I can also do this and then we will just
have a blank team. So if I go back here then we will create a new issue board that our agent can interact with. And
this is very cool. I can go in the lower left corner in the upper right to find a new plan.
Let's go do that. We will just have a basic plan. What should this be called? IT
support issue tracking. The reason why we created a team was that it gave us a few
it will give us a few more possibilities. We can add it to a group. And if you scroll all the way down, you
will see the issue reporting demo. Then we can create it. Now we have this bucket list. If you're not familiar with
planner, these are just buckets. Right now we have one buckets called to-do. Click in here and say
new issues. And we have a new one. We'll call this in progress. So this is
our very simple IT support bucket. The intuition here is that new issues from the users comes into this new issue
bucket and then they can move it to in progress or close. Now we can go back to our tools. First of all, this is a tool
that our topic will call. We can add an input by clicking here and say add an input. What comes into this flow? Let's
call this one an issue description like this. Then we can click plus here. We can define the next
action. What you want to do here is to find a create a task. I'll go with this create a task here in
the planner. If this is your first time, it might ask you to log in. So then we have a group
ID. If this is your first time, you need to yeah log in again. But then you should
see it here. And we have a plan. We have this IT support issue tracking.
Then we could give it a title. This is the task title that you will see over in planner in a little while. So let's just
call this IT support request. Yes, we could also have a dynamic name. Then click show all. Then
you can see all the parameters that we can fill in. First of all, we have the bucket ID.
That one will be new issues. So this task will land in the new issues. You can also have a start date and an end a
due date. Sorry, the start date that will be today. But since Microsoft calculates everything in UTC, I need to
standardize it to my time zone. And again, if you're familiar with Power Automate, you will find this very easy.
If I go down here, I can create an expression by clicking this FX. Then we have the expression editor. So to find
the current time, I could use the UTC now. But I also want to convert it. So this just finds this. And let me just
actually delete everything and start forward. This is also important when you build in copilot studio these
expressions. So please try to do it with me. Convert time zone. You can see this
intellisense. You can select this and click enter. That will find it. Then I have a parenthesis. It says what do I
want to convert? Well, that will be the UTC. Now, now I can click enter once more.
Then we can have a comma. What's the source time zone in single quotation marks? say UTC comma then it will be the
destination that will be W Europe standard time like this. So this will be
the expression. What we do here is to click add. If it says it got a problem, it's not. Just
click once more and then you can see it's got inserted here. Then we also want to add a due date. Well, we will
actually use the same expression here. I can find it again by just clicking it. Say Ctrl C. Then we go down to due date.
Remember to click the FX here. Ctrl +V. But now we want to add three days to the UTZ. Now first before we
convert it I can do that by going in here and I can find the add days I will have a parentheses around the UTC
do now. So add days then I will have how many days do I want to add? I will add three days and then I will have a
parentheses end. So now this will say well find a UTZ now add three days and then convert it to
Western Europe standard time. Sometimes they disappear when you click add. I kid you not. So what I recommend is to mark
it say Ctrl C just to copy it. Say add and let's just confirm that we have as you can see we have the add days here.
That is the due date. Can also say who needs to be assigned. Right now there's only one person in the IT support. So
that will be me. You will fill in your new uh your email here. We cannot update the description directly. We need
another action for that. So what I want to do here is to have the plus and then you say update task details.
Here I click and then we have a task ID. So this task ID that will come and from up here. So then you say enter custom
value and then you can click the lightning. Click the see more because we cannot find the ID here I guess. And
then you need to look for this ID. Then we can have it we can have a description. This description was let me
scroll up. We got that here in the issue description variable. Scroll down again. Click in here and this is just another
AI tool called Grammarly but click the lightning. Scroll down and under when an agent calls the flow say issue
description. We have it here. Then what you need to do next is the upper right corner click save draft. Then you will
see you can come to overview. We will do that because right now it's called untitle.
Can change that either up here or in the overview just to show you that here we have it.
We can also change it here in edit. Let's call this tool create it support ticket
like this and then we will hit save. You can also have um analytics for this specific tool and a new function is this
how how much time we saved from this exact tool. We will just go back to the designer
again. We we can now see we can hit publish and the this test is also available now. So before we do anything
we could start to test it. We will just do it manually. This will just run the tool not the agent itself. Here you will
see that you need to sign in first time and then we need to manually give an issue description. Of course this is
what we want our agent to do. So here I can say my SAP doesn't work at all.
Please please help. Urgent.
What this does when we test it is also to see that this tool works. So here you can see that it's currently turned off.
What we want to do is to forgot to hit publish. then we can test it. I hope you like these live demos. You hear all my
thoughts and you also see small mistakes like this and how we solve them. If you like it, please give the video a thumbs
up. That will really help me a lot. Anyway, now we can test it. We just do it again.
My SAP doesn't work. Please help. Urgent. Something like this. And now I
can run the flow. Then you will see that when I click done here, I want to have my flow run successfully. Up here in a
little while, your flow ran successfully. Here we can see that the task got
performed. And if I go to my IT support, we have an IT support request here. If I click in here, we have assigned an
Jensen. We have it with a title. We have a start date and a due date 3 days later. And we also have this note. My
SAP doesn't work. Please help. Urgent. So far so good. Now I just want to be able to have this IT support requests. I
want it to uh be in the topic. So I want this tool to be able to be called from the topic. We have published it. So now
we can use it. We can go back to our agent up in the upper left corner. IT support agent. So when does this need to
go in? That will be here in the create it support request. So I go up to topics.
Create IT support request. We remember we have created two topics. Then I can scroll down. So if the user chooses to
create a topic then we want to create it. However, let's imagine that the user have created an enormous long
um request of the problem. Then we might want to summarize it or at least we want to do it here in our use case because
then we can use introduce another nice feature that is the prompt. So if I go here click plus
and then if I go to add a tool I can say new prompt. This will create an action in the AI builder.
I do this again. We can give it instructions and then it can perform it can use its reasoning capabilities.
So this is a separate tool. First of all, let's delete this custom prompt name. I
will say summarize issue the model. Let's go with a GBT 5 chat to improve it a bit.
Then I can say summarize the users issue in two clear sentences for an IT support ticket. We'll do like
this to enter click. Here's the users issue. Then we can add uh the
variable. So I say or I can create an input variable at least for this prompt. I can say add content. We want to have
text coming in. What should we call it? Let's call this one user
issue text. We created this variable, the global variable in our first topic. We can also give sample data. That is
because we can click test in a little while and then the model we can see how the model responds. Let me show you a
really long prompt that I created. So in the lesson files go to user issue text long.
Mark it. Ctrl C. Copy it back here in the sample data. This will be ignored at runtime. But now we have this sample
data. So we can test it. Meaning that when I click test here, we will see that we get two sentences over here. That's
exactly what we want. So we want it to be summarized into two sentences. If I'm happy with what I see, I can see I now
have an input variable that is this user issue text. Then I can click save. Um a prompt with that name already
exists. That's because I have a prompt in my library. So what I want to call it, we can just call it V2
and hit save. That one will work. In your in your case, you can just have a not with a V2. Then in the yes branch,
we have this prompt. So what I can see here is that I have the user issue text. Here I will use the it will take the
global variable. So what I do here is that I click this and here I can see the user issue text text it is a global
variable and not a topic variable. I just do like this then I can also see that it gets saved. So if I click here
it gets saves into the prediction output. Let's call this one create a new
variable called that one. It's a record variable. So let me click it and up here we will call this issue
summary. Now we can use this issue summary. We can feed that to our tool which were the
create it support ticket. So I click the plus here to find our tool. I'll say add a tool and then you
will see that the create IT support ticket is here. We can also search for it. We do this.
Then it needs a description. We almost have it up here. We just need to convert this to a text. So I go down here, click
the three dots, and then I find the issue
summary. Here you want to take it the text that will convert this into a string which is
exactly the variable type that this tool needs. Now we have everything we need. We can click save here.
Then we can test it. Very exciting. So we have we have only we have this one here. This IT support request. We don't
want this, but we need to add a new topic. So, we go back here. We saved it. I can click plus over here
and and go down here say CtrlV. Paste in this long message is sending.
So, here you can see thank you for sharing your details. Based on your description, this seems to be an SAP.
Unfortunately, I don't have any internal knowledge articles available. Would you like me to create an IT support request?
I can also see if I go up to the left that this is the capture the issue. So, now it actually follows the step that we
instructed it in. Would you like to create an IT support request? Yes, please.
And if this is your first time using the planner, we will click allow. And come on your IT support request has
been created. This explanation of tool call that is for debugging. It will not be when you publish this agent. It's
only here in the test window. So let's go inspect it over here. If you don't see the IT support request, that is just
because you need to refresh the page page. Now you have it. It's it will be the upper one. There you go. Now this
agent can actually create items. It can summarize the users's content. Here we have two sentences.
This is extremely nice. I can also if I do this can also go back and [snorts] let's have a new test session. So let's
say I'm not just to test it even further. I'm not receiving my multiffactor
code. How can I fix this? This will be uh here we can see capture the issue.
Now it will search in the internal knowledge base and here we have the steps. That's because that was provided
in the internal knowledge. I can also try to let me just take this text again to my clipboard. Maybe I had it
new test session. Let's try it again. And we also need to test that when I do this
and here it says that it cannot find it. Would you like me to create an IT
support request? I could say yes here because then we have the double confirmation. Would you like me to? And
if I say no here, I would like it. All right. Let me know if you need anything else. That was exactly what we specified
in the topic. So now we have checked for that. And let's just recap what we did here. Here we have captured the issue.
Let's takes the message. So we can use it in a prompt that will take this message here and distilled it. Then it
will search in the knowledge and here you can see it could not find it. Would you like me to create an IT support
request that is nice and let me go to topics because up here in the capture issue
this was just creating a variable with the last message but here in the create it support
then the user could choose yes or no. And here we have the messages. We even have the prompt here. And we also have
this action. All good. Now, now you probably want to publish this agent. So, we can use it in, for example, Teams or
Copilot 365. First, you need to click publish up in the upper right corner. Hit publish once
more and then wait a few seconds. That's it. Our agent has been published. The next thing you want to do is to go
to channels. Here we can see where we can publish it to and we have unlimited options. That is because we can publish
to teams, uh, shareepoint, WhatsApp, Facebook, Salesforce, but we can also use a web app or a native app. We can
build our own. What we will do today is to take the teams and the Microsoft 365 copilot. Then you go over here to the
right. We also want to make it available in the 365 copilot. So we'll have this check mark. We cannot edit any of these.
Don't worry, we can do that in a little while. Go in the lower right corner and say add channel.
Now before we make it available, we can customize it. So let's just turning on the teams. Here we
go. Now all of this becomes available. Here you can see another icon that is the external icon. So we want to add our
wrench here. First we go into the edit details. Right now it got this icon. That's because the icon that we provided
in the beginning was the internal icon. We will just have the same. So I click change icon. Go into the lesson files.
Go pick this. And we have added it. There will also sometimes be a background. It looks silly with a green
background. So, change the color to white. That's it. Close this. Here you can see it says build using Microsoft
Copilot Studio. Let's change that. I will just change it to internal IT service
desk assistant. The long description. Well, let's [snorts] have a more
helps employees resolve IT
issues using internal knowledge and create IT
support tickets when needed. I [snorts] can configure a lot of other things. Should the user be able to add
this agent to a team? Not that [clears throat] important. Now I click more. We can add websites to the agent
and other things. I think we should change our developer name. Change it to your name. I will change it to anen. And
then I will hit save because before these changes kicks in, I will close this sidebar. I need to publish it once
more. So if you don't see the changes, click publish here. That's probably because you haven't clicked publish. And
by the way, I created a complete Copilot Studio course. You will find it right here. The price is very low. It will
always be updated and it's much more comprehensive than here. There you get all the lessons. Anyway, then I can go
back to channels teams and Microsoft 365 copilot. Here you will see that we have our IT
support agent. Let's start in the teams. So if I click here and I say open, then we can add it to teams. We have the
developer name. Up here we have the short description and the long description. I click add. The first time
we start using it in various places, we need to confirm that it could have access to my personal partner or uh the
one drive. So here it will add. That's it. I can choose to open it. And now you will have a chat. Hello, I'm
your support agent. Ctrl +V. Let's just see that. Can do it once more. I've captured the details
based on this seems like. Would you like me to create an IT support ticket? Yes. And there we have the yes and no. Let's
just do it. uh with a yes then we will say that we will see that sorry that we need to allow the planner
once we have clicked there then this will answer your IT support got created then we will see that we now got a new
issue of course it's roughly the same as the previous but now it also works from teams we probably want to have it in our
organization built by your organization. Right now, it's only available for me. So, let's publish it to the
organization. Let me go back here to Copilot Studio. If I go to the preview here that you
came in here by clicking the teams and Microsoft 365 copilot availability options here, I can share it with my
teammates and shared users. Should probably do that, not share with the entire organization. But if I'm it and I
want to share it with everyone, I can also show to everyone in my organization.
In the lower right corner, I click to submit for admin approval. I can say yes here. And now it will send be sent to
the IT admin. Even though that this is me in this case, I will still need to improve it in the Microsoft 365 admin.
Yeah, I can wait for approval. I can open up a new browser tab and then I can go to m365.cloud.microsoft.
Sorry, that was copilot. Anyway, I can find it down here. I need to go into the admin. It was admin.cloud.microsoft.
Sorry. Then in
the agents here I can click all agents and if I go to requests you will see that the IT support agent
is pending review. If I click the three dots or I click in and I say publish then I can choose which users can
install the agent. All users or just specific users. So I can restrict it to groups. As you can see here, my ad
groups are here. Or I can say all users. Should some users have it pre-installed? Nah, not. And click save. Next. We will
not uh do anything here. We'll click publish. Now this will be published.
So we will fast forward a bit. That's it. We have published the support agent. Now go open a new browser Microsoft
365.cloud.microsoft. This is the copilot 365. You don't even have to have the license. This is we can
publish it to all users. If I go to all agents then I go down to build by your orc and here we have our IT support
agent. Now every user can find this agent. I can click it again. Same as before. I can say add and
in a little while you will see it over here. That's it. Three, two, one. Here we go. We can choose to pin it. If I
need to have it here and here we have our IT support agent. I can say hi,
hello, how can I help you today? Um you can say something like work day is failing to load my pay slip
then again it will proceed with the steps. I'll check I need to allow it to my one drive for now that's knowledge
and I will also allow it to plan. So here this will only be the first time I checked would you like me to create an
IT support request because it's not in the knowledge yes please [clears throat]
and then it will ask me again yes no yes please and then in
here it will ask me to connect to planner again this is only the first time
this is so impressive and it's so easy to build. You just need to get the right idea here in Copilot Studio. And if I go
back to my issue tracking board, then we will see the fourth coming in. If I refresh it here, if I click here, then
we have a new IT support request. Your next Microsoft Copilot Studio video is right here. Thanks for watching and see
you
The IT Support Agent is designed to provide self-service IT support by answering common questions from a knowledge base and enabling users to create IT service requests when further assistance is required. It uses Microsoft Copilot Studio to combine knowledge retrieval, generative AI, and rule-based automation.
To ensure the agent only uses your internal knowledge base, you must disable both the 'Web search' toggle under Overview > Knowledge and the 'Use general knowledge' setting under Settings > Knowledge. This restricts the agent to answering solely from the uploaded 'IT Service Desktop Knowledge Base' document.
First, navigate to Topics and create a new topic named 'CaptureTheIssue'. Set the trigger to 'Agent chooses' (when user describes a problem). Then, add a Set a variable action with variable name UserIssueText, scope Global, and value System.Activity.Text to capture the user’s last message.
Go to Tools > Add a tool > Agent flow and create a flow that uses the Planner connector to create a task with details like plan, title, bucket ID, start date, and due date. Then add a second action to update the task description using the IssueDescription input variable, which you map from the summarized user issue.
The 'SummarizeIssue' prompt tool uses GPT-5 Chat to condense the user's issue into two clear sentences for a support ticket. After the user confirms they want a ticket, you add this prompt to the CreateITSupportRequest topic, map its input to the global UserIssueText variable, and store the output in a IssueSummary record to feed into the flow action.
After clicking Publish, go to Channels and add deployment channels such as Teams and Microsoft 365 Copilot. You can customize the agent’s icon and availability, then either submit it for admin approval or share directly with users. Admin approval is managed in the Microsoft 365 Admin Center for specific or all users.
During development, use the integrated test pane in Copilot Studio to simulate conversations. After deployment, test the agent in Teams (where it appears as a chat bot) or in Microsoft 365 Copilot (accessible from 'All agents') to ensure it answers queries and creates tickets correctly.
Keep this summary
Save it to LunaNotes and it becomes a real note in your library — editable, searchable, and ready to turn into flashcards or a diagram. Free to start.
Save to LunaNotesOr summarise for another video.
This summary and transcript were automatically generated using AI with the Free YouTube Transcript Summary Tool by LunaNotes.
Related summaries
Build AI Agents with Microsoft Copilot Studio – No Code Guide
Learn how to create custom AI agents using Microsoft Copilot Studio without writing any code. This step-by-step tutorial covers building a customer service bot, connecting it to company documents, automating email responses, and publishing it for your team.
How to Use Copilot Studio: Complete Beginner Tutorial for Building AI Agents
This comprehensive tutorial walks beginners through every step of building a custom copilot agent using Microsoft Copilot Studio. Learn how to create agents from scratch, add knowledge from websites and documents, control conversations with topics, and publish your agent to demo websites—all within a free trial.
How to Build an Autonomous Agent in Copilot Studio: Step-by-Step Guide
Learn to create a fully autonomous AI assistant in Microsoft Copilot Studio that automatically processes form submissions, assigns tasks based on data lookup, and communicates results via email and Teams. This tutorial covers triggers, tools, instructions, and agent-to-agent handoff for a complete no-code automation solution.
Creating Custom Agents with Microsoft 365 Co-Pilot: A Step-by-Step Guide
This video provides a comprehensive overview of the Agent Builder experience within Microsoft 365 Co-Pilot, enabling users to create personalized agents without any prior skills. It covers the process of customizing agents for specific business needs, connecting to various data sources, and refining agent functionalities.
Building AI Agents with n8n: A Comprehensive Guide
Learn how to create AI agents using n8n for effective automation workflows in this detailed tutorial.
Most viewed summaries
A Comprehensive Guide to Using Stable Diffusion Forge UI
Explore the Stable Diffusion Forge UI, customizable settings, models, and more to enhance your image generation experience.
Kolonyalismo at Imperyalismo: Ang Kasaysayan ng Pagsakop sa Pilipinas
Tuklasin ang kasaysayan ng kolonyalismo at imperyalismo sa Pilipinas sa pamamagitan ni Ferdinand Magellan.
Mastering Inpainting with Stable Diffusion: Fix Mistakes and Enhance Your Images
Learn to fix mistakes and enhance images with Stable Diffusion's inpainting features effectively.
Pamamaraan at Patakarang Kolonyal ng mga Espanyol sa Pilipinas
Tuklasin ang mga pamamaraan at patakaran ng mga Espanyol sa Pilipinas, at ang epekto nito sa mga Pilipino.
How to Install and Configure Forge: A New Stable Diffusion Web UI
Learn to install and configure the new Forge web UI for Stable Diffusion, with tips on models and settings.
Found this summary useful?
Take it with you. One click puts it in your own LunaNotes library.
Save to LunaNotes