프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

LinkedIn Learning

제작자: johnisanerd버전 1.0.0i★ –i클라우드에서 실행
레지스트리 이름io.github.johnisanerd/linkedin-learning

설치

개요

제작자가 쓴 설명(영어 원문)

LinkedIn Learning catalog, reviews, and syllabus as JSON via the Apify Actor, hosted MCP.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 마케팅 및 소셜 미디어

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 3개 중 3개 통과
  • 제작자의 서버에서 실행돼요. 내가 요청한 내용은 제작자의 서버를 거쳐요.
  • 레지스트리에 입력해야 할 키가 나와 있지 않아요.

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:

  1. Settings → Connectors 열기
  2. Add custom connector 누르기
  3. 아래 주소를 붙여 넣고 Add 누르기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Add2https://…3
https://mcp.apify.com/?tools=johnvc/linkedin-learning-api

터미널에서 이 명령어를 실행하세요

claude mcp add --transport http linkedin-learning 'https://mcp.apify.com/?tools=johnvc/linkedin-learning-api'

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "linkedin-learning": {
      "url": "https://mcp.apify.com/?tools=johnvc/linkedin-learning-api"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "linkedin-learning": {
      "type": "http",
      "url": "https://mcp.apify.com/?tools=johnvc/linkedin-learning-api"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:

  1. 웹에서 ChatGPT 열기 → Settings → Connectors (Apps)
  2. Create 또는 Add 누르기(일부 요금제는 먼저 Advanced에서 Developer mode를 켜야 해요)
  3. 아래 주소를 붙여 넣고 이름을 정한 뒤 저장하기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Create2https://…3
https://mcp.apify.com/?tools=johnvc/linkedin-learning-api

메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

서버가 도구 목록을 보여 주기 전에 로그인을 요구해요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 johnisanerd 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • ✓ 통과

    엔드포인트 응답

    434ms 만에 응답(HTTP 401)

  • ✓ 통과

    OAuth로 로그인

    OAuth 로그인을 지원한다고 밝혀서, AI 앱이 로그인 화면으로 안내해 줘요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    아직 점검하지 않았어요. 엔드포인트를 점검할 때 도구 목록을 읽어요

마케팅 및 소셜 미디어 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 2970개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 2970개 중 86%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 2970개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

LinkedIn Learning, 안전한가요?

해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.0.0)은 4일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

MCP YouTube Transcript

제작자: jkawamoto

An MCP server retrieving transcripts of YouTube videos

내 컴퓨터에서 실행★ 495MIT9일 전 업데이트
설치

Google Analytics MCP

제작자: surendranb

GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.

내 컴퓨터에서 실행★ 244MIT9일 전 업데이트
설치

AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.

클라우드에서 실행★ 137MIT10일 전 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

🎓 LinkedIn Learning API: Course Data, Reviews and Syllabus from Python and MCP

A Python and MCP quick-start for the LinkedIn Learning API on Apify. Search the public LinkedIn Learning course catalog by keyword, skill level, length or software, then pull the full record for any course: rating and rating count, written learner reviews, the complete syllabus with a description and a free-preview flag on every lesson, instructors with profile links, skills taught and certificate details. None of it needs a login, a cookie or a site license.

LinkedIn's own Learning API is available only through its Partner Program or a purchased site license, with OAuth keys an admin has to provision. This Actor reads the pages LinkedIn Learning already publishes to logged-out visitors and returns the same catalog metadata as JSON: course title, link, instructors, duration, viewer count and thumbnail from a search, or the full record with reviews and table of contents from a course URL. It covers the public catalog only. LinkedIn's reporting API, which returns learner activity for a licensed organization, is a different product and nothing here reads it. You pay per row: $0.10 per 1,000 search results and $0.50 per 1,000 full course records. Apify also applies its platform accounting events, $0.00001 per Actor start (one event per GB of run memory, at least one) and $0.00001 per stored dataset row.

Video: Build MCP servers with Apify

Text walkthrough

The LinkedIn Learning API has two modes, set by mode. In search mode you pass queries (up to 25 keywords) or topics, optionally narrowed by sortBy, difficultyLevel, entityType, duration and softwareNames, and each course comes back as a search_result row with title, courseUrl, courseId, entityType, instructors, durationText, viewersText, releaseText and thumbnailUrl. LinkedIn serves at most 50 results per query, so expandWithFilters re-runs the query across LinkedIn's own filter combinations and merges the unique courses when you need a fuller course list. In details mode you pass courseUrls (course, lesson or learning path links, up to 200) and get a course_detail row with ratingValue, ratingCount, enrollmentCount, reviews, tableOfContents with a per-lesson isFree flag, skills, instructors, lessonCount, freeLessonCount, hasCertificate and certificateName. Setting enrichDetails to true on a search opens each found course and returns the full record instead, billed once at the full-record rate. The published task Extract LinkedIn Learning Course Reviews and Ratings runs details mode on three course URLs and returns the written review text with each reviewer's name, job title and profile link; run_course_reviews() in the example file makes the same details-mode call from Python, trimmed to the first of those three URLs so the first run costs about $0.0005.

Quick Start

Prerequisites: Python 3.11 or newer, uv, and a free Apify API token from apify.com.

git clone https://github.com/johnisanerd/Apify-LinkedIn-Learning-API.git

cd Apify-LinkedIn-Learning-API uv sync cp .env.example .env # paste your token into .env uv run python linkedin-learning-api-example.py

Each example is a separate flag:

uv run python linkedin-learning-api-example.py --example default      # search "python", 5 rows

uv run python linkedin-learning-api-example.py --example catalog # course catalog rows, each printed as JSON uv run python linkedin-learning-api-example.py --example reviews # written reviews for one course uv run python linkedin-learning-api-example.py --example new-courses # newest releases on a topic uv run python linkedin-learning-api-example.py --example all

Every example asks for a small number of rows on purpose. You pay per row delivered, so confirm the shape of the data first, then raise maxItems.

If you do not want a .env file, export the token instead:

export APIFY_API_TOKEN="paste_your_real_token_here"   # replace with the token from your Apify account

uv run python linkedin-learning-api-example.py

Why use this LinkedIn Learning API

A short list of what the Actor returns and what it costs, before the field-level detail in Features and Output Format.

No login and no site license

The Actor reads only what LinkedIn Learning shows a logged-out visitor. There is no field for a session cookie and no OAuth step. Anyone with a free Apify token can run it.

The full syllabus, lesson by lesson

tableOfContents lists every section and lesson with its own title, description, durationSeconds, url and an isFree flag, with freeLessonCount totalled on the course. That is how you find the free preview lessons without opening each page.

Pay for the rows you receive

Search results are billed on the course-found event at $0.10 per 1,000; full records on course-detail at $0.50 per 1,000. Duplicates, error rows and the popular-courses page LinkedIn substitutes when a query matches nothing are never charged at the course-found or course-detail rate.

LinkedIn Learning reviews with the reviewer's identity

A full course record carries reviews whenever the course page publishes written reviews: the review text, its star rating, and the reviewer's authorName, authorJobTitle and authorProfileUrl, plus datePublished. Other course data tools stop at the star average and rating count; the written text and who wrote it are only on the course page.

LinkedIn Learning course catalog and course list past the 50-result cap

LinkedIn shows at most 50 results for any one search. Run search mode across a set of keywords or topic pages, turn on expandWithFilters to get past that ceiling, and export the dataset as JSON, CSV or Excel. expandWithFilters repeats each query across LinkedIn's own filter combinations and merges the unique courses; within each query rows deduplicate on courseId, lessons on their own URL, so a course reached through two slugs is returned once; a course that matches two different queries appears once under each searchQuery. It is the closest thing to a LinkedIn Learning course catalog download that needs no account.

LinkedIn Learning learning paths, lessons and courses, told apart

entityType separates COURSE, VIDEO and LEARNING PATH in search results. A learning path URL in details mode returns pathUrl, courseCount and the ordered courses inside it; a lesson URL returns that lesson joined to its parent courseId.

Features

Core Capabilities
  • Search by queries or topics, narrowed with sortBy, difficultyLevel, entityType, duration and softwareNames.
  • LinkedIn Learning course catalog download: expandWithFilters re-runs a query across LinkedIn's own filter combinations, the only route past the 50-results-per-query cap, so a course list longer than 50 rows comes from one run.
  • LinkedIn Learning learning paths: details mode takes course, lesson and learning path URLs, up to 200 per run, and returns a course_detail, lesson or learning_path row for each.
  • enrichDetails turns a search into full course records in one run, billed once per row at the full-record rate.
  • LinkedIn Learning free courses: freeLessonCount and the per-lesson isFree flag in tableOfContents show how much of each course is watchable without a subscription.
  • Online courses dataset: run many queries or topics in one search and export the rows from every query, each labelled with its searchQuery, as JSON, CSV or Excel.
Data Quality
  • Each review carries body, rating, authorName, authorJobTitle, authorProfileUrl and datePublished.
  • Every lesson in tableOfContents has its own description, durationSeconds, url and isFree flag.
  • courseUrl is the canonical link with tracking parameters stripped; within each query (and within a details run) rows deduplicate on courseId, lessons on their own URL, so a course reached through two slugs is returned once; a course that matches two different queries appears once under each searchQuery.
  • no_results and error rows are pushed so you can see what failed, and are never billed at the course-found or course-detail rate.

Recipes

Ready-made configurations with their own Store landing pages:

Schedule tip. Save any of these inputs as a Task on the Actor page and schedule it to run weekly. With sortBy set to RECENCY the dataset lists the newest courses on a topic every week, and with enrichDetails on it refreshes ratingValue, ratingCount and the written reviews for every course, without anyone touching it.

Usage Examples

Basic, matching the default run:

{

"mode": "search", "queries": ["python"], "sortBy": "RELEVANCE", "difficultyLevel": "ANY", "entityType": "COURSE", "duration": "ANY", "maxItems": 5 }

Advanced, a filtered search enriched to full records:

{

"mode": "search", "queries": ["excel"], "softwareNames": ["Microsoft Excel"], "difficultyLevel": "BEGINNER", "duration": "BETWEEN_1_TO_2_HOURS", "sortBy": "POPULARITY", "maxItems": 10, "enrichDetails": true, "maxConcurrency": 5 }

Details mode, full records for URLs you already have:

{

"mode": "details", "courseUrls": [ "https://www.linkedin.com/learning/python-essential-training-18764650", "https://www.linkedin.com/learning/paths/getting-started-with-python" ] }

Input Parameters

Only mode is required. Search settings apply when mode is search; courseUrls applies when mode is details. In search mode at least one of `qu

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기