← WebMCP Directory

Tool tree

classmate-steel.vercel.app

Health & EducationTools verified
Website
Study with the lecture.
Explore capabilities
    classmate_get_sessionAnswer

    Read the lecture session once: source, title, slide/note/transcript counts, cadence, and how to study with the student.

    View tool JSON
    {
      "name": "classmate_get_session",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the lecture session once: source, title, slide/note/transcript counts, cadence, and how to study with the student.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_get_nowAction

    Read the current lecture slice: timecode, transcript, notes, board, and studentAsk. If studentAsk is set, the student typed on the desk — call classmate_reply so they see your answer on the page.

    View tool JSON
    {
      "name": "classmate_get_now",
      "kind": "act",
      "impl": "imperative",
      "description": "Read the current lecture slice: timecode, transcript, notes, board, and studentAsk. If studentAsk is set, the student typed on the desk — call classmate_reply so they see your answer on the page.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_observe_nextAction

    Wait until the next media-time checkpoint or until the student signals Lost / Got it / Ask. Then call classmate_get_now. If wake.now.studentAsk is set, classmate_reply first.

    View tool JSON
    {
      "name": "classmate_observe_next",
      "kind": "act",
      "impl": "imperative",
      "description": "Wait until the next media-time checkpoint or until the student signals Lost / Got it / Ask. Then call classmate_get_now. If wake.now.studentAsk is set, classmate_reply first.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_playAction

    Resume lecture playback.

    View tool JSON
    {
      "name": "classmate_play",
      "kind": "act",
      "impl": "imperative",
      "description": "Resume lecture playback.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_pauseAction

    Pause lecture playback.

    View tool JSON
    {
      "name": "classmate_pause",
      "kind": "act",
      "impl": "imperative",
      "description": "Pause lecture playback.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_seekAction

    Jump the lecture to a time in seconds or a timecode like 12:40.

    View tool JSON
    {
      "name": "classmate_seek",
      "kind": "act",
      "impl": "imperative",
      "description": "Jump the lecture to a time in seconds or a timecode like 12:40.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "time": {
            "description": "Seconds or timecode (mm:ss or hh:mm:ss).",
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "string"
              }
            ]
          }
        },
        "required": [
          "time"
        ],
        "additionalProperties": false
      }
    }
    classmate_highlight_notesAction

    Highlight the student's uploaded notes that match a concept from the current moment. The notes pane scrolls to the hit.

    View tool JSON
    {
      "name": "classmate_highlight_notes",
      "kind": "act",
      "impl": "imperative",
      "description": "Highlight the student's uploaded notes that match a concept from the current moment. The notes pane scrolls to the hit.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Concept, quote, or heading to find in the notes."
          },
          "reason": {
            "type": "string",
            "description": "Short why this matters right now."
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      }
    }
    classmate_citeAnswer

    Return ClassCorpus-style citations for this moment: slide page, note heading, and transcript timecode. Use these in answers instead of inventing sources.

    View tool JSON
    {
      "name": "classmate_cite",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return ClassCorpus-style citations for this moment: slide page, note heading, and transcript timecode. Use these in answers instead of inventing sources.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_show_slideAction

    Pin and highlight the slide that matches this moment, by page number, id, or concept. Creates a time anchor so later playback stays synced.

    View tool JSON
    {
      "name": "classmate_show_slide",
      "kind": "act",
      "impl": "imperative",
      "description": "Pin and highlight the slide that matches this moment, by page number, id, or concept. Creates a time anchor so later playback stays synced.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Slide number, id, title, or concept."
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      }
    }
    classmate_add_marginAction

    Park a short margin note on the board at the current timecode.

    View tool JSON
    {
      "name": "classmate_add_margin",
      "kind": "act",
      "impl": "imperative",
      "description": "Park a short margin note on the board at the current timecode.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          }
        },
        "required": [
          "text"
        ],
        "additionalProperties": false
      }
    }
    classmate_replyAction

    Write an answer on the desk next to the student's Ask. The student does not see your ChatGPT sidebar — they only see this page. Use this whenever studentAsk is set.

    View tool JSON
    {
      "name": "classmate_reply",
      "kind": "act",
      "impl": "imperative",
      "description": "Write an answer on the desk next to the student's Ask. The student does not see your ChatGPT sidebar — they only see this page. Use this whenever studentAsk is set.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "Your answer, 1-5 sentences, grounded in the current lecture."
          },
          "askId": {
            "type": "string",
            "description": "Optional id from get_now.asks."
          }
        },
        "required": [
          "text"
        ],
        "additionalProperties": false
      }
    }
    classmate_draw_diagramAction

    Draw a study diagram onto the shared board for the current concept. Uses image generation when available, otherwise a chalkboard SVG the student can see immediately.

    View tool JSON
    {
      "name": "classmate_draw_diagram",
      "kind": "act",
      "impl": "imperative",
      "description": "Draw a study diagram onto the shared board for the current concept. Uses image generation when available, otherwise a chalkboard SVG the student can see immediately.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "prompt": {
            "type": "string",
            "description": "What the diagram should show."
          },
          "bullets": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Short chalkboard labels if image generation is unavailable."
          }
        },
        "required": [
          "title",
          "prompt"
        ],
        "additionalProperties": false
      }
    }
    classmate_make_cardsAction

    Drop flashcards onto the board for the current lecture moment.

    View tool JSON
    {
      "name": "classmate_make_cards",
      "kind": "act",
      "impl": "imperative",
      "description": "Drop flashcards onto the board for the current lecture moment.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cards": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "front": {
                  "type": "string"
                },
                "back": {
                  "type": "string"
                }
              },
              "required": [
                "front",
                "back"
              ]
            }
          }
        },
        "required": [
          "cards"
        ],
        "additionalProperties": false
      }
    }
    classmate_quizAction

    Park one multiple-choice check on the board for this moment.

    View tool JSON
    {
      "name": "classmate_quiz",
      "kind": "act",
      "impl": "imperative",
      "description": "Park one multiple-choice check on the board for this moment.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "question": {
            "type": "string"
          },
          "choices": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "answer": {
            "type": "number",
            "description": "Zero-based index of the correct choice."
          },
          "explanation": {
            "type": "string"
          }
        },
        "required": [
          "question",
          "choices",
          "answer"
        ],
        "additionalProperties": false
      }
    }
    classmate_load_urlAction

    Load a YouTube lecture or a direct mp4/webm URL onto the desk, fetch captions, and start playback.

    View tool JSON
    {
      "name": "classmate_load_url",
      "kind": "act",
      "impl": "imperative",
      "description": "Load a YouTube lecture or a direct mp4/webm URL onto the desk, fetch captions, and start playback.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "YouTube watch/share URL or a direct video file URL."
          }
        },
        "required": [
          "url"
        ],
        "additionalProperties": false
      }
    }
    classmate_seek_slideAction

    Jump the video to the time this slide is anchored. Pass a 1-based page number or slide id.

    View tool JSON
    {
      "name": "classmate_seek_slide",
      "kind": "act",
      "impl": "imperative",
      "description": "Jump the video to the time this slide is anchored. Pass a 1-based page number or slide id.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slide": {
            "description": "1-based slide number or id.",
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "string"
              }
            ]
          }
        },
        "required": [
          "slide"
        ],
        "additionalProperties": false
      }
    }
    classmate_seek_noteAction

    Jump the video to the timestamp on a note block.

    View tool JSON
    {
      "name": "classmate_seek_note",
      "kind": "act",
      "impl": "imperative",
      "description": "Jump the video to the timestamp on a note block.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "noteId": {
            "type": "string"
          }
        },
        "required": [
          "noteId"
        ],
        "additionalProperties": false
      }
    }
    classmate_export_timingAction

    Return a p2present-compatible classmate.json manifest (video, timing[], notes) for this session.

    View tool JSON
    {
      "name": "classmate_export_timing",
      "kind": "act",
      "impl": "imperative",
      "description": "Return a p2present-compatible classmate.json manifest (video, timing[], notes) for this session.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    classmate_load_manifestAction

    Apply a classmate/p2present JSON manifest: timing cues, notes, and optional YouTube/mp4 source.

    View tool JSON
    {
      "name": "classmate_load_manifest",
      "kind": "act",
      "impl": "imperative",
      "description": "Apply a classmate/p2present JSON manifest: timing cues, notes, and optional YouTube/mp4 source.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "json": {
            "type": "string",
            "description": "Raw JSON string of classmate.json / p2present timing."
          }
        },
        "required": [
          "json"
        ],
        "additionalProperties": false
      }
    }