Skip to content

MCP tool reference

  • append_exercises_to_sheet — Use this to append existing visible exercises to the end of one writable exercise sheet.
  • bulk_update_sheets — Use dry_run first to validate up to 100 sheet patches, then apply the exact batch with the returned confirmation digest.
  • copy_exercise — Use this to copy one visible exercise into the selected ChalkSurf organization.
  • copy_sheet — Use this to copy one visible exercise sheet into the selected ChalkSurf organization, either keeping exercise references or copying all visible exercises.
  • create_exercise — Use this to create one exercise in the selected ChalkSurf organization.
  • create_folder — Use this to create an exercise sheet folder in the selected ChalkSurf organization.
  • create_sheet — Use this to create one exercise sheet in the selected ChalkSurf organization.
  • delete_exercise — Use this to soft-delete one writable exercise after checking updated_at and exact destructive confirmation.
  • delete_folder — Use this to delete one empty exercise sheet folder after exact destructive confirmation.
  • delete_sheet — Use this to soft-delete one writable exercise sheet after checking updated_at and exact destructive confirmation.
  • dismiss_quality_issue — Dismiss an active quality issue after checking the exercise evidence timestamp.
  • edit_sheet_content — Atomically add, remove, move, and score exercises on one sheet. Read get_sheet first and pass its exact updated_at as expectedUpdatedAt. Use dryRun to preview copies and publication requirements. After a lost response, inspect get_sheet; do not blindly resend. Readback cannot prove which request made a change.
  • figure_get_capabilities — Use this to inspect the supported semantic 2D figure objects, construction definitions, assertions, limits, and compact snippets before calling figure_render_draft.
  • figure_render_draft — Call figure_get_capabilities first, then use this to render a bounded semantic 2D figure draft to SVG/PNG. Unknown properties are ignored with path-level warnings; recognized invalid combinations fail with actionable paths. The result includes deterministic diagnostics, assertion results, and review hints before any save/upload step.
  • generate_exercise_translation_job — Use this to queue translation generation for one writable ChalkSurf exercise.
  • generate_sheet_translation — Use this to queue translation generation for one writable ChalkSurf exercise sheet.
  • get_auth_status — Use this to confirm the authenticated ChalkSurf user.
  • get_exercise — Use this to fetch full details for one exercise visible to the selected organization.
  • get_exercise_source_document — Fetch up to 5 MiB of exact retained source bytes after re-proving same-creator-job association with an owned exercise or exact version. Use the CLI command for larger retained sources.
  • get_exercise_usage — Use this to inspect which sheets currently use one visible exercise.
  • get_exercise_version — Fetch one normalized persisted version snapshot for an exercise owned by the selected organization.
  • get_job — Use this to fetch one ChalkSurf job by ID.
  • get_sheet — Use this to fetch full details for one exercise sheet visible to the selected organization.
  • get_sheet_issues — Use this to fetch an actionable repair queue for one visible exercise sheet, including LaTeX paths, missing translations, missing solutions, and missing scores.
  • get_sheet_version — Use this to fetch one owned exercise sheet version snapshot with its referenced exercise details.
  • import_exercise — Use this to import one or more exercise source files from ChatGPT file parameters or HTTPS URLs into a ChalkSurf organization.
  • import_exercise_solution — Use this to import one or more solution files from ChatGPT file parameters or HTTPS URLs for an existing ChalkSurf exercise.
  • import_sheet — Use this to import one or more exercise sheet source files from ChatGPT file parameters or HTTPS URLs into a ChalkSurf organization.
  • import_sheet_solutions — Use this to import one or more solution files from ChatGPT file parameters or HTTPS URLs for an existing ChalkSurf exercise sheet.
  • import_sheet_translation — Use this to import one authoritative translated version from ChatGPT file parameters or HTTPS URLs into an existing ChalkSurf exercise sheet.
  • list_exercise_labels — Use this to discover canonical ChalkSurf exercise label IDs before creating or updating exercises.
  • list_exercise_source_documents — List retained source metadata and explicit same-creator-job coverage for an exercise or exact version owned by the selected organization.
  • list_exercise_versions — List normalized persisted version summaries for one exercise owned by the selected organization.
  • list_folders — Use this to list exercise sheet folders in the selected ChalkSurf organization.
  • list_jobs — Use this to list the authenticated user’s ChalkSurf jobs.
  • list_organizations — Use this to list ChalkSurf organizations available to the authenticated user.
  • list_quality_issues — List active quality issues for exercises owned by the selected ChalkSurf organization.
  • list_sheet_series — Use this to inspect the authoritative sheet-series hierarchy and valid assignment paths, optionally for one subject.
  • list_sheet_versions — Use this to inspect the version history for one owned exercise sheet.
  • list_sheets — Use this to list exercise sheets owned by a ChalkSurf organization and inspect their folder paths and series assignments.
  • remove_exercise_figure — Use this to remove an exercise figure with the current exercise revision and shared-usage acknowledgement. Read the exercise figures before writing.
  • rename_folder — Use this to rename an exercise sheet folder in the selected ChalkSurf organization.
  • reorder_exercise_figures — Use this to reorder exercise figures with the current exercise revision and shared-usage acknowledgement. Read the exercise figures before writing.
  • replace_exercise_figure — Replace one active image with a new UUID, preserving display settings and original history. Requires current exercise revision and shared-use acknowledgment. Read back after an uncertain response before any further write.
  • resolve_quality_issue — Mark an active quality issue resolved after checking the exercise evidence timestamp.
  • search_exercises — Search visible exercises in live cursor batches. Continue with top-level nextCursor until null. Keep filters unchanged; model/configuration changes require restarting without a cursor. Semantic vector drift continues with semanticSearchWarning and may repeat or omit results.
  • search_sheets — Use this to search exercise sheets visible to the authenticated ChalkSurf organization.
  • send_agent_feedback — Use this when you observe a ChalkSurf CLI, MCP, API, or documentation inconsistency while using agent tools.
  • send_user_feedback — Use this only after the user explicitly asks you to send feedback or agrees to send a bug report or feature request.
  • set_exercise_visibility — Use this to make one writable exercise public or private after checking updated_at and visibility policy.
  • set_sheet_visibility — Use this to make one writable exercise sheet public or private after checking updated_at and visibility policy.
  • update_exercise — Use this to apply a field-level patch to one exercise with an updated_at precondition and shared-usage acknowledgement.
  • update_exercise_figure — Use this to update an exercise figure with the current exercise revision and shared-usage acknowledgement. Read the exercise figures before writing.
  • update_sheet — Use this to apply a field-level patch to one exercise sheet with an updated_at precondition.
  • upload_exercise_figure — Use this to attach one reviewed image, MCP file, HTTPS image, base64 image, or rendered figure to an exercise by providing exerciseId, figureType, source, and width.
  • validate_latex_snippets — Use this to validate LaTeX snippets before updating exercise or sheet content.
  • verify_bulk_sheet_updates — Use this after an uncertain bulk apply response to classify each requested sheet target as applied, pending, conflicting, or error without writing.
  • wait_for_jobs — Use this to wait until one or more ChalkSurf jobs complete, fail, or time out.