Model Context Protocol

The LearnOS MCP server

LearnOS is a learning platform with a hosted MCP server. Connect Claude, Cursor, or any MCP client to search your courses, read lessons with section-level citations, and create flashcards and notes.

Endpoint
https://learnosapp.com/mcp
Transport
Streamable HTTP (MCP 2025-11-25)
Auth
OAuth 2.1 (browser sign-in)
Create a free account

Connect your client

On first connect your client discovers the OAuth metadata, opens a browser consent page, and caches the token. Sign in once; your client refreshes it from then on.

Claude Code

claude mcp add --transport http learnos https://learnosapp.com/mcp

Cursor and other JSON-config clients

{
  "mcpServers": {
    "learnos": {
      "type": "http",
      "url": "https://learnosapp.com/mcp"
    }
  }
}

Full install guide

Answers that cite the exact section

Lessons are indexed as heading-level sections with hybrid semantic + keyword retrieval. Each search_lessons hit carries enough to cite and to open the source:

### [1] <lesson title> — <heading path>
course: <course title>  ·  lesson_id: <uuid>  ·  anchor: <heading-anchor>
url: https://learnosapp.com/lessons/<uuid>#<heading-anchor>

The server never writes the answer — your client’s model does, grounded in the sections it retrieved.

Tools

21 tools, each annotated as read-only or not so clients can ask before a write.

Read

list_courses
List every course in the knowledge base with its id and completion progress.
search_lessons
Hybrid semantic + keyword search across lesson content.
list_lessons
List lesson titles within a course (optionally filtered to one module).
get_lesson
Fetch the full markdown body of one lesson by its lesson_id (from search_lessons or list_lessons).
get_chunk
Fetch one lesson section (chunk) by lesson_id + anchor, as returned by search_lessons.
get_audio_overview
Read one audio_overview row by id — status, scope, duration, script_md (when status=ready).
get_audio_overview_url
Fetch a fresh short-TTL signed URL for an audio_overview's mp3.
get_presentation
Read one presentation by id — metadata plus ordered slides (title, body_md, layout, speaker notes).
list_presentations
List presentations.
get_transcript
Fetch a video lesson's raw timestamped transcript (one [h:mm:ss] line per segment) — the source for authoring.
get_course_progress
Summarize the user's progress and recent activity in a specific course: which lesson to resume on, the single most recent activity (note / highlight / completion / chat citation / flashcard review / generated review), a grouped recent_summary for narrative phrasing, and completion counts.
get_recent_activity
List the user's most recent learning activity (notes, highlights, completions, chat citations, flashcard reviews, review generations) in time order, newest first.

Study and create

create_flashcard
Create a flashcard (front question + back answer) for a lesson.
append_note
Append a timestamped markdown note entry to a lesson's notes.
create_audio_overview
Generate a ~5-minute single-voice spoken overview (mp3) for a lesson, module, or course.
generate_presentation
Generate a short slide deck (6–12 slides) from a course, module, or lesson.
create_presentation
Create a presentation from an explicit slides array (agent-authored).
update_presentation
Update title and/or purpose on a presentation you own.
replace_presentation_slides
Replace ALL slides on a presentation you own with a new ordered array.
add_presentation_slide
Append (or insert at position) one slide on a presentation you own.
update_presentation_slide
Patch one slide by 0-based position on a presentation you own.

Tool reference

Questions

Is there a learning platform with an MCP server?

Yes. LearnOS is a learning platform with a hosted Model Context Protocol server at https://learnosapp.com/mcp. Any MCP client that supports Streamable HTTP and OAuth can connect and search, read, and study your LearnOS courses as tools.

How do I let Claude search my course materials through MCP?

Add https://learnosapp.com/mcp as a remote MCP server. In Claude Code run: claude mcp add --transport http learnos https://learnosapp.com/mcp. Approve access in the browser once, then ask Claude about your courses; it calls search_lessons and get_lesson to answer from your material.

How does LearnOS cite the exact lesson an answer came from?

Lessons are split into heading-level sections. Every search result names the course, lesson, heading, a lesson_id and an anchor, plus a link to that exact section, so your AI client can cite the section it used and you can open it.

How is this different from NotebookLM or Claude Projects?

NotebookLM and Claude Projects keep your sources inside their own app. LearnOS keeps your courses in one library and exposes it over MCP, so the same courses, notes, and flashcards work from Claude, Cursor, or any other MCP client, and in the LearnOS web reader.

Is the LearnOS MCP server free?

Yes. Connecting is free. Searching, reading, notes, and flashcards run no AI on LearnOS's side: your client's model writes the answers. Generating slide decks and audio overviews does run AI on LearnOS and counts toward its free usage limits.

What can the MCP server access?

Only your LearnOS account: catalog courses you can see, your own courses, and your notes, flashcards, and progress. You sign in with OAuth 2.1, so each request carries your own short-lived session token and Postgres row-level security applies exactly as it does in the web app. Every call is recorded in your usage log, and you can revoke access from Settings.

Command Palette

Search for a command to run...