Quizlar
OfficialAllows creating flashcard decks from YouTube videos, extracting content for spaced repetition quizzes.
Quizlar MCP Server
Voice-led, FSRS-scheduled flashcards from YouTube, PDFs, web, or text. Auto-graded quizzes.
Quizlar's MCP server lets Claude, Cursor, Cline, Windsurf, or any MCP-compatible client:
Create flashcard decks from YouTube videos, PDFs, web pages, or pasted text
Run auto-graded quizzes with the same tier-1-exact-match → phonetic → LLM grading pipeline that powers the voice product
Track memory with FSRS spaced repetition — Quizlar is the scheduler of record, every answer updates real memory state
This repo is the public discovery surface (server.json for the Official MCP Registry + a stdio bundle for clients that need it). The hosted MCP server itself is closed-source and runs at https://mcp.quizlar.app — /mcp/ for OAuth-capable clients, /mcp-apikey/ for apiKey Bearer auth (used by every snippet in this README).
Listings
Official MCP Registry —
io.github.quizlar/mcp-serverv1.0.0Smithery — https://smithery.ai/servers/quizlar/quizlar
Setup
Mint an API key at https://quizlar.app/settings/api-keys (format:
sk-qz-<32 chars>).Pick your client below and paste the snippet.
Cursor
~/.cursor/mcp.json:
{
"mcpServers": {
"quizlar": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.quizlar.app/mcp-apikey/",
"--header",
"Authorization:Bearer ${QUIZLAR_API_KEY}"
],
"env": { "QUIZLAR_API_KEY": "sk-qz-..." }
}
}
}Windsurf
~/.codeium/windsurf/mcp_config.json — Windsurf supports Streamable HTTP natively, no wrapper needed:
{
"mcpServers": {
"quizlar": {
"serverUrl": "https://mcp.quizlar.app/mcp-apikey/",
"headers": { "Authorization": "Bearer ${QUIZLAR_API_KEY}" }
}
}
}Then export QUIZLAR_API_KEY=sk-qz-... in your shell.
Claude Desktop
Open Settings → Connectors → "Add custom connector":
Name: Quizlar
URL:
https://mcp.quizlar.app/mcp-apikey/Add header → Name:
Authorization, Value:Bearer sk-qz-...
Or edit claude_desktop_config.json directly using mcp-remote:
{
"mcpServers": {
"quizlar": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.quizlar.app/mcp-apikey/",
"--header",
"Authorization:Bearer ${QUIZLAR_API_KEY}"
],
"env": { "QUIZLAR_API_KEY": "sk-qz-..." }
}
}
}Cline
Edit cline_mcp_settings.json (Cline → Settings → MCP Servers → "Edit JSON"):
{
"mcpServers": {
"quizlar": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.quizlar.app/mcp-apikey/",
"--header",
"Authorization:Bearer ${QUIZLAR_API_KEY}"
],
"env": { "QUIZLAR_API_KEY": "sk-qz-..." }
}
}
}Detailed steps in llms-install.md.
Smithery
npx -y @smithery/cli@latest install @quizlar/quizlar --client claudeReplace claude with cursor, windsurf, etc. Smithery walks you through pasting your API key.
Tools
22 tools mapped 1:1 to learner verbs:
Build decks:
create_deck,create_deck_from_text,create_deck_from_youtube,create_cards_batch,get_job_statusQuiz:
quiz_me(composite: build + start in one call),start_quiz,submit_answer,skip_question,end_quizBrowse:
list_decks,get_deck,list_cards,search_decks,search_cards,list_sessionsAnalytics:
get_progress,get_study_recommendations,get_learning_velocity,get_knowledge_gaps,get_retention_curves,get_card_difficulty_stats
Auth
Bearer API key (sk-qz-<32 chars>) is the simplest path; the /mcp-apikey/ mount used in every snippet above accepts the Bearer header directly and skips the OAuth handshake that some stdio bridges can't drive. Quizlar also exposes full OAuth 2.1 with Dynamic Client Registration + PKCE on https://mcp.quizlar.app/mcp/ (discovery card at /.well-known/oauth-authorization-server) for clients that prefer a browser flow.
Troubleshooting
401 Unauthorizedon every tool call — API key is missing, mistyped, or revoked. Re-mint at https://quizlar.app/settings/api-keys and paste the fullsk-qz-…value, including the prefix, into theAuthorization: Bearer …header.Client doesn't see Quizlar tools after editing config — fully restart the client (most don't hot-reload MCP config). For Claude Desktop, quit from the menu bar; for Cursor / Windsurf / Cline, close all windows.
mcp-remotefails to launch — usually a Node.js /npxpath issue. Runnpx -y mcp-remote --helpin a terminal to verify it resolves; if behind a corporate proxy, setHTTPS_PROXYin the client'senvblock or installmcp-remoteglobally withnpm i -g mcp-remote.429/ quota errors mid-quiz — free-tier daily limits reached. Quotas reset at midnight UTC; or upgrade at https://quizlar.app/settings/billing.OAuth callback never returns to the client — your loopback port may be blocked. Fall back to the API-key flow above; it bypasses OAuth entirely.
For anything not covered here, file an issue at https://github.com/quizlar/mcp-server/issues or email support@quizlar.app.
Links
App: https://quizlar.app
Stdio bundle source:
bundle/(used to publish to Smithery + any other stdio-only client)
License
MIT for this configuration repo. The hosted MCP server itself is proprietary.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/quizlar/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server