Tool tree
gradeNot graded
page: Every page
get_platform_infoAnswer
Fetch this Loopwise-powered school's overview (name, description, top courses, posts, digital downloads, lecturers). Use this first when an agent encounters the site.
View tool JSON
{
"name": "get_platform_info",
"kind": "answer",
"impl": "imperative",
"description": "Fetch this Loopwise-powered school's overview (name, description, top courses, posts, digital downloads, lecturers). Use this first when an agent encounters the site.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}search_coursesAnswer
Search this school's course catalog by keyword. Matches course names, subtitles, descriptions, and lecturer names — use get_course_details for the full content of a specific course.
View tool JSON
{
"name": "search_courses",
"kind": "answer",
"impl": "imperative",
"description": "Search this school's course catalog by keyword. Matches course names, subtitles, descriptions, and lecturer names — use get_course_details for the full content of a specific course.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Keyword to match against course names, subtitles, descriptions, and lecturer names."
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Result page, defaults to 1. The result frontmatter reports total_pages."
}
},
"required": [
"query"
]
},
"page": "/"
}search_postsAnswer
Search this school's posts (articles, blog entries) by keyword. Matches titles, subtitles, excerpts, and full body text — use get_post_details to read a specific post.
View tool JSON
{
"name": "search_posts",
"kind": "answer",
"impl": "imperative",
"description": "Search this school's posts (articles, blog entries) by keyword. Matches titles, subtitles, excerpts, and full body text — use get_post_details to read a specific post.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Keyword to match against post titles, subtitles, excerpts, and body text."
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Result page, defaults to 1. The result frontmatter reports total_pages."
}
},
"required": [
"query"
]
},
"page": "/"
}get_course_detailsAnswer
Fetch the full course detail for a given slug: description, curriculum, pricing, lecturers, FAQ, free preview lectures. Use after search_courses identifies a candidate.
View tool JSON
{
"name": "get_course_details",
"kind": "answer",
"impl": "imperative",
"description": "Fetch the full course detail for a given slug: description, curriculum, pricing, lecturers, FAQ, free preview lectures. Use after search_courses identifies a candidate.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Course slug, e.g. \"notion-starter\"."
}
},
"required": [
"slug"
]
},
"page": "/"
}get_post_detailsAnswer
Fetch a post (article, blog entry) for a given slug: body, author, category, tags, publish date, FAQ sections. Members-only and paid posts are read anonymously, so their body comes back truncated to a preview. Use after search_posts identifies a candidate.
View tool JSON
{
"name": "get_post_details",
"kind": "answer",
"impl": "imperative",
"description": "Fetch a post (article, blog entry) for a given slug: body, author, category, tags, publish date, FAQ sections. Members-only and paid posts are read anonymously, so their body comes back truncated to a preview. Use after search_posts identifies a candidate.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Post slug, e.g. \"how-to-price-a-course\"."
}
},
"required": [
"slug"
]
},
"page": "/"
}get_event_detailsAnswer
Fetch the full event detail for a given slug: schedule (ISO 8601 started_at / ended_at), hosting_type, tickets, capacity, hosts, replay availability.
View tool JSON
{
"name": "get_event_details",
"kind": "answer",
"impl": "imperative",
"description": "Fetch the full event detail for a given slug: schedule (ISO 8601 started_at / ended_at), hosting_type, tickets, capacity, hosts, replay availability.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Event slug, e.g. \"solopreneur005\"."
}
},
"required": [
"slug"
]
},
"page": "/"
}get_lecturer_profileAnswer
Fetch a lecturer's public profile: headline, experience, education, certifications, and the courses they teach on this school.
View tool JSON
{
"name": "get_lecturer_profile",
"kind": "answer",
"impl": "imperative",
"description": "Fetch a lecturer's public profile: headline, experience, education, certifications, and the courses they teach on this school.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Lecturer slug (the part after @ in /@slug)."
}
},
"required": [
"slug"
]
},
"page": "/"
}list_my_coursesAnswer
List the courses the signed-in member owns on this school, with completion progress, access expiry, and a resume link per course. Reads the member's own library through their browser session, which the anonymous catalog tools cannot see.
View tool JSON
{
"name": "list_my_courses",
"kind": "answer",
"impl": "imperative",
"description": "List the courses the signed-in member owns on this school, with completion progress, access expiry, and a resume link per course. Reads the member's own library through their browser session, which the anonymous catalog tools cannot see.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}resume_lectureAnswer
Find where the signed-in member last stopped watching and return the player URL for that lecture, with the paused position. Use this for "continue where I left off". It returns the URL and does not navigate the tab.
View tool JSON
{
"name": "resume_lecture",
"kind": "answer",
"impl": "imperative",
"description": "Find where the signed-in member last stopped watching and return the player URL for that lecture, with the paused position. Use this for \"continue where I left off\". It returns the URL and does not navigate the tab.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}get_my_ordersAnswer
List the signed-in member's orders on this school: state, total, payment method, refunded amount, and line items. Use for what they bought and whether a payment went through.
View tool JSON
{
"name": "get_my_orders",
"kind": "answer",
"impl": "imperative",
"description": "List the signed-in member's orders on this school: state, total, payment method, refunded amount, and line items. Use for what they bought and whether a payment went through.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}search_catalogAnswer
Search this school's catalog of courses, events, membership plans, and posts by keyword. Use when the kind of result wanted is unknown or spans several: search_courses and search_posts each narrow to one, and neither reaches events or membership plans.
View tool JSON
{
"name": "search_catalog",
"kind": "answer",
"impl": "declarative",
"description": "Search this school's catalog of courses, events, membership plans, and posts by keyword. Use when the kind of result wanted is unknown or spans several: search_courses and search_posts each narrow to one, and neither reaches events or membership plans.",
"inputSchema": {
"type": "object",
"properties": {
"q": {
"type": "string"
}
},
"required": [
"q"
]
},
"page": "/"
}