Skip to main content
Glama

Student MCP Server

by tejpalvirk

endsession

Document and finalize study sessions with a structured, multi-stage workflow. Track academic progress, update assignment statuses, define new concepts, and link knowledge to courses for organized learning management.

Instructions

A multi-stage tool for documenting study sessions, tracking academic progress, recording concepts learned, updating assignment status, and enriching the student knowledge graph.

When to use this tool: Only use this tool when the user explicity requests it or provides explicit approval.

Key features:

  • Provides a structured, multi-stage workflow for session documentation
  • Records concepts learned in the knowledge graph
  • Updates assignment status using has_status relations (not_started, in_progress, complete)
  • Updates assignment priorities using has_priority relations (low, high)
  • Establishes sequential relationships between concepts using follows relations
  • Creates connections between concepts and courses
  • Updates course status metadata
  • Creates new concept entities for topics you've studied
  • Maintains session continuity with unique session IDs
  • Supports revision of previous stages when needed
  • Offers a comprehensive assembly stage that consolidates all session information
  • Organizes your academic knowledge into a coherent structure

The endsession tool uses a sequential, multi-stage approach with 6 typical stages:

  1. Summary Stage: Records basic session information
  2. Concepts Learned Stage: Documents specific concepts studied
  3. Assignment Updates Stage: Records status and priority changes to assignments
  4. New Concepts Stage: Defines new concept entities to add
  5. Course Status Stage: Updates the overall course status
  6. Assembly Stage: Consolidates all information and finalizes the session record

Parameters explained:

  1. sessionId: Required - Unique identifier for the study session
  • Obtained from the startsession tool
  • Example: "stu_1234567890_abc123"
  1. stage: Required - Current stage of the endsession workflow
  • Accepts: "summary", "conceptsLearned", "assignmentUpdates", "newConcepts", "courseStatus", or "assembly"
  • Each stage has specific data requirements and processing logic
  1. stageNumber: Required - The sequence number of the current stage
  • Starts at 1 and typically progresses through 6 stages
  • Used to track progress through the session documentation workflow
  1. totalStages: Required - Total number of stages planned for this workflow
  • Typically 6 for the complete workflow
  • Provides context for the progress within the overall process
  1. analysis: Optional - Text analysis or observations for the current stage
  • Descriptive text explaining the work done in this stage
  • Example: "Analyzed progress on studying for the final exam"
  1. stageData: Optional - Stage-specific structured data
  • Structure varies by stage type:
    • summary: { summary: "Session summary text", duration: "2 hours", course: "CourseName" }
    • conceptsLearned: { concepts: ["Concept A", "Concept B", "Concept C"] }
    • assignmentUpdates: { updates: [{ name: "Assignment1", status: "complete", priority: "high" }, { name: "Assignment2", status: "in_progress" }] }
    • newConcepts: { concepts: [{ name: "NewConcept1", description: "Definition of the concept", follows: "PriorConcept" }] }
    • courseStatus: { courseStatus: "in_progress", courseObservation: "Making good progress" }
    • assembly: No stageData needed - automatically assembled from previous stages
  1. nextStageNeeded: Required - Whether additional stages are needed after this one
  • Boolean value (true/false)
  • Set to false on the final stage to complete the session
  1. isRevision: Optional - Whether this is revising a previous stage
  • Boolean value (true/false)
  • Default: false
  1. revisesStage: Optional - If revising, which stage number is being revised
  • Required when isRevision is true
  • Indicates which previous stage is being updated

When the endsession workflow completes (assembly stage with nextStageNeeded: false), the tool performs these updates:

  1. Concept Entities: Creates entities for each concept learned and links them to the course
  2. Assignment Status Updates: Updates assignment status via has_status relations (not_started, in_progress, complete)
  3. Assignment Priority Updates: Updates assignment priority via has_priority relations (low, high)
  4. Sequential Concept Relationships: Establishes follows relations between concepts when specified
  5. Course Status Update: Updates the course status via has_status relation, adds an updated timestamp, and records observations
  6. New Concept Creation: Creates new concept entities, links them to the course, and establishes any sequential relationships
  7. Session Recording: Marks the session as completed in persistent storage

Return information:

  • JSON response with the following structure:
    • success: Boolean indicating whether the operation succeeded
    • stageCompleted: The stage that was just completed
    • nextStageNeeded: Whether more stages are required
    • stageResult: The processed result of the current stage
    • endSessionArgs: (Only in assembly stage) Consolidated arguments for the session
    • sessionRecorded: (Final stage only) Whether the session was recorded
    • summaryMessage: (Final stage only) Formatted summary of all recorded information
    • error: (Only on failure) Error message describing the issue
  • Error information when operation fails

Status and Priority Values:

  • Valid status values: not_started, in_progress, complete
  • Valid priority values: low, high

You should:

  • Complete all stages in order for comprehensive session documentation
  • Provide specific details in each stage for accurate knowledge graph updates
  • Be precise about assignment names to ensure they match existing assignments
  • Use valid status values (not_started, in_progress, complete) when updating assignments
  • Use valid priority values (low, high) when specifying assignment importance
  • Specify sequential relationships between concepts when appropriate
  • Use clear, descriptive names for any new concepts
  • Include relevant observations for course status updates
  • If making a revision, specify which stage is being revised
  • Only mark nextStageNeeded as false on the final assembly stage
  • Review the final summary message to confirm all session details were recorded properly
  • Use the unique session ID consistently across all stages

Input Schema

NameRequiredDescriptionDefault
analysisNoText analysis or observations for the current stage
isRevisionNoWhether this is revising a previous stage
nextStageNeededYesWhether additional stages are needed after this one (false for final stage)
revisesStageNoIf revising, which stage number is being revised
sessionIdYesThe unique session identifier obtained from startsession
stageYesCurrent stage of analysis: 'summary', 'conceptsLearned', 'assignmentProgress', 'questions', 'nextSteps', or 'assembly'
stageDataNoStage-specific data structure - format depends on the stage type: - For 'summary' stage: { summary: "Session summary text", duration: "2 hours", focus: "CourseName" } - For 'conceptsLearned' stage: { concepts: ["Concept A", "Concept B", "Concept C"] } - For 'assignmentProgress' stage: { assignments: [{ name: "Assignment1", status: "completed" }, { name: "Assignment2", status: "in_progress" }] } - For 'questions' stage: { questions: ["Question about topic X", "Question about concept Y"] } - For 'nextSteps' stage: { nextSteps: ["Review chapter 7", "Complete practice problems", "Attend office hours"] } - For 'assembly' stage: no stageData needed - automatic assembly of previous stages
stageNumberYesThe sequence number of the current stage (starts at 1)
totalStagesYesTotal number of stages in the workflow (typically 5 for standard workflow)

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "analysis": { "description": "Text analysis or observations for the current stage", "type": "string" }, "isRevision": { "description": "Whether this is revising a previous stage", "type": "boolean" }, "nextStageNeeded": { "description": "Whether additional stages are needed after this one (false for final stage)", "type": "boolean" }, "revisesStage": { "description": "If revising, which stage number is being revised", "exclusiveMinimum": 0, "type": "integer" }, "sessionId": { "description": "The unique session identifier obtained from startsession", "type": "string" }, "stage": { "description": "Current stage of analysis: 'summary', 'conceptsLearned', 'assignmentProgress', 'questions', 'nextSteps', or 'assembly'", "type": "string" }, "stageData": { "additionalProperties": {}, "description": "Stage-specific data structure - format depends on the stage type:\n - For 'summary' stage: { summary: \"Session summary text\", duration: \"2 hours\", focus: \"CourseName\" }\n - For 'conceptsLearned' stage: { concepts: [\"Concept A\", \"Concept B\", \"Concept C\"] }\n - For 'assignmentProgress' stage: { assignments: [{ name: \"Assignment1\", status: \"completed\" }, { name: \"Assignment2\", status: \"in_progress\" }] }\n - For 'questions' stage: { questions: [\"Question about topic X\", \"Question about concept Y\"] }\n - For 'nextSteps' stage: { nextSteps: [\"Review chapter 7\", \"Complete practice problems\", \"Attend office hours\"] }\n - For 'assembly' stage: no stageData needed - automatic assembly of previous stages", "type": "object" }, "stageNumber": { "description": "The sequence number of the current stage (starts at 1)", "exclusiveMinimum": 0, "type": "integer" }, "totalStages": { "description": "Total number of stages in the workflow (typically 5 for standard workflow)", "exclusiveMinimum": 0, "type": "integer" } }, "required": [ "sessionId", "stage", "stageNumber", "totalStages", "nextStageNeeded" ], "type": "object" }
Install Server

Other Tools from Student MCP Server

Related Tools

    MCP directory API

    We provide all the information about MCP servers via our MCP API.

    curl -X GET 'https://glama.ai/api/mcp/v1/servers/tejpalvirk/student'

    If you have feedback or need assistance with the MCP directory API, please join our Discord server