create_card_template
ChatGPTCreate a template in an owned notebase; it generates a card for every existing note. Each face (front, back) is either { columns: [column IDs], style }, those columns in a built-in style that stays editable in the website's simple mode, or { layout: "<HTML + Liquid>" } for a custom design that references a column as {{ ["<column id>"] }}. Prefer columns faces. Get column IDs from the notebase schema.
create_notebase
ChatGPTCreate an empty owned notebase with optional initial fields. Add notes separately. An optional entity ID prevents another insert with the same ID; duplicates produce a conflict. While the notebase has no card template, Read Frog adds a default one when its fields fit (a term and a definition, for example): at once, then 10 minutes and a day later. Check list_card_templates before creating one.
create_notebase_field
ChatGPTCreate a field in an owned notebase. The returned field ID is used as a key in note cells.
create_notes
ChatGPTCreate 1–50 notes atomically in one owned notebase. Cells use field IDs and declared value types. Existing templates generate cards. Duplicate entity IDs roll back the whole batch.
delete_card_template
ChatGPTPermanently delete an owned template and its generated cards and review records. Source notes are preserved.
delete_notebase
ChatGPTPermanently delete an owned notebase and its fields, notes, templates, cards and review records. Return the deleted notebase ID.
delete_notebase_field
ChatGPTDelete an owned field and remove its values from notes. Primary fields and fields referenced by templates cannot be deleted.
delete_notes
ChatGPTPermanently delete 1–50 owned notes atomically, including their derived cards and review records. Notes may belong to different notebases. If any ID is missing or inaccessible, nothing is deleted. Return deleted IDs in input order.
get_card
ChatGPTRead one owned card with its rendered front, back, source IDs and learning state.
get_card_template
ChatGPTRead the complete definition and updatedAt timestamp of an owned card template.
get_card_template_guide
ChatGPTRead how card templates work: face shapes, the HTML + Liquid layout syntax, styling and limits. Read it once before writing a template.
get_note
ChatGPTRead one owned note with field-ID values and the updatedAt timestamp used for modification checks.
get_notebase_schema
ChatGPTRead an owned notebase name and field definitions, including field IDs, types and updatedAt timestamps. Does not return note content.
get_review_backlog
ChatGPTRead overdue review backlogs for owned awake notebases in the supplied timezone. Only a notebase whose overdue reviews fill two or more days of its daily review limit is listed; the rest are left out. A notebase whose daily review limit is 0 or unlimited (-1) never returns anything, even when its ID is requested. Does not return note content or card faces.
get_study_settings
ChatGPTRead an owned notebase's daily new-card limit, daily review limit and desired retention, without returning its name or content.
get_study_stats
ChatGPTRead existing study queue counts for owned notebases in the supplied timezone. Does not return note content or card faces.
list_card_templates
ChatGPTList owned card templates, optionally filtered by notebase. Supports limit and offset pagination.
list_cards
ChatGPTBrowse owned cards with rendered fronts, backs, source IDs and learning state. Optionally filter by notebase, template or scheduleStatus. Supports limit and offset pagination.
list_notebases
ChatGPTList the notebases (word books) owned by the current user.
list_notes
ChatGPTList or search owned notes, optionally within one notebase. Supply query to search; omit it to browse, which returns every note in scope rather than a filtered set. Searching requires notebaseId and covers that one notebase, so cover several by listing them first and calling this once per notebase. The query filter is at least two characters, matches a literal case-insensitive substring, and only searches fields of type string, so values in number, boolean, date and select fields are never matched. Supports limit and offset pagination.
list_review_history
ChatGPTRead owned review records, optionally filtered by notebase or card. Supports limit and offset pagination. Note content, card faces and rollback snapshots are excluded.
preview_card_template
ChatGPTRender a card template config on one note without saving anything. Returns both faces as plain text and any problems with their line numbers. Uses the notebase's first note unless noteId is given.
record_review
ChatGPTSubmit one rating for a known owned card without a queue, session or prerequisite read. Existing SRS eligibility, scheduling and sibling rules apply. The optional id is the existing state-derived review ID, not an arbitrary UUID; calls without a stable id are not guaranteed to deduplicate.
rename_notebase
ChatGPTRename an owned notebase without changing study settings.
set_card_buried
ChatGPTBury or unbury one owned card. enabled=true buries and enabled=false unburies it. Existing state-change rules apply.
set_card_suspended
ChatGPTSuspend or resume one owned card. enabled=true suspends and enabled=false resumes it. Existing state-change rules apply.
set_notebase_sleep
ChatGPTPut an owned notebase to sleep (enabled=true) or wake it (enabled=false). A sleeping notebase is left out of the combined review; its cards, memory states and review history are unchanged and it can still be reviewed directly. A request matching the current state succeeds without a change.
undo_review
ChatGPTUndo the latest eligible review of one owned card, preserving existing SRS restrictions and sibling restoration. expectedReviewId guards against undoing an earlier review on a retry.
update_card_template
ChatGPTChange an owned template name or faces (see creating a template for the face shapes). Rendered cards reflect the saved template. expectedUpdatedAt guards against editing stale data.
update_notebase_field
ChatGPTUpdate an owned field without changing its type. Removing select options clears affected note values. expectedUpdatedAt guards against editing stale data.
update_notes
ChatGPTUpdate 1–50 notes atomically in one owned notebase. Each row supplies its ID and fields to merge; omitted fields are preserved and null clears a field. Supply each note's expectedUpdatedAt to guard against stale edits. A missing row, invalid field or modification conflict rolls back the whole batch. Items are returned in input order.
update_study_settings
ChatGPTUpdate only the daily new-card limit, daily review limit and desired retention for an owned notebase.
whoami
ChatGPTReturns the Read Frog account the current MCP connection is authorized as. The email address is included only when the connection also holds the email scope.
create_card_template
Claudecreate_notebase
Claudecreate_notebase_field
Claudecreate_notes
Claudedelete_card_template
Claudedelete_notebase
Claudedelete_notebase_field
Claudedelete_notes
Claudeget_card
Claudeget_card_template
Claudeget_card_template_guide
Claudeget_note
Claudeget_notebase_schema
Claudeget_study_settings
Claudeget_study_stats
Claudelist_card_templates
Claudelist_cards
Claudelist_notebases
Claudelist_notes
Claudelist_review_history
Claudepreview_card_template
Clauderecord_review
Clauderename_notebase
Claudeset_card_buried
Claudeset_card_suspended
Claudeset_notebase_sleep
Claudeundo_review
Claudeupdate_card_template
Claudeupdate_notebase_field
Claudeupdate_notes
Claudeupdate_study_settings
Claudewhoami
Claude