Already set up Microsoft Teams via Copilot Studio?
That’s a different, earlier integration where you bring your own Copilot
Studio agent. This page covers the newer hosted bot, which needs no Copilot
Studio setup at all. You don’t need both — pick whichever fits your tenant.
Prerequisites
- Permission to install apps and add bots to a team/channel in your Microsoft 365 tenant.
- A MerchantOps account with the Owner role to confirm the connection — only Owners can complete the connect flow. See Team & roles.
Set it up
1
Install the MerchantOps app
Install the MerchantOps app for Microsoft Teams and add it to the
team you want it in.
2
Add the bot to a channel
Add the MerchantOps bot to the specific channel where you want catalog
access. Only channels are supported — the bot doesn’t answer in
personal (1:1) chats or ad-hoc group chats.
Private and shared channels can include guests and people from other
organizations. By default the assistant only answers members of your
own Microsoft organization — see
Who gets answered below to allow outsiders.
3
Start the connect flow
In the channel, mention the bot:The bot replies with a single-use connect link. The link expires in
15 minutes — if it expires before anyone opens it, just run
@MerchantOps connect again.4
Confirm as an Owner
An Owner opens the link and confirms the connection in the MerchantOps
admin UI. Confirming mints a read-only API key scoped to that one
channel and binds it there — no key to copy or paste yourself.On the connect page, the Owner can also check “Also answer guests and
people from other organizations in this channel”. Leave it unchecked
to keep the assistant answering only members of your own Microsoft
organization — see Who gets answered.
Who gets answered
Before answering, the assistant checks every asker against Microsoft’s own Teams membership record for them. By default it only answers members of the organization the channel is connected to — someone whose tenant matches the channel’s host organization and who isn’t a guest or anonymous user. Guests and people from other organizations get a polite refusal instead, unless an Owner checked “Also answer guests and people from other organizations in this channel” when connecting (see Set it up). This check exists because the app is installable in private and shared Teams channels, which can include guests and people from other companies — not just standard channels. Non-members can never request or complete a connect link themselves; only an Owner within the organization’s own tenant can connect a channel.What the agent can see
The hosted bot uses the samechannel_agent_reader role as the
Copilot Studio and Slack
integrations — read-only, scoped to your organization, covering products,
product types, property definitions, pricing, MAP pricing, catalog batches,
jobs, lakehouse data, and documents. Everyone in the connected channel sees
what that key can see — there’s no per-person filtering within the
channel.
If someone asks the bot to change a price, update a product, or run any
other write, the request is declined: this role carries no write permissions
on the MerchantOps side.
Disconnect
Manage and disconnect channel bindings from Settings › Chat Integrations — see the Chat Integrations reference. Disconnecting revokes the underlying key immediately; there’s no grace period.Chat Integrations
See and disconnect every channel bound to a MerchantOps key.
MerchantOps in Microsoft Teams (Copilot Studio)
The earlier, bring-your-own-agent integration through Copilot Studio.