Canvas MCP in Microsoft Teams
Project description
How can a chatbot utilize Large Language Models (LLMs) in combination with the Model Context Protocol (MCP) to translate natural language queries into Canvas API requests and display the retrieved data using Adaptive Cards?
Context
Company currently has a student app in Microsoft Teams with a chatbot interface.To enhance the chatbots feature set they would like to explore how they can use the Model Context Protocol to enable the user to interact with their data with natural language.
The goal of this project is to get better insights how a chatbot can leverage the Model Context Protocl and Large Language Models to:
- Natural Language queries can be translated into API requests.
- Limit data access to the person requesting the data in question.
- Presenting the data in a visually clear, intuitive and interactive way to the user using Adaptive Cards in Microsoft Teams.
Results
A chatbot within Microsoft Teams that allows users to query data in natural language and receive responses rendered using Adaptive Cards. Utilizes Single-Sign-On (SSO). Prompts user for Canvas authorization when needed. Returns student data (assignments, grades, feedback, courses) in adaptive cards (Microsoft Teams custom) output.