Overview
The Microsoft 365 Teams server enables AI assistants to interact with Microsoft Teams, providing channel messaging, team discovery, and cross-service workflow capabilities through Microsoft Graph API.How to Add Microsoft 365 Teams
The setup process varies depending on your Microsoft account type:Free Teams Users: The Microsoft Teams MCP server API is incompatible with the free Teams app. You must have a Microsoft 365 Business license or Azure Cloud tenant to use this integration.
Microsoft 365 Business Users
For Microsoft 365 Business or Office 365 license holders, admin approval is required for first-time setup:1
Initial Authorization Attempt
Add the Microsoft 365 Teams server and attempt to authorize. Non-admin users will see a “Need admin approval” dialog indicating that Civic Nexus needs permission to access resources in your organization that only an admin can grant.

2
Admin Grants Consent (One-Time)
Your Microsoft tenant administrator must configure consent in Microsoft Entra ID:Access Entra ID:
-
From Microsoft 365: Click the app launcher (grid icon) in the top-left corner of any Microsoft 365 app → Click Admin → From the left sidebar, click Show All → Under “Admin centers”, select Identity


-
From Azure Portal: Click the app launcher (grid icon) in the top-left corner → Select Entra from the Microsoft Cloud services

- In Entra ID, select Enterprise apps from the left sidebar
- Under the “Security” section, click Consent and permissions
-
Click User consent settings

- Select “Allow user consent for apps from verified publishers, for selected permissions” (This allows users to trigger authorization requests from Nexus, since Civic is a verified publisher)
- Click Save (Important: Save before proceeding to the next step)
- Click “Select permissions to classify as low impact” (This whitelists the specific permissions users are allowed to consent to. If prompted to save, click Save before moving on)
-
On the permissions screen, click Add permissions → Select Microsoft Graph

-
Select all OpenId permissions (required):
openid,profile,email -
Add the base permissions:
offline_access,User.Read -
Add Teams-specific permissions:
Team.ReadBasic.All,Channel.ReadBasic.All,TeamMember.Read.All,ChannelMessage.Read.All,ChannelMessage.Send - Click Add permissions then Save
3
Wait and Retry
Wait up to 1 hour for changes to propagate, then retry authorization in Nexus.
4
Complete Authorization
You’ll now see a standard OAuth consent screen showing “Permissions requested” by Civic Nexus. The app will request permissions such as:
- Maintain access to data you have given it access to
- Read basic information of all teams
- Read the names and descriptions of all channels
- Read and send channel messages
- View your basic profile
Alternative Setup Method: The steps above use a proactive approach where admins configure permissions up-front. Alternatively, administrators can enable “Admin consent requests” (found in Admin consent settings within Entra ID). This allows users to trigger approval requests directly when they attempt to authorize, and admins can approve on-demand rather than pre-configuring permissions.

What You Can Do
Team Communication
Send messages to channels and engage with team members
Team Discovery
List teams, channels, and members across your workspace
Activity Monitoring
Track channel activity and summarize recent discussions
Cross-Service Workflows
Combine Teams with Mail and OneDrive for powerful automation
Available Tools (6)
send_message
send_message
Send standard or important messages to channels
send_channel_message
send_channel_message
Post messages to channels with optional formatting
list_members
list_members
List all members of a team with roles and contact information
list_channels
list_channels
List all channels within a specific team
list_teams
list_teams
List all teams the user is a member of with metadata
get_user_profile
get_user_profile
Get detailed information about the current user’s profile
Use Cases
Basic Operations
“Show me all the teams I’m a member of” - Discover your Teams workspace.Channel Discovery
“List all channels in the Civic Technologies team” - Explore team structure.Message Monitoring
“Show me the last 10 messages from the #general channel” - Review recent activity.Team Communication
“Post ‘Meeting starts in 15 minutes!’ to the #general channel” - Send quick updates.Important Announcements
“Send an important message to #announcements: ‘Server maintenance scheduled for tonight at 10 PM’” - Flag critical messages.Cross-Service Integration - Teams + Mail
“Create a summary of today’s #general messages and email it to me” - Combine Teams activity with email reporting.Cross-Service Integration - Teams + OneDrive
“Save today’s #meeting-notes messages as a document in OneDrive” - Archive discussions to cloud storage.Multi-Service Workflows
“Generate an intelligence report of my Teams workspace (teams, channels, members, activity), email it to me, and post a summary to #general” - Create comprehensive automation across multiple Microsoft 365 services.Channel IDs: Channel IDs are long strings like
19:xxx@thread.tacv2. The system retrieves these automatically when you reference channels by name.Team IDs: Team IDs are GUIDs. You can reference teams by name and the system will look them up automatically.Known Limitations:
- Private chats: Only channel messages are supported (not 1:1 or group chats)
- File attachments: Cannot upload files directly to Teams (use OneDrive with share links instead)
- Channel/team creation: Cannot create or delete channels or teams (read and message operations only)

