School MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DISTRICT_URL | Yes | Your district's StudentVue URL (e.g., https://your-district.edupoint.com) | |
| STUDENTVUE_PASSWORD | Yes | Your StudentVue password | |
| STUDENTVUE_USERNAME | Yes | Your StudentVue username |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_attendanceA | Get the student's attendance record including absences, tardies, and reason codes for each period. |
| get_calendarB | Get school calendar events for a given month. Returns holidays, early releases, and school events. |
| get_documentsA | Get the list of documents available to the student (e.g. forms, letters). Returns document names and metadata, not binary content. |
| get_gradebookA | Get the full gradebook for a reporting period. Returns all courses with their assignments and scores. Use reportingPeriod 0 for the current period. Increment for previous periods. |
| get_messagesB | Get messages from teachers and school administration. Returns message list with sender, subject, date, and read status. |
| get_report_cardsA | Get the list of available report cards for the student. Returns document listing with dates and descriptions. |
| get_scheduleA | Get the student's class schedule for the current term. Returns each period with course name, teacher, room number, and meeting times. |
| get_school_infoA | Get information about the student's school including name, address, phone number, and principal. |
| get_student_infoA | Get the student's profile information including name, grade level, student ID, birthdate, and school. Does not return the photo binary. |
| get_gpaA | Compute the student's current GPA from live gradebook data. Returns unweighted GPA on a 4.0 scale, plus a per-course breakdown showing course name, percentage, letter grade, and GPA points. |
| get_assignments_dueA | Get upcoming assignments due within the next N days across all courses. Returns assignment name, course, due date, and point value. Useful for planning what to work on. |
| get_grade_summaryA | Get all courses sorted by current grade from lowest to highest. Quick overview to see which classes need the most attention. |
| get_grade_detailsA | Get detailed assignment-level data for a specific course. Returns every assignment with its score, points possible, due date, and type. Use this to deeply analyze a single class. |
| calculate_grade_neededA | Calculate what score a student needs on an upcoming assignment to reach a target grade in a course. Accounts for the assignment's weight and the existing grade. Returns the required score as a percentage. |
| simulate_grade_scenarioA | Project what the student's grade would be in a course if they scored hypothetical scores on future assignments. E.g., "what if I got 85, 90, and 95 on my next 3 assignments?" |
| get_failing_or_low_gradesA | Get courses where the student is below a given grade threshold. Useful for quickly finding classes at risk of failing or needing improvement. |
| get_missing_assignmentsA | Find all missing or unscored assignments across every course. Returns them sorted by impact (point value) so the student knows which missing work hurts their grade the most. |
| get_category_breakdownB | Get the grade breakdown by assignment category (e.g. Tests, Homework, Quizzes) for a specific course. Shows weight, points earned vs possible, and percentage for each category. Useful for finding which category is dragging down a grade. |
| ask_about_gradesA | Get a comprehensive grade context dump for any open-ended grade question. Returns full course-by-course data including current grades, all assignments, scores, and missing work. Use this as a starting point for complex analysis like "what should I focus on this week" or "how can I improve my overall GPA." |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
While there are numerous grade-related tools, each serves a distinct purpose ranging from comprehensive dumps (ask_about_grades) to specific course deep-dives (get_grade_details), projections (simulate_grade_scenario), and filtered views (get_failing_or_low_grades). An agent can distinguish between them based on query specificity.
Tools overwhelmingly follow a snake_case verb_noun pattern. The three exceptions (ask_about_grades, calculate_grade_needed, simulate_grade_scenario) use action verbs appropriate to their computational or conversational nature rather than simple retrieval, maintaining overall readability.
Nineteen tools is slightly above the ideal range but justified by the server's comprehensive coverage of academic analytics. The count reflects necessary granularity for grade analysis without excessive redundancy, though it approaches the upper limit of manageable scope.
The server covers grade analysis extensively but has notable gaps: while it can list documents, messages, and report cards, it cannot retrieve their actual content. Additionally, there are no tools for submitting assignments or replying to communications, creating dead ends in workflows.