Get sheet issues
get_sheet_issues
Section titled “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.
Contract metadata
Section titled “Contract metadata”{ "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false }, "fileParams": [], "requiredPermission": "read", "security": { "type": "oauth2", "scopes": [ "chalksurf:read" ] }}Input schema
Section titled “Input schema”The server advertises this JSON Schema to MCP clients. Runtime authorization and business-rule checks still apply.
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "organizationId": { "description": "The ChalkSurf organization ID to use for this request.", "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" } }, "required": [ "id", "organizationId" ], "type": "object"}Output schema
Section titled “Output schema”{ "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "issues": { "items": { "oneOf": [ { "additionalProperties": false, "properties": { "exercise": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "orderIndex": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" } }, "required": [ "id", "orderIndex" ], "type": "object" }, "language": { "minLength": 1, "type": "string" }, "missingFields": { "items": { "enum": [ "exercise_text", "detailed_solution" ], "type": "string" }, "minItems": 1, "type": "array" }, "patchPaths": { "items": { "minLength": 1, "type": "string" }, "minItems": 1, "type": "array" }, "path": { "minLength": 1, "type": "string" }, "type": { "const": "missing_translation", "type": "string" } }, "required": [ "type", "exercise", "language", "missingFields", "path", "patchPaths" ], "type": "object" }, { "additionalProperties": false, "properties": { "exercise": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "orderIndex": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" } }, "required": [ "id", "orderIndex" ], "type": "object" }, "path": { "minLength": 1, "type": "string" }, "type": { "const": "missing_solution", "type": "string" } }, "required": [ "type", "exercise", "path" ], "type": "object" }, { "additionalProperties": false, "properties": { "exercise": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "orderIndex": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" } }, "required": [ "id", "orderIndex" ], "type": "object" }, "field": { "enum": [ "exercise_text", "description", "hint", "answer", "scaffold", "detailed_solution" ], "type": "string" }, "language": { "minLength": 1, "type": "string" }, "patchPath": { "minLength": 1, "type": "string" }, "path": { "minLength": 1, "type": "string" }, "type": { "const": "invalid_latex", "type": "string" }, "validation": { "additionalProperties": false, "properties": { "issues": { "items": { "additionalProperties": false, "properties": { "code": { "enum": [ "unclosed_delimiter", "blacklisted_command", "disallowed_control_character_in_math", "disallowed_control_character_in_text", "double_escaped_latex_command", "katex_parse_error", "raw_latex_command_outside_math" ], "type": "string" }, "end": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "hint": { "type": "string" }, "message": { "type": "string" }, "severity": { "const": "error", "type": "string" }, "snippet": { "type": "string" }, "start": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "code", "message", "severity", "snippet", "start", "end" ], "type": "object" }, "type": "array" }, "path": { "type": "string" }, "valid": { "type": "boolean" }, "value": { "type": "string" } }, "required": [ "path", "value", "valid", "issues" ], "type": "object" } }, "required": [ "type", "exercise", "language", "field", "path", "patchPath", "validation" ], "type": "object" }, { "additionalProperties": false, "properties": { "exercise": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "orderIndex": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" } }, "required": [ "id", "orderIndex" ], "type": "object" }, "path": { "minLength": 1, "type": "string" }, "type": { "const": "missing_score", "type": "string" } }, "required": [ "type", "exercise", "path" ], "type": "object" }, { "additionalProperties": false, "properties": { "comment": { "minLength": 1, "type": "string" }, "exercise": { "additionalProperties": false, "properties": { "id": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "orderIndex": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" } }, "required": [ "id", "orderIndex" ], "type": "object" }, "issueId": { "format": "uuid", "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", "type": "string" }, "severity": { "enum": [ "warning", "error", "critical" ], "type": "string" }, "sourceLanguage": { "enum": [ "english", "hungarian", "german", "french", "spanish", "italian" ], "type": "string" }, "type": { "const": "exercise_quality_issue", "type": "string" } }, "required": [ "type", "issueId", "exercise", "severity", "sourceLanguage", "comment" ], "type": "object" } ] }, "type": "array" }, "readinessSummary": { "additionalProperties": false, "properties": { "hasIssues": { "type": "boolean" }, "issueCounts": { "additionalProperties": false, "properties": { "exercise_quality_issue": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "invalid_latex": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "missing_score": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "missing_solution": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "missing_translation": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "missing_translation", "missing_solution", "invalid_latex", "missing_score", "exercise_quality_issue" ], "type": "object" }, "status": { "enum": [ "empty", "ok", "needs_work" ], "type": "string" }, "totalIssueCount": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "status", "hasIssues", "totalIssueCount", "issueCounts" ], "type": "object" } }, "required": [ "readinessSummary", "issues" ], "type": "object"}