Egnyte offers its users the ability to connect to external AI connectors in order to bridge the gap between Egnyte and widely used productivity tools.
This guide walks Egnyte admins through connecting Teams as an AI Connector using the Model Context Protocol (MCP). Once configured, users can now search and read Teams content directly from Egnyte's AI Assistant.
Prerequisites
- Microsoft 365 Tenant with Entra/Azure AD Global Admin access
- Egnyte admin privileges (Power User role or higher)
- Teams connector already visible in the Egnyte connectors library as a pre-loaded connector
Tenant Admin Consent (Pre-Step for Teams Connector)
Before the connector can be published to end users, a Microsoft 365 tenant admin must grant tenant-wide consent to the Teams MCP by Egnyte app. This lets the app access the Microsoft Graph permissions it needs on behalf of the whole organization.
- Open the consent link: Grant admin consent and sign in as a Global Administrator.
- Review the list of permissions in the dialog.
- Select Accept to confirm. This gives the app access to your organization's data through the listed permissions.
The app requests scopes that individual non-admin users cannot consent to on their own. Without tenant-wide consent, every non-admin user will see Microsoft's Need admin approval screen and will be blocked from authenticating.
Refer to these steps to use a pre-loaded connector, publish the connector, editing the connector, along with the other admin actions.
Configure Tool Permissions
The following tools are available in the Teams connector for configuration:
- teams_list_teams: Retrieves a list of workspaces where the user is active, including the ID, name, details, and URL. This should be performed prior to channel tasks.
- teams_list_chats: Fetches current chat metadata such as ID, subject, and latest message snippet. Useful for identifying IDs before message retrieval.
- teams_list_channels: Provides all channels within a specific team. This operation necessitates a team ID obtained from the teams_list_teams tool.
- teams_list_chat_messages: Lists chat history in reverse chronological order and includes pagination support.
- teams_list_channel_messages: Shows primary messages in a channel, excluding replies, sorted by recent activity. Supports pagination.
- teams_list_channel_message_replies: Retrieves threaded replies for a specific channel message. Use this following list_channel_messages.
- teams_get_chat_message: Fetches the full content and sender info for a designated chat message via its ID.
- teams_search_messages: Uses keywords or KQL to find messages. Note that search results provide snippets rather than complete bodies and are eventually consistent.
- teams_list_channel_files: Displays all documents shared within a channel and allows for paginated results.
- teams_list_team_members: Lists everyone in a team, showing their name, email address, and assigned role.
- teams_list_chat_members: Provides details on chat participants, including their IDs and roles.
- teams_list_channel_members: Enumerates members of a channel with display names and user identifiers.
- teams_get_user_presence: Returns real-time availability status. If no user is specified, it defaults to the current user's status.
- teams_send_message_to_chat: Delivers a message to an active chat. These actions are immediate and permanent.
- teams_send_message_to_channel: Initiates a new discussion thread in a channel. These posts cannot be retracted once sent.
- teams_reply_to_channel_message: Posts a response in an existing thread. Changes are visible instantly and are irreversible.
- teams_send_message_to_user: Sends a direct message. A 1:1 chat is located or initiated automatically without requiring a chat ID.
Admins can set permissions for each tool by selecting either Allow unsupervised (checkmark icon)or Always ask permission (info icon).
Most Teams tools are read-only and safe to Allow unsupervised. The send/reply tools post messages to Teams, and these actions cannot be undone. These tools should only be enabled if write access is required. They can be deselected to limit users to the read-only tools only.
Additional Information and Resources
Consideration
Users Previously Granted Individual Consent
Some users may have already granted individual consent to the application prior to tenant-wide approval. Egnyte’s authentication flow supports this scenario. Once tenant admin consent is granted, users can proceed without any additional action.
Troubleshooting
Need Admin Approval Error
If users see a Need admin approval message during authentication, it means tenant-wide admin consent for Microsoft Graph permissions has not yet been granted. A Microsoft 365 tenant admin must approve access by visiting their Admin portal.
OAuth Authentication Fails
Authentication may fail if admin consent is incomplete or still propagating. After granting consent, allow a few minutes for changes to take effect and retry. Also ensure the required Microsoft Graph permissions are correctly configured.
Tools Return Empty Results or No Access Errors
If tools return no results, it may be due to Teams or Microsoft Graph permission constraints. The connector only returns data that the user has access to in Teams. Verify that the user has access to the relevant Teams content, and retry if needed.