For developers & assistantsAgent tools documentation
LeasonAI exposes a Model Context Protocol (MCP) server, so assistants like Claude, ChatGPT desktop clients, and Cursor can search our guides, pull prompts, browse reviewed AI tools, and start draft articles — all as a real signed-in LeasonAI user.
Connecting
- Add this server URL in your assistant:
https://lessonaisite.lovable.app/mcp - Sign in with your LeasonAI email or Google account when prompted.
- Approve the access request on the consent screen.
- The assistant now sees the tools below, limited to your account's permissions.
Authorization uses OAuth 2.1 with PKCE. Tool discovery is available at /.mcp/list-tools, and resource metadata at /.well-known/oauth-protected-resource.
Tools (5)
Search guides
search_guidesRead-onlySearch LeasonAI guides by keyword, with optional category and status filters. Returns slugs, titles and excerpts.
Arguments
query string? — Keyword matched in title, excerpt and body.category string? — Category slug, e.g. guides or ethics.status "published" | "draft" | "any"? — Drafts need an admin account.limit number? — 1–50, default 10.
Example request
{
"name": "search_guides",
"arguments": {
"query": "gemini",
"category": "guides",
"limit": 3
}
}Example response
{
"articles": [
{
"slug": "google-gemini-in-the-classroom",
"title": "Google Gemini in the Classroom",
"excerpt": "A practical, teacher-tested walkthrough…",
"category": "guides",
"status": "published",
"published_at": "2026-09-02T09:00:00.000Z"
}
]
}Get guide
get_guideRead-onlyFetch one guide by slug, including the full Markdown body and SEO metadata.
Arguments
slug string — Slug from search_guides.
Example request
{
"name": "get_guide",
"arguments": {
"slug": "google-gemini-in-the-classroom"
}
}Example response
{
"article": {
"slug": "google-gemini-in-the-classroom",
"title": "Google Gemini in the Classroom",
"body_md": "## Why Gemini matters for teachers\n…",
"reading_time_minutes": 9
}
}List prompts
list_promptsRead-onlySearch the teacher prompt library by keyword or category.
Arguments
query string? — Keyword matched in title and prompt body.category string? — e.g. Lesson Planning, Feedback, Assessment.limit number? — 1–50, default 20.
Example request
{
"name": "list_prompts",
"arguments": {
"category": "Feedback",
"limit": 2
}
}Example response
{
"prompts": [
{ "title": "Rubric-aligned feedback", "category": "Feedback", "body": "You are an experienced…" }
]
}List AI tools
list_tools_directoryRead-onlyBrowse the reviewed directory of classroom AI tools with scores and pricing notes.
Arguments
query string? — Keyword matched in name and summary.limit number? — 1–50, default 20.
Example request
{
"name": "list_tools_directory",
"arguments": {
"query": "notebook",
"limit": 2
}
}Example response
{
"tools": [
{ "name": "NotebookLM", "category": "Research", "score": 9, "pricing": "Free" }
]
}Create guide draft
create_guide_draftWrites dataCreate a new draft article. Requires an admin account; drafts are never published automatically.
Arguments
title string — Article title.slug string — lowercase-with-dashes.body_md string? — Markdown body.excerpt string? — Listing summary.category string? — Default: guides.tags string[]? — Short lowercase tags.
Example request
{
"name": "create_guide_draft",
"arguments": {
"title": "Teaching source evaluation with AI",
"slug": "teaching-source-evaluation-with-ai",
"category": "guides"
}
}Example response
{
"article": { "id": "8f0…", "slug": "teaching-source-evaluation-with-ai", "status": "draft" }
}Privacy & auditing
Every tool call is recorded with the caller, client, tool name, outcome, duration, and redacted inputs. You can review your own calls in the dashboard under Agents, and admins can export the full log to CSV. Assistants never receive your password, and they cannot publish articles — only drafts.