Microsoft 365
One Zeta Alpha app brings your agent to:
- Teams: personal chats, group chats and channels.
- Microsoft 365 Copilot Chat: as an agent in the agents list. No Copilot license is needed.
- Outlook, Word, Excel and PowerPoint: as a side panel next to the open email, document, workbook or presentation. The panel can also make changes there, each approved by the user. See Office add-in.
Every answer runs as the Zeta Alpha user who asked, so it only draws on documents that user can open, and it cites them.
The app lives in your own Microsoft tenant: your Entra app identifies it, and your Azure Bot routes Teams and Copilot messages to Zeta Alpha.
Admin setup
You need:
- An Entra role that can register applications (Application Administrator or Cloud Application Administrator).
- An Azure subscription for the Azure Bot resource. The F0 pricing tier is free.
- A Microsoft 365 administrator to upload the app.
- Configuration write access to the tenant in Platform Admin, and an agent for the app to answer with (see Managing Agents in the Platform).
1. Register the app in Entra
- In the Entra admin center, open App registrations → New registration.
- Name it (for example
Zeta Alpha), set Supported account types to Single tenant only, and select Register. - Copy the Application (client) ID and the Directory (tenant) ID from the overview. The tenant ID must be the tenant your Teams users sign in to.
- Open Certificates & secrets → New client secret, and copy the secret value.
2. Register the app in Platform Admin
- In Platform Admin, open the tenant and select Register Microsoft 365 app on the Chat bots card.
- Choose the index to register the app on, the agent that answers in Teams and Copilot, and whether answers stream while they are written.
- Enter the client ID as Bot app ID and the tenant ID as Entra tenant ID.
- Under Client secret, choose New secret and paste the secret value. It is stored as a tenant secret; the app only keeps its name.
- Select Register Microsoft 365 app. The app's page shows its Messaging endpoint.
- Optionally, under App branding, set the app's name, descriptions, accent color and icons (a 192x192 color PNG and a 32x32 white-on-transparent outline PNG). The short name is also the publisher and the ribbon button in Outlook, Word, Excel and PowerPoint. Empty fields keep the Zeta Alpha defaults.
3. Create the Azure Bot
- In the Azure portal, create an Azure Bot resource.
- Set Data residency to Global, Pricing tier to F0, Type of App to Single Tenant, and Creation type to Use existing app registration, with the client ID and tenant ID from step 1.
- After deployment, open Settings → Configuration and set the Messaging endpoint to the one shown in Platform Admin. It names your tenant, for example
https://api.zeta-alpha.com/v0/service/integrations/teams/webhook/events?tenant=acme. Leave Enable Streaming Endpoint off. - Open Settings → Channels and add Microsoft Teams and Microsoft 365 (the Copilot and agent channel). Without the Microsoft 365 channel, Copilot Chat and the agent view in Teams never reach the bot.
4. Upload the app
- On the app's page in Platform Admin, select Download app package.
- In the Teams admin center, open Teams apps → Manage apps → Actions → Upload new app and upload the zip. On the app's page, Users and groups → Installs → Install app → Everyone, and keep Available to at Everyone.
- In the Microsoft 365 admin center, open Agents → All agents, select the app, choose Install → All users and finish the wizard. This step publishes it to Teams, Copilot Chat and the Office ribbon; without it, Teams admin center reports the app as installed but nobody receives it.
- Keep the default security policy and accept the permissions:
| Permission | What it is for |
|---|---|
MailboxItem.ReadWrite.User | The Office panel reads the open email or event and writes to the draft being composed |
Document.ReadWrite.User | The Office panel reads and changes the open document, workbook or presentation |
Teams identity and messageTeamMembers | The app knows who sent a message and replies to them |
Each package has a newer version than the last. After a settings or branding change, download it again and use Update on the installed app; do not delete the app and upload it again, which leaves Teams with two records of the same app. Office can take up to a few hours to pick up a new or updated app.
A new app reaches each user's Teams some time after you install it, about 30 minutes in our tests. Until then, opening it shows "You do not have permission to use this app here". It is ready for a user when Zeta Alpha appears in their Teams chat list.
5. Let the agent act in Office
The panel answers with the agent selected in it. To let that agent change the open email, document, workbook or presentation, turn on Office Add-in Tools under the tools on the agent's page in Platform Admin.
See Office Add-in Tools for the tools and how they behave.
Using Zeta Alpha in Teams and Copilot
- Personal chat: in Teams, open Apps, find the app under Built for your org (it carries the short name set under branding), select Open, and ask a question. The chat shows the app icon and an AI agent label next to its name. The app also appears under Agents in the Teams Copilot view.- Group chats and channels: mention the app, for example
@Zeta Alpha what changed in the Q3 report?. It only reads messages that mention it. - Copilot Chat: pick Zeta Alpha from the agents list.
Answers cite their sources as numbered references; hover a reference to see the document. With streaming on, the answer appears while it is written in personal chats and Copilot Chat; group chats and channels get the full answer at once.
Until a streamed answer's first words arrive, the chat shows what the agent is doing, for example the search it runs. Teams has no approval cards and no app sign-in, so in a streamed answer:
| The agent needs | What the chat shows |
|---|---|
| Approval for a tool call | The call is not run, and the answer says it needs approval that Teams can't ask for yet. Ask again in Zeta Alpha on the web to approve it there |
| A connected app (MCP server) the user has not signed in to | An Authorize link for that server, which signs the user in; ask again afterwards |
Each personal chat, and each user in a group chat or channel thread, keeps its own conversation, so follow-up questions build on earlier ones. In a group chat or channel the agent sees the messages that mention it and its own earlier replies to that user, not the rest of the conversation. These conversations also appear in the user's Zeta Alpha chat history.
A person gets an answer once their Microsoft 365 email matches a user of your Zeta Alpha tenant who has signed in to Zeta Alpha at least once. Anyone else is asked to sign in to Zeta Alpha first.