Replies: 1 comment
-
|
Potential IDP: Objectives:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Motivation
Setting up a course in PROMPT requires navigating multiple pages, understanding the phase system, connecting phases correctly in the phase graph, and configuring each phase individually. For new instructors, this is a steep learning curve. Even for experienced users, it's repetitive work — especially when similar courses are set up every semester.
By exposing PROMPT's management capabilities through the Model Context Protocol (MCP), an AI assistant could guide instructors through course setup conversationally, ask the right questions, and configure everything on their behalf. This turns a multi-step, multi-page process into a natural dialogue.
Example Interaction
1. MCP Server for PROMPT Core
The core of this proposal is an MCP server that exposes PROMPT's course and phase management as tools and resources that any MCP-compatible AI client can use.
1.1 Tools (Actions)
Tools the AI can invoke to manage PROMPT:
Course Management
create_course— Create a new course with name, semester tag, and metadatalist_courses— List existing courses with their statusarchive_course/delete_course— Lifecycle managementPhase Management
list_available_phase_types— Show all registered phase types with descriptions and their input/output DTOsadd_phase_to_course— Add a phase of a given type to a courseremove_phase_from_course— Remove a phaseconnect_phases— Create an edge in the phase graph (prerequisite relationship)connect_phase_data— Create a data dependency link between phase DTOs (e.g., connect Application's "score" output to Interview's "score" input)Phase Configuration
get_phase_configuration— Read current configuration of a phaseupdate_phase_configuration— Update phase settings (dates, toggles, etc.)User & Role Management
list_course_members— List lecturers, editors, studentsadd_course_member/remove_course_member— Manage course teamNavigation & Deep Linking
get_link_to_view— Generate a deep link to a specific view in PROMPT (e.g., link to a course's phase settings, a student's application, or the phase graph configurator)get_link_to_student— Deep link to a specific student's participation or application details1.2 Resources (Read-Only Context)
Resources the AI can read to understand the current state:
courses— All courses with their phases and phase graphphase_types— Available phase types with their descriptions, required inputs, and provided outputscourse_templates— Existing course configurations that can be used as referencephase_configurations— Current settings of each phase in a course1.3 Prompts (Pre-Defined Workflows)
MCP prompts that encapsulate common workflows:
setup_new_course— Guided course creation workflow that asks the right questionsclone_course_for_new_semester— Copy a course structure to a new semester with updated datesreview_course_configuration— Audit an existing course setup and suggest improvements2. Built-In Helper Chat
In addition to the external MCP server, PROMPT should offer a built-in chat assistant in the instructor and admin interface. This chat helps users navigate, understand, and configure PROMPT without leaving the application.
2.1 Capabilities
2.2 Security: User Impersonation
The chat assistant must operate with exactly the same permissions as the user interacting with it. It impersonates the current user's session to prevent access leaks:
2.3 Deep Linking
Both the MCP server and the built-in chat should be able to generate and present deep links to specific views in PROMPT:
This allows the AI to answer navigational questions ("Where do I find X?") with a direct clickable link.
3. Phase-Level AI Configuration (Extensible)
In the long run, individual phases should be able to register their own AI-configurable capabilities. This makes the MCP server extensible without modifying the core.
3.1 Phase Tool Registration
Each phase can declare additional MCP tools that become available when the phase is part of a course. Examples:
Application Phase
configure_application_questions— Set up application form questions (text, multi-select)set_application_deadline— Configure application open/close datestoggle_auto_accept— Enable or disable automatic acceptance of applicantsget_application_statistics— Retrieve current application counts, acceptance rates, score distributionsAssessment Phase
configure_assessment_schema— Set up categories, competencies, and proficiency level descriptionsenable_evaluation_type— Enable/disable self, peer, or tutor evaluationset_assessment_timeline— Configure start and deadline datesTeam Allocation Phase
configure_allocation_constraints— Set team size, skill distribution preferencesimport_tutors— Add tutors to teamsInterview Phase
configure_interview_slots— Set up available time slotsmanage_interview_questions— Add/edit interview question pools3.2 Registration Mechanism
Phases register their AI capabilities through a standardized extension point:
initializeTypes.gopattern)4. Authentication & Authorization
5. Safety & Confirmation
Since AI-driven changes affect real course configurations:
6. Implementation Approach
Phase 1: Core MCP Server
Phase 2: Built-In Chat
Phase 3: Phase Tool Registration API
Beta Was this translation helpful? Give feedback.
All reactions