MCPサーバー

PPL Free Ground School

com.pplfree/ground-school
教育 科学・工学 公開・接続可能 MCP 2026-07-28

このMCPでできること

Provides FAA private-pilot ground-school lessons, source-cited aviation knowledge, curriculum navigation, practice questions, and answer grading.

check_answer
Check a practice answer
Grade the user's answer to a practice question from get_practice_question. Use this when the user replies with their choice (for example "B" or "I think it is C"): pass the question_id and their choice. Returns whether the answer is correct, the correct choice, why each choice is right or wrong, and the FAA citations. It also returns save_progress_url, a pplfree.com link where the user can save the answers from this chat to their study progress on that site, and save_token: pass it back as previous_token on the next check_answer call so one link collects every answer in the chat (up to 20, valid for 7 days). Nothing is stored unless the user opens the link.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['question_id', 'choice'], 'properties': {'choice': {'type': 'string', 'maxLength': 20, 'description': 'The choice the user picked: its label (e.g. "b" or "B").'}, 'question_id': {'type': 'string', 'maxLength': 120, 'description': 'The questionId returned by get_practice_question.'}, 'previous_token': {'type': 'string', 'maxLength': 4096, 'description': 'The save_token from the previous check_answer call in this chat, if any, so the save link keeps every answer. Omit on the first answer.'}}, 'additionalProperties': False}
get_lesson
Get a lesson
Fetch one full ground-school lesson: its summary, why it matters in flight, the learning objectives it covers, and a link to read it. Use this after search_faa_knowledge when the user wants the whole topic rather than a single answer, or when they ask to study or learn a subject properly. Call list_curriculum first if you do not already have a lesson key.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['lessonKey'], 'properties': {'lessonKey': {'type': 'string', 'maxLength': 120, 'description': 'Lesson key, e.g. "as.lesson.vfr-minimums". From list_curriculum.'}}, 'additionalProperties': False}
get_practice_question
Get a practice question
Return private-pilot practice questions written for this course in the style of the FAA knowledge test (not actual FAA test questions), each with its answer choices, its topic, a question_id and a link to try it on pplfree.com. The correct answer is withheld by default so the user can attempt the question first. Once the user has answered, call check_answer with that question_id and their choice to grade it (or call this tool again with the question_id and reveal_answer: true to show the answer without grading). Use this when the user wants to be quizzed, asks for practice or test questions, wants to check their understanding of a topic, or is preparing for the FAA private-pilot knowledge test. Optionally scope it to a topic.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'count': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': 'How many questions to return (1-5, default 1).'}, 'topic': {'type': 'string', 'maxLength': 80, 'description': 'Optional topic to draw from, e.g. "airspace", "weather", "aerodynamics", "regulations", "navigation", "weight-balance", "systems". Omit for any topic.'}, 'question_id': {'type': 'string', 'maxLength': 120, 'description': 'A question_id from an earlier call, to return that exact question (typically with reveal_answer: true). Overrides topic and count.'}, 'reveal_answer': {'type': 'boolean', 'default': False, 'description': 'Include the correct choice and the explanation. Default false: leave it off until the user has attempted the question.'}}, 'additionalProperties': False}
list_curriculum
List the curriculum
List the ground-school curriculum: modules and the published lessons in each, with their keys. Use this to orient yourself before get_lesson, to answer "what does the course cover", or to help a user plan what to study next.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'module': {'type': 'string', 'maxLength': 40, 'description': 'Optional module key to expand, e.g. "MOD-08". Omit for all modules.'}}, 'additionalProperties': False}
search_faa_knowledge
Search FAA ground-school knowledge
Answer a US private-pilot (FAA) ground-school question from a source-cited curriculum. Use this whenever the user asks about FAA regulations, airspace, VFR weather minimums, weight and balance, aerodynamics, aircraft systems, navigation, weather theory, human factors, or private-pilot certification requirements. Returns short passages, each with the FAA citation it came from (e.g. "14 CFR 91.155", "PHAK Ch. 15") and a link to the lesson. Cite those labels in your answer.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 8, 'minimum': 1, 'description': 'How many passages to return (1-8, default 4).'}, 'query': {'type': 'string', 'maxLength': 500, 'minLength': 3, 'description': "The user's question, in their own words."}}, 'additionalProperties': False}
追加
list_curriculum
2026年9月28日2:40
追加
get_lesson
2026年9月28日2:40
追加
check_answer
2026年9月28日2:40
追加
get_practice_question
2026年9月28日2:40
追加
search_faa_knowledge
2026年9月28日2:40