API Lessons — MCP Server Documentation
Overview
API Lessons is a read-only Model Context Protocol (MCP) server. It gives AI agents a searchable list of free, short Lightning Lessons on the Maven education platform by Emmanuel Paraskakis. Topics covered: APIs, MCP, Product Management, Technical PM Careers, and ChatGPT Apps.
Users can view a recording, sign up for an upcoming live lesson, or learn which cohort-based course is connected to the topic so they can go deeper into it. Lightning Lessons are conducted over Zoom, in English, and are meant for tech-savvy mid-career professionals in the technology or software industry.
Server
| Server name | API Lessons |
|---|---|
| Version | 2.0.0 |
| Endpoint | https://ll-mcp.replit.app/mcp |
| Transport | Streamable HTTP (JSON-RPC 2.0 over HTTP POST; responses as text/event-stream) |
| Protocol version | 2025-11-25 (the server also accepts earlier versions proposed by the client) |
| Authentication | None. No account, API key, or OAuth is required. |
| Capabilities | tools, resources |
| Data handling | Read-only. No user data is collected or stored. See the Privacy Policy and Terms of Service. |
Tool: getLessons
| Tool name | getLessons |
|---|---|
| Title | Get Lessons |
| Annotations | readOnlyHint: true · destructiveHint: false · openWorldHint: false |
Description
Use this tool to search for short lessons on APIs, MCP, Product Management, Technical PM Careers, and ChatGPT Apps. Lessons are either available On Demand (watch the recording) or Scheduled (sign up for upcoming live training). Do not use if the user is looking for education topics outside software, technology, or business.
How it works: a partial text search returns matching lessons with full details including title, description, learning outcomes, instructor, guest speakers, related course, and signup URL. The search covers all of these fields. Supports broad queries like "all" or "every" as well as specific topic searches.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | No | Partial text search query to filter lessons by title, description, outcomes, course name, instructor names, or guest names. |
Input schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Partial text search query to filter lessons by title, description, outcomes, course name, instructor names, or guest names"
}
},
"additionalProperties": false
}
Output schema
The tool returns an object with a single lessons array. Every lesson has all of the fields below.
| Field | Type | Description |
|---|---|---|
id | string | Unique lesson identifier (URL slug) |
title | string | Lesson title |
instructors | string[] | List of instructor names |
guests | string[] | List of guest names |
url | string | URL to the lesson on Maven |
date | string | Lesson date (YYYY-MM-DD) |
status | string | "On Demand" or "Scheduled": whether the lesson is available now or upcoming |
courseName | string | Name of the course this lesson belongs to |
courseUrl | string | URL to the course on Maven |
description | string | Full lesson description |
outcomes | object[] | Learning outcomes, each with title and description (both strings) |
{
"type": "object",
"properties": {
"lessons": {
"type": "array",
"description": "Matching lessons",
"items": {
"type": "object",
"properties": {
"id": { "type": "string" },
"title": { "type": "string" },
"instructors": { "type": "array", "items": { "type": "string" } },
"guests": { "type": "array", "items": { "type": "string" } },
"url": { "type": "string" },
"date": { "type": "string" },
"status": { "type": "string", "enum": ["On Demand", "Scheduled"] },
"courseName": { "type": "string" },
"courseUrl": { "type": "string" },
"description": { "type": "string" },
"outcomes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": { "type": "string" },
"description": { "type": "string" }
},
"required": ["title", "description"],
"additionalProperties": false
}
}
},
"required": ["id", "title", "instructors", "guests", "url", "date",
"status", "courseName", "courseUrl", "description", "outcomes"],
"additionalProperties": false
}
}
},
"required": ["lessons"],
"additionalProperties": false
}
Example
Request (JSON-RPC tools/call):
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "getLessons",
"arguments": { "query": "MCP" }
}
}
Response (one lesson shown, description shortened):
{
"lessons": [
{
"id": "d4116d",
"title": "AI Agents are Coming for Your API - Are You Ready?",
"instructors": ["Emmanuel Paraskakis"],
"guests": ["Zdenek Nemec"],
"url": "https://maven.com/p/d4116d",
"date": "2025-05-21",
"status": "On Demand",
"courseName": "API Product Mastery for Experienced PMs",
"courseUrl": "https://maven.com/emmanuel/api-pm-mastery",
"description": "AI Agents will soon dominate API consumption. And if they can't easily access your API, they'll scrape your website or, worse, use a competitor's API. ...",
"outcomes": [
{
"title": "Identify AI Agent Integration Challenges",
"description": "Recognize common issues AI agents face when connecting with current APIs."
}
]
}
]
}
Resource
| URI | lightning-lessons://all |
|---|---|
| Name | lessons |
| Contents | The full list of Lightning Lessons, in the same shape as the getLessons output. |
Contact
Level 250 Inc.Email: [email protected]
Website: https://level250.com