{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_fhexyeghdjea","handle":"vocab-voyage","url":"https://wellknown.network/agents/vocab-voyage","links":{"self":"https://wellknown.network/agents/vocab-voyage/record.json","html":"https://wellknown.network/agents/vocab-voyage","markdown":"https://wellknown.network/agents/vocab-voyage/record.md","api":"https://wellknown.network/api/v1/agents/vocab-voyage","status":"https://wellknown.network/api/v1/agents/vocab-voyage/status","claim":"https://wellknown.network/agents/vocab-voyage/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/vocab-voyage/claim.json","badge":"https://wellknown.network/agents/vocab-voyage/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/vocab-voyage/history","tools":"https://wellknown.network/api/v1/agents/vocab-voyage/tools"},"ard":{"identifier":"urn:air:gponcrussdahcdyrlhcr.supabase.co:server:vocab-voyage","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Vocab Voyage","summary":"20 MCP tools + 17 widgets for SAT/ISEE/SSAT/GRE/GMAT/LSAT prep. Flashcards, quizzes & games. Hosted.","description":"20 MCP tools + 17 widgets for SAT/ISEE/SSAT/GRE/GMAT/LSAT prep. Flashcards, quizzes & games. Hosted.","publisher":{"name":"jaideepdhanoa","url":null},"homepage":"https://vocab.voyage/mcp","repository":"https://github.com/jaideepdhanoa/vocab-voyage-mcp","version":"1.1.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://gponcrussdahcdyrlhcr.supabase.co/functions/v1/mcp-server?ref=mcp_registry","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-04-23T01:28:25.808404Z","publishedAt":"2026-04-23T01:28:25.808404Z","registryName":"io.github.jaideepdhanoa/vocab-voyage"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"communication.notifications","name":"Notifications","confidence":1,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":1,"provenance":"derived"},{"slug":"communication.customer-support","name":"Customer Support","confidence":0.583,"provenance":"derived"},{"slug":"automation.workflows","name":"Workflow Automation","confidence":0.51,"provenance":"derived"}],"categories":["analytics","automation","communication"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 2m ago.","lastOkAt":"2026-10-10T07:24:04.990Z","lastProbedAt":"2026-10-10T07:24:04.990Z","statusComputedAt":"2026-10-10T07:25:52.776Z","reliability30d":{"probes":109,"successRate":0.9908,"p50Ms":222,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":108,"ok":107,"authBoundaryOk":0,"serviceOk":107,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T07:24:04.990Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":170,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T00:27:25.043Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":175,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T17:28:23.220Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":244,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T11:27:12.816Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":191,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T04:29:23.510Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":220,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T22:23:24.120Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":236,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T15:24:40.324Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":244,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T09:22:53.960Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":201,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T02:21:38.602Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":187,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T19:24:13.393Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":209,"error":null,"detail":{"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"toolCount":31,"toolsHash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","serverName":"vocab-voyage","capabilities":["tools","resources","prompts"],"serverVersion":"1.2.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"get_word_of_the_day","description":"Use this when the user asks for today's word, a daily vocabulary nudge, or a single-word warmup. Returns today's deterministic Word of the Day (definition, part"},{"name":"get_definition","description":"Use this when the user asks what a specific word means, requests its definition, part of speech, synonyms/antonyms, or an example sentence. Returns curated dict"},{"name":"generate_quiz","description":"Use this when the user wants to practice, be quizzed, or test their knowledge across multiple words at once. Generates a 1–10 question multiple-choice quiz for "},{"name":"get_course_word_list","description":"Get a sample of vocabulary words from a specific Vocab Voyage course. Use list_courses to discover slugs."},{"name":"list_courses","description":"Lists all 13 Vocab Voyage courses with their slugs and descriptions."},{"name":"explain_word_in_context","description":"Explain what a word means inside a specific sentence — useful when a word has multiple meanings."},{"name":"study_plan_preview","description":"Use this when the user asks for a study plan, a multi-day prep schedule, or how to prepare for a test by date. Returns a 7-day plan (5 words/day) for a given te"},{"name":"get_flashcards","description":"Use this when the user asks for flashcards, wants to drill words individually, or wants a tap-to-flip review session. Returns 1–12 cards for a test family. Rend"},{"name":"get_my_progress","description":"Use this when the signed-in user asks about their own streak, XP, words mastered, recent activity, or 'how am I doing'. Auth-only personal dashboard. Renders th"},{"name":"play_game","description":"Use this when the user wants to play a vocabulary game, asks for something fun, or wants to learn through play. Launches one of 11 mini-games inside the host ch"},{"name":"record_word_result","description":"Persist a single word answer (correct/incorrect) to the user's mastery progress. Mirrors the web app's word-mastery scaling so MCP study counts toward leaderboa"},{"name":"record_session_complete","description":"Record a completed study session: writes study_sessions, awards study-time XP (+1/min, capped 30/day), and updates the daily streak. Use after a play_game / qui"},{"name":"award_game_xp","description":"Award score-based XP from a game/activity (separate from study-time XP). Cascades to the leaderboard via DB trigger. Requires sign-in."},{"name":"mark_word_known","description":"Manually mark a word as mastered for the signed-in user (same as the flashcard 'I knew this' override). Requires sign-in."},{"name":"mark_word_difficult","description":"Manually mark a word as still-learning for the signed-in user (resets mastery toward learning band). Requires sign-in."},{"name":"update_adaptive_level","description":"Run the adaptive-mastery promotion logic for the signed-in user (delegates to the web app's update-adaptive-mastery function). Requires sign-in."},{"name":"file_support_ticket","description":"File a real human-followup support ticket on behalf of the signed-in user. Use this when the user reports a bug, account lockout, complaint about a tutor, or an"},{"name":"get_recent_mistakes","description":"Use this when the signed-in user asks about words they've gotten wrong, missed words, words to review, or wants to revisit recent mistakes. Returns up to 25 wor"},{"name":"get_session_detail","description":"Use this when the signed-in user asks 'what did I miss in [that session]', 'which words tripped me up', or 'what was my accuracy on session X'. Pass a session_i"},{"name":"get_pending_invites","description":"Use this when the signed-in user asks about pending parent invites, share codes, or whether their parent invite has been accepted yet. Returns each pending invi"},{"name":"nudge_child","description":"Parent-only. Sends a 'check-in' push notification (and email fallback) to a linked child. Use when the parent says things like 'remind my kid to study', 'nudge "},{"name":"resend_pending_invite","description":"Resend a pending parent invite by id. Use after get_pending_invites surfaces an invite expiring in <24h, or when the user explicitly asks to resend. Re-emails t"},{"name":"get_class_standing","description":"Use this when a signed-in student asks how they're doing in their tutor class, who's ahead, who their rival is, or who they should challenge. Auth-only. Returns"},{"name":"get_sparkle_guidance","description":"Returns Vocab Voyage's lifecycle-aware guidance: the user's current phase (e.g. student.at_risk), a friendly greeting, 2–3 recommended tool calls, and an option"},{"name":"set_persona","description":"Bias subsequent Sparkle guidance toward a persona (student | parent | tutor | explorer). Session-scoped: the host should pass the chosen persona back to get_spa"},{"name":"get_recommended_next_action","description":"One-line 'do this next' hint derived from the user's current lifecycle phase. Useful when the agent wants a quick recommendation without rendering a full guidan"},{"name":"list_starter_prompts","description":"Lists Vocab Voyage's MCP starter prompts (also exposed via the standard MCP prompts/list endpoint). Useful for hosts that don't yet support prompts/list."},{"name":"get_session_trends","description":"Auth-only. Personal study trends over a window (default 14 days, max 90): session count, total minutes, accuracy trend (up/down/flat), and top-missed words. Use"},{"name":"get_class_session_trends","description":"Auth-only. Tutor-only. Aggregate class-level trends across the tutor's classes (default 14 days, max 30). Pass `class_id` to scope to one class; omit it to get "},{"name":"get_child_session_detail","description":"Auth-only. Parent-only. Detailed breakdown for a single child's study/quiz session — accuracy, missed words, duration. Defaults to the most recent session for t"},{"name":"get_study_plan_recommendation","description":"Auth-only. Returns a personalized N-day study plan (default 7, range 3–7) chosen from one of four focus modes (weak-topic-drill / streak-recovery / new-words / "}],"package":null,"toolSurface":{"id":"ts_94p62kp6g96y","endpointId":"ep_37rayksthw32","hash":"fb5e6c7f7b81d9a172015d15a95d22953ddf16a1699ba73b9ef1ed5efdd7da8d","toolCount":31,"serverName":"vocab-voyage","serverVersion":"1.2.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T15:25:32.459Z","lastSeenAt":"2026-10-10T07:24:04.988Z","observations":100,"toolNames":["get_word_of_the_day","get_definition","generate_quiz","get_course_word_list","list_courses","explain_word_in_context","study_plan_preview","get_flashcards","get_my_progress","play_game","record_word_result","record_session_complete","award_game_xp","mark_word_known","mark_word_difficult","update_adaptive_level","file_support_ticket","get_recent_mistakes","get_session_detail","get_pending_invites","nudge_child","resend_pending_invite","get_class_standing","get_sparkle_guidance","set_persona","get_recommended_next_action","list_starter_prompts","get_session_trends","get_class_session_trends","get_child_session_detail","get_study_plan_recommendation"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_37rayksthw32","url":"https://gponcrussdahcdyrlhcr.supabase.co/functions/v1/mcp-server?ref=mcp_registry","type":"mcp_streamable_http","factsCheckedAt":"2026-10-10T00:27:25.059Z","auth":{"observedAt":"2026-10-10T00:27:25.093Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-10T00:27:25.104Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"supabase.co","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-08-26T11:15:48.000Z","validTo":"2026-11-24T12:15:45.000Z","daysToExpiry":45,"sanCount":2,"fingerprint256":"BE:17:BF:33:61:A7:69:1B:DD:E2:93:D9:23:03:CA:35:98:E6:C0:D1:42:6F:8F:B9:2E:43:8A:19:DA:F8:E3:1B"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.jaideepdhanoa/vocab-voyage","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.jaideepdhanoa%2Fvocab-voyage","firstSeenAt":"2026-09-06T16:18:46.082Z","fetchedAt":"2026-10-07T14:23:55.879Z","normalizedAt":"2026-10-07T14:23:55.879Z"}]},"firstSeenAt":"2026-09-06T16:18:46.082Z","updatedAt":"2026-10-10T00:30:28.208Z"}