Skip to main content
MerchantOps can run a read-only chat agent directly inside a Microsoft Teams channel. There’s nothing to configure on the Microsoft 365 side beyond installing the app — MerchantOps hosts the bot, so you don’t need a Claude, ChatGPT, or Copilot Studio seat to use it.
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.
Everyone in a connected channel shares one credential. Connecting binds a read-only key to the channel, not to each person in it. Anyone who can post in that channel can ask the bot anything that key can read. See What the agent can see before connecting a channel with sensitive membership.

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.
One Microsoft tenant can only be linked to one MerchantOps organization. The admin UI shows a strong warning the first time a tenant connects. If a tenant you expect to be yours already appears linked to a different organization, don’t proceed — contact support instead of retrying the connect flow.
Once confirmed, anyone in the channel can @mention the bot and ask about the organization’s catalog, pricing, MAP policies, batches, jobs, or publish status.

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 same channel_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.