Skip to main content
Glama

Server Details

Search university course materials, your flashcards, quizzes, streak and quota. All tools read-only.

Ownership verified
Status
Healthy
Uptime
100.0% over the last 24 hours
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
uNotes
Claude
uNotes

TDQS

B3.4/5.0

Scored across 52 tools

Disambiguation3/5

Descriptions work hard to delimit boundaries (e.g. search_library vs list_my_quizzes, get_document vs get_document_content), which raises the ceiling. But several pairs remain genuinely easy to confuse: get_document vs get_document_metadata, get_lecture vs get_lecture_audio, and the cluster of job-status tools (get_quiz_job, get_audio_overview, get_mind_map, get_import_status, get_upload_job) all behave similarly with different parameters.

Naming Consistency4/5

The vast majority follow a snake_case verb_noun pattern (get_*, list_*, search_*, export_*, calculate_*, find_*, create_*). A few outliers such as billing_status break the verb-first convention, but the overall scheme remains predictable.

Tool Count2/5

52 tools is far past the point where an agent can comfortably hold the surface in mind, and it spans many loosely related domains (billing, referrals, API keys, scopes, support tickets, streaks, study content). Scoping this into separate servers (study content, account/billing, social/community) would serve agents better.

Completeness4/5

Coverage across documents, lectures, quizzes, flashcards, mind maps, audio overviews, comments, and account admin is broad, with upload/create/list/get flows present. Minor lifecycle gaps exist (e.g. no obvious delete_document, no create_flashcard_set or create_comment visible, billing limited to status/list/upgrade), but agents can work around them.

Publisher details

Operator
Devino Solutions
Operator website
https://devino.ca
Vendor relationship
First-party
Trust center
Not available
Restrictions
Requires a uNotes account. Sign in with OAuth when your client asks.

Available Tools

52 tools
billing_statusBilling statusA
Read-onlyIdempotent
Inspect

Get the user's plan, subscription status, renewal or end date and trial state. Pass refresh=true to re-read the subscription from the billing provider first (use it right after a purchase).

Inputs: refresh.

calculate_final_gradeCalculate final gradeA
Read-onlyIdempotent
Inspect

Work out what score is needed on the final exam: current is the average so far (percent), weight is how much the final is worth (percent of the course), target is the course grade wanted (percent).

Inputs: target (required), weight (required), current (required).

calculate_gpaCalculate gpaB
Read-onlyIdempotent
Inspect

Compute a GPA from course grades on a grading scale (letter grades like 'A-' or percentages like 84). scale is a scale id such as standard-4-0 or university-of-toronto; credits default to 1. No account data is read or stored.

Inputs: courses (required), scale.

export_flashcard_setExport flashcard setA
Read-onlyIdempotent
Inspect

Export a flashcard set. format=tsv returns Anki-importable text inline; format=pdf returns a one-click download link.

Inputs: setId (required), format (required).

export_quizExport quizB
Read-onlyIdempotent
Inspect

Get a one-click link to download a quiz as a printable PDF with an answer key.

Inputs: quizId (required).

find_documentsFind documentsA
Read-onlyIdempotent
Inspect

Look up finished documents by a name fragment or a pasted uNotes document link. For topic search across the library use search_library.

Inputs: keyword (required), excludeDocumentId.

find_similar_documentsFind similar documentsA
Read-onlyIdempotent
Inspect

Find documents whose file content is identical to a given document (by file hash), for spotting duplicates.

Inputs: documentId (required).

get_audio_overviewGet audio overviewA
Read-onlyIdempotent
Inspect

Check an audio overview: pass the jobId from create_audio_overview, or a documentId / lectureSessionId for the latest one. Once COMPLETED it includes the dialogue transcript and a time-limited audioUrl.

Inputs: jobId, documentId, lectureSessionId.

get_card_statesGet card statesA
Read-onlyIdempotent
Inspect

Get the user's spaced-repetition state (due date, stability, difficulty) for every card in one flashcard set they can read.

Inputs: setId (required).

get_chat_threadGet chat threadA
Read-onlyIdempotent
Inspect

Open one of the user's chat threads with all its messages. includeFileUrl=true also returns a time-limited link to the file attached to the thread, when there is one.

Inputs: threadId (required), includeFileUrl.

get_commentGet commentB
Read-onlyIdempotent
Inspect

Open one comment with its author and the document it is on. Comments on public documents are public.

Inputs: commentId (required).

get_courseGet courseA
Read-onlyIdempotent
Inspect

Open one course (name, code, school, the user's favorite/like flags). withStats=true adds how many documents of each type it holds. Use list_course_documents for its documents.

Inputs: courseId (required), withStats.

get_documentGet documentA
Read-onlyIdempotent
Inspect

Get the metadata of a single uNotes document by ID: title, type, course, school, year, season, professor, language, popularity counters, and its public URL. Use get_document_content to read the actual text.

Inputs: documentId (required).

get_document_contentGet document contentA
Read-onlyIdempotent
Inspect

Get the full text content of a specific document, lecture session, or flashcard set. Use this when you need to read the actual content of a material to answer questions about it.

Inputs: documentId, flashcardSetId, lectureSessionId.

get_document_downloadGet document downloadA
Read-onlyIdempotent
Inspect

Check whether the user can download a document's original file today (their plan's daily limit) and get the one-click link to the document page, where the Download button is. The download itself counts against the daily limit when the user presses it.

Inputs: documentId (required).

get_document_metadataGet document metadataB
Read-onlyIdempotent
Inspect

Get the school and course a document belongs to.

Inputs: documentId (required).

get_due_cardsGet due cardsA
Read-onlyIdempotent
Inspect

Get the user's spaced-repetition review queue: flashcards due now across all sets (oldest due first), plus how many are due and how many were learned today. limit=0 returns counts only.

Inputs: limit.

get_flashcard_setGet flashcard setA
Read-onlyIdempotent
Inspect

Get one flashcard set the user owns, with all its cards (prompt and answer).

Inputs: setId (required).

get_import_statusGet import statusA
Read-onlyIdempotent
Inspect

Check a Quizlet import started with import_quizlet.

Inputs: jobId (required).

get_lectureGet lectureA
Read-onlyIdempotent
Inspect

Open one of the user's lectures: title, status, notes, transcript and recording details.

Inputs: lectureId (required).

get_lecture_audioGet lecture audioA
Read-onlyIdempotent
Inspect

Say whether a lecture has a recording (format, length) and get a one-click link to the lecture page, where it plays.

Inputs: lectureId (required).

get_mind_mapGet mind mapA
Read-onlyIdempotent
Inspect

Check a mind map: pass the jobId from create_mind_map, or a documentId / lectureSessionId for the latest one. Once COMPLETED it includes the concept tree.

Inputs: jobId, documentId, lectureSessionId.

get_profileGet profileA
Read-onlyIdempotent
Inspect

Get the user's profile: name, username, email, whether a password is set, email-subscription state, notification categories and plan.

Inputs: no named parameters.

get_quizGet quizA
Read-onlyIdempotent
Inspect

Load an existing quiz of a course (or one named quiz of that course) so the user can take it again, with its questions and answer options. Spends no AI quota.

Inputs: courseId (required), quizId.

get_quiz_jobGet quiz jobA
Read-onlyIdempotent
Inspect

Check a quiz generation started with generate_quiz: pass the documentId (latest job for that document) or the jobId.

Inputs: jobId, documentId.

get_quota_statusGet quota statusA
Read-onlyIdempotent
Inspect

Get the authenticated user's plan tier and current usage against each quota (AI chat, quiz generation, flashcard generation, uploads, downloads, transcription minutes, audio overviews, mind maps). A null limit means unlimited.

Inputs: feature.

get_referral_summaryGet referral summaryA
Read-onlyIdempotent
Inspect

Show the user's Refer & Earn state: their personal invite link, clicks, signups, sales and earnings (pending, cleared, paid), plus their invite points. includeReferrals=true also lists the people they referred.

Inputs: includeReferrals.

get_schoolGet schoolA
Read-onlyIdempotent
Inspect

Open one school (name, abbreviation, course-code prefixes). Use list_schools_courses to browse its courses.

Inputs: schoolId (required).

get_study_streakGet study streakA
Read-onlyIdempotent
Inspect

Get the authenticated user's daily study streak: current streak length, longest streak, whether they already studied today (UTC), and milestone badges (7/30/100/365 days).

Inputs: no named parameters.

get_upload_jobGet upload jobA
Read-onlyIdempotent
Inspect

Check the progress of an upload started with upload_document or upload_document_from_url. Pass the jobId, or leave it out to list the user's uploads that are still running.

Inputs: jobId.

list_api_keysList api keysA
Read-onlyIdempotent
Inspect

List the user's active API keys (name, prefix, permissions, last used). The key value is never shown again after creation.

Inputs: no named parameters.

list_chat_threadsList chat threadsA
Read-onlyIdempotent
Inspect

List the user's AI chat threads (newest first, with messages). source='brain' (default) is the study-assistant chat that ask_brain writes to; source='copilot' lists the in-app copilot conversations. Filter by scope or by the document, lecture or flashcard set a chat is about.

Inputs: scope, source, documentId, flashcardSetId, +1 more.

list_connectionsList connectionsA
Read-onlyIdempotent
Inspect

List the AI apps connected to this uNotes account (with what each may do and when it last called) and the sign-in providers linked to it.

Inputs: no named parameters.

list_course_documentsList course documentsA
Read-onlyIdempotent
Inspect

List the documents of one course (use list_schools_courses to find the course id), optionally filtered by name, season or year, or get the course's document counts by type.

Inputs: courseId (required), name, skip, year, +3 more.

list_favoritesList favoritesA
Read-onlyIdempotent
Inspect

List the user's favorite courses, documents or schools. Optionally filter by name and page with skip and limit.

Inputs: entityType (required), skip, limit, query.

list_flashcard_setsList flashcard setsB
Read-onlyIdempotent
Inspect

Search the public flashcard library (not just the user's own sets). query matches title and subject.

Inputs: skip, limit, query.

list_granted_scopesList granted scopesA
Read-onlyIdempotent
Inspect

Show which permission groups and scopes this connection currently holds.

Inputs: no named parameters.

list_lecturesList lecturesB
Read-onlyIdempotent
Inspect

List the user's recorded lectures, newest edit first, optionally filtered by title.

Inputs: skip, limit, query.

list_lecture_sharesList lecture sharesA
Read-onlyIdempotent
Inspect

List the active share links of one of the user's lectures (who can view or edit).

Inputs: lectureId (required).

list_my_commentsList my commentsA
Read-onlyIdempotent
Inspect

List the comments the user has written, newest first, each with the document it is on. Page with skip and limit.

Inputs: skip, limit.

list_my_courses_schoolsList my courses schoolsC
Read-onlyIdempotent
Inspect

List the courses or the schools the user created, optionally filtered by name.

Inputs: type (required), name, skip, limit.

list_my_documentsList my documentsA
Read-onlyIdempotent
Inspect

List the documents the user uploaded. scope=all (default) filters by name, season, year or type; processing shows uploads still being processed; stats and counts give totals by document type; quiz_sources lists the documents a quiz can be generated from.

Inputs: name, skip, type, year, +3 more.

list_my_flashcardsList my flashcardsA
Read-onlyIdempotent
Inspect

List the authenticated user's own flashcard sets on uNotes, newest first. Use it for any question about the user's flashcards; optionally filter by title, subject, or course code. The document library search does not cover them.

Inputs: skip, limit, query.

list_my_quizzesList my quizzesA
Read-onlyIdempotent
Inspect

List the authenticated user's own quizzes on uNotes (quizzes for the courses where the user has uploaded documents), newest first. Use it for any question about the user's quizzes, such as "what quizzes do I have for CSI3131?": put the course code or quiz title in query. This is the tool for the user's quizzes; the document library search does not cover them.

Inputs: skip, limit, query.

list_notificationsList notificationsB
Read-onlyIdempotent
Inspect

Page the user's notification history, newest first.

Inputs: skip, limit.

list_plansList plansA
Read-onlyIdempotent
Inspect

List the paid plans (Premium, Pro) with their billing periods and prices. Use the id with upgrade_plan.

Inputs: no named parameters.

list_quizzesList quizzesA
Read-onlyIdempotent
Inspect

Search the public quiz library by course, school or text (all published quizzes, not just the user's).

Inputs: skip, limit, query.

list_schools_coursesList schools coursesA
Read-onlyIdempotent
Inspect

Search for schools and courses on uNotes. Use this when the student needs to find a school or course for uploading a document or creating flashcards.

Inputs: type, limit, query, schoolId.

list_sign_in_methodsList sign in methodsA
Read-onlyIdempotent
Inspect

The ways the user can sign in to this uNotes account (Google, Apple, email and password), whether each one can be disconnected and why not, and the ones not connected yet. The last way in is never removable. Connecting a provider is a browser sign-in with that provider: give the user connectUrl. A password is set through request_password_reset.

Inputs: no named parameters.

list_support_ticketsList support ticketsB
Read-onlyIdempotent
Inspect

List the support messages this user has sent, newest first.

Inputs: limit.

request_scopesRequest scopesA
Idempotent
Inspect

Ask for more permissions. Returns a one-click approval link for the user; after they approve, the new permissions apply on the next call. Connections made with an API key have fixed permissions: create a new key instead.

Inputs: tiers (required).

search_librarySearch libraryA
Read-onlyIdempotent
Inspect

Search the public uNotes document library by title, course, or type keywords. Call it with the query alone whenever no scope id is already known — schoolId and courseId are optional narrowing hints, never prerequisites, and must never be requested from the user. Course codes and school names the user typed belong in the query text. It searches documents only: it is not for the user's own quizzes or flashcards, which have their own listing tools.

Inputs: query (required), limit, courseId, schoolId.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Provides read-only access to an unofficial student wiki, enabling course catalog browsing, study-page navigation, Markdown page and discussion reading, full-text search, attachment and PDF retrieval, local OCR, and image handoff for client vision models without modifying the wiki.
      1
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Exposes a student's unified, source-attributed academic context — today's and this week's classes, assignments, deadlines, recent changes, course and lecture details, search results, and conflicts — to AI agents via high-level tools and resources whose answers always carry citations and conflict notices. Corrections are propose-only, and no tool can submit assignments, change enrolment, or touch grades.
      1
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Provides read-only access to BIT101 community posts, course reviews, personal schedules, grades, and Lexue calendar events, enabling natural language queries for Beijing Institute of Technology students.
      10
      1
      MIT
    Try in Browser

    Glama MCP Gateway

    Add one secure layer between your agents and this server.

    Resources