{"id":1288805,"recorded_at":"2026-10-30T20:51:23.691091Z","observed_at":"2026-10-30T20:51:23.691010Z","subject_kind":"endpoint","subject":"58c608f6-76aa-4c70-83ca-5b5b28b5097b","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":18,"tools":[{"description":"Attach up to 10 Studocu documents from search-documents to a project as project sources. Returns the added sources with their studocu:// ids; compare with document_ids if some are missing.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"document_ids":{"description":"1 to 10 different positive integer Studocu document ids from search-documents (documents[].id). Example: [17, 42].","items":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"maxItems":10,"minItems":1,"type":"array"},"project_id":{"description":"UUID of the project that should receive the Studocu documents. Example: 11111111-1111-4111-8111-111111111111. From create-project or get-context.","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":["project_id","document_ids"],"type":"object"},"name":"add-document-sources"},{"description":"Show who the current Studocu sign-in belongs to: authenticated, subject, clientId, and scopes. Use only to check that login worked.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{},"type":"object"},"name":"agent-os-session"},{"description":"Create a new project. Every field is optional. Returns project_id for add-document-sources, write-artifact, and request-creation.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","additionalProperties":false,"properties":{"course_id":{"description":"Positive integer course id from search-courses. Example: 1581710. The course is checked before the project is created; an unknown id creates nothing. Omit to leave the project unlinked.","maximum":9007199254740991,"minimum":1,"type":"integer"},"emoji":{"description":"Icon text, usually an emoji. Example: \"📚\". Omit to leave the icon unset.","minLength":1,"type":"string"},"title":{"description":"Name, 1-255 characters, with at least one non-space character. Example: \"Biology midterm\". Omit to create the project without a name; the returned title is then \"Untitled project\".","maxLength":255,"minLength":1,"pattern":"\\S","type":"string"}},"type":"object"},"name":"create-project"},{"description":"Delete one saved memory for this learner, chosen by project_id and kind.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"kind":{"description":"Kind of the memory to delete. Example: \"study_preference\" or \"project_learning_context\".","minLength":1,"type":"string"},"project_id":{"anyOf":[{"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"},{"type":"null"}],"description":"UUID of the project memory to delete, or null. Example: 11111111-1111-4111-8111-111111111111. Omit or null to delete a learner-wide memory."}},"required":["kind"],"type":"object"},"name":"delete-memory"},{"description":"Load the learner's profile, followed courses, and projects. Use get-project-state for what is inside a project. Per-topic practice scores are included only when one course is in scope; otherwise use get-course-mastery.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"active_only":{"description":"Optional true or false. It is echoed on the response and does not change which courses or projects are returned. Omit it.","type":"boolean"},"course_id":{"anyOf":[{"minLength":1,"type":"string"},{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}],"description":"Return only this course and its projects. Numeric id or the same id as text. Example: 1581710 or \"1581710\". Omit to include every followed course."},"project_id":{"description":"Return only this project. Example: \"11111111-1111-4111-8111-111111111111\". From an earlier get-context or create-project result. Omit to include the learner's projects.","minLength":1,"type":"string"},"recent_only":{"description":"Optional true or false. It is echoed on the response and does not change which courses or projects are returned. Omit it.","type":"boolean"}},"type":"object"},"name":"get-context"},{"description":"Return the learner's practice scores (0-100) for the topics they have practised in one course. An empty list means no practice yet.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"course_id":{"description":"Numeric course id from search-courses or get-context. Example: 1581710. A numeric string such as \"1581710\" is accepted.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["course_id"],"type":"object"},"name":"get-course-mastery"},{"description":"Return Studocu's generated outline for a course as markdown. If none exists yet, the call returns an error; try again in a few minutes.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"course_id":{"description":"Numeric course id from search-courses. Example: 1581710. A numeric string such as \"1581710\" is accepted.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["course_id"],"type":"object"},"name":"get-course-syllabus"},{"description":"List the project sources and creations inside one or more projects. A creation may include external_id (a quiz id or mock-exam id) to match a request-creation result that is still being saved.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"ids":{"description":"1 to 20 project ids from get-context or create-project. Example: [\"11111111-1111-4111-8111-111111111111\"]. Projects you cannot access are left out.","items":{"minLength":1,"type":"string"},"maxItems":20,"minItems":1,"type":"array"}},"required":["ids"],"type":"object"},"name":"get-project-state"},{"description":"Read a project source or creation by its studocu:// id (from get-project-state, add-document-sources, write-artifact, or request-creation). File and image sources also return the image when a viewable copy, or an original upload under 5 MB, exists.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"artifact_id":{"description":"Id shaped like studocu://project/{project_id}/{kind}/{uuid}. kind is source (a project source) or creation (a quiz, mock exam, note, flashcard set, or lesson). Example: studocu://project/11111111-1111-4111-8111-111111111111/source/22222222-2222-4222-8222-222222222222.","minLength":1,"type":"string"},"cursor":{"description":"Token from a previous read when the result said there is more, for long content. Omit on the first read. Pass it back unchanged with the same artifact_id.","minLength":1,"type":"string"}},"required":["artifact_id"],"type":"object"},"name":"read-artifact"},{"description":"Read the text of a Studocu document by its search-documents id, without adding it to a project.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"document_id":{"description":"Positive integer id from search-documents (documents[].id). Example: 17.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["document_id"],"type":"object"},"name":"read-detached-document"},{"description":"Read memories saved for this signed-in learner: one per scope and kind.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"kind":{"description":"Return only this kind. Example: \"study_preference\". Omit to return every saved memory in the chosen scope.","minLength":1,"type":"string"},"project_id":{"anyOf":[{"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"},{"type":"null"}],"description":"UUID of the project, or null. Example: 11111111-1111-4111-8111-111111111111. Required when scope is project or both. Omit or null for learner-wide memories. Ignored when scope is global."},"scope":{"description":"Which memories to read: global (learner-wide), project (one project), or both. If omitted, the scope is both when project_id is a UUID, otherwise global.","enum":["global","project","both"],"type":"string"}},"type":"object"},"name":"read-memory"},{"description":"Ask Studocu to generate a quiz or mock exam from 1 to 10 project sources. Can take about 3 minutes. If status is creating or outcome_unknown, check get-project-state before calling again.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"artifact_ids":{"description":"1 to 10 different project source ids to generate from. Each id looks like studocu://project/{project_id}/source/{uuid} and must belong to project_id. Get them from add-document-sources or get-project-state. Do not pass creation ids.","items":{"minLength":1,"type":"string"},"maxItems":10,"minItems":1,"type":"array"},"idempotency_key":{"description":"Optional retry key, 1-256 characters. Send the same key when you retry the same request. A different request body with a used key is rejected. Omit to let Studocu derive a key from the request; identical retries still count as the same request.","maxLength":256,"minLength":1,"type":"string"},"instruction":{"description":"Optional hint, 1-6000 characters. Example: \"focus on chapter 3\". Omit for a general quiz or mock exam.","maxLength":6000,"minLength":1,"type":"string"},"project_id":{"description":"UUID of the project that owns the project sources. Example: 11111111-1111-4111-8111-111111111111. From create-project or get-context.","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"},"type":{"description":"What to generate: quiz or mockExam.","enum":["quiz","mockExam"],"type":"string"}},"required":["project_id","type","artifact_ids"],"type":"object"},"name":"request-creation"},{"description":"Find a course on Studocu by name or code, to get its course_id for search-documents, get-course-syllabus, or get-course-mastery. Pass institution_id from search-institutions when you know the school. Show the user the name, code, and school, not the id. If several results are plausible, ask the user to pick.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"institution_id":{"description":"Numeric school id from search-institutions (the id field). Example: 42. Omit to search every school. Prefer setting it when you already know the school.","exclusiveMinimum":0,"maximum":2147483647,"type":"integer"},"limit":{"default":3,"description":"How many courses to return. Integer from 1 to 10. Default 3.","maximum":10,"minimum":1,"type":"integer"},"query":{"description":"Course name or code, 1-200 characters after trimming. Example: \"ECON101\" or \"Introduction to Psychology\".","maxLength":200,"minLength":1,"type":"string"}},"required":["query"],"type":"object"},"name":"search-courses"},{"description":"Find Studocu documents such as lecture notes and summaries. Pass topic keywords as query. Prefer numeric course_id from search-courses; it overrides course and institution. Results with match_type: semantic are closest matches, not exact keyword hits, and may be only loosely related.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"course":{"description":"Course name or code. Example: \"Economics\" or \"ECON101\". Use this when you do not have course_id. Do not put a numeric id here. Optional extra when you already have course_id. Omit if unknown.","type":"string"},"course_id":{"description":"Numeric course id from search-courses (the course_id field). Example: 1581710. Prefer this: it pins the course and overrides the course name or code. Omit if you only have a name or code.","exclusiveMinimum":0,"maximum":2147483647,"type":"integer"},"institution":{"description":"School name only. Example: \"University of Amsterdam\". Not an id. This tool has no institution_id. Use the name from the user or from search-institutions. Omit if unknown. If course_id is also set, course_id wins and the result school is that course's school, not this name.","type":"string"},"limit":{"default":10,"description":"How many Studocu documents to return. Integer from 1 to 50. Default 10.","maximum":50,"minimum":1,"type":"integer"},"query":{"description":"Topic keywords only. Example: \"supply and demand\" or \"microeconomics midterm 2025\". Do not put a course name, course id, or school name here. Use institution, course, and course_id for those.","minLength":1,"type":"string"},"use_no_course_as_fallback":{"description":"Only used with course_id. When true and that course has no matching Studocu documents, search again without the course, so results may come from other courses. Check each result's course_id. Default false. Omit for false.","type":"boolean"}},"required":["query"],"type":"object"},"name":"search-documents"},{"description":"Find a school (university or high school) on Studocu by name, to get its id for search-courses. Show the user the name, type, and country, not the id. If several results are plausible, ask the user to pick.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"limit":{"default":3,"description":"How many schools to return. Integer from 1 to 10. Default 3.","maximum":10,"minimum":1,"type":"integer"},"query":{"description":"School name to search, 1-200 characters after trimming. Example: \"University of Amsterdam\".","maxLength":200,"minLength":1,"type":"string"},"type":{"description":"Optional filter: UNIVERSITY or HIGH_SCHOOL. Omit to search both.","enum":["UNIVERSITY","HIGH_SCHOOL"],"type":"string"}},"required":["query"],"type":"object"},"name":"search-institutions"},{"description":"Change the name, icon, or linked course of an existing project. Pass course_id null to unlink the course.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","additionalProperties":false,"anyOf":[{"required":["title"]},{"required":["emoji"]},{"required":["course_id"]}],"minProperties":2,"properties":{"course_id":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Positive integer course id from search-courses, or null to unlink the course. Example: 1581710. Omit to leave the link unchanged."},"emoji":{"description":"New icon text, usually an emoji. Example: \"📚\". Omit to leave it unchanged.","minLength":1,"type":"string"},"project_id":{"description":"UUID of the project to change. Example: 11111111-1111-4111-8111-111111111111. From create-project or get-context.","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"},"title":{"description":"New name, 1-255 characters, with at least one non-space character. Example: \"Biology midterm\". Omit to leave the name unchanged.","maxLength":255,"minLength":1,"pattern":"\\S","type":"string"}},"required":["project_id"],"type":"object"},"name":"update-project"},{"description":"Save a quiz, mock exam, note, or flashcard set you have already written into a project. To have Studocu generate a quiz or mock exam instead, use request-creation.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"artifact":{"description":"The creation to save. type is quiz, mockExam, note, or flashcard. Each type has its own content shape. kind must be creation.","oneOf":[{"additionalProperties":false,"properties":{"content":{"additionalProperties":false,"description":"Quiz content.","properties":{"course_id":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"questions":{"items":{"additionalProperties":false,"properties":{"answers":{"items":{"additionalProperties":false,"properties":{"answer":{"description":"Answer option text.","minLength":1,"type":"string"},"is_correct":{"description":"True for the correct option or options.","type":"boolean"}},"required":["answer","is_correct"],"type":"object"},"minItems":2,"type":"array"},"difficulty":{"enum":["EASY","MEDIUM","HARD"],"type":"string"},"explanation":{"description":"Why the correct answer is right. Required. 1-255 characters.","maxLength":255,"minLength":1,"type":"string"},"question":{"description":"Question prompt shown to the learner.","minLength":1,"type":"string"}},"required":["question","answers","explanation"],"type":"object"},"minItems":1,"type":"array"}},"required":["questions"],"type":"object"},"description":{"description":"Optional short description of the creation (quiz, mock exam, or flashcard set). The note type does not have this field.","minLength":1,"type":"string"},"kind":{"const":"creation","description":"Must be the string creation. A project source cannot be written with this tool.","type":"string"},"title":{"description":"Quiz title shown to the learner. 20-255 characters.","maxLength":255,"minLength":20,"type":"string"},"type":{"const":"quiz","type":"string"}},"required":["kind","title","type","content"],"type":"object"},{"additionalProperties":false,"properties":{"content":{"additionalProperties":false,"description":"Mock exam content.","properties":{"exam_json":{"additionalProperties":false,"properties":{"content":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"instructions":{"minLength":1,"type":"string"},"kind":{"const":"section","type":"string"},"question_type":{"description":"Question type: mcq, multi_select, true_false, fill_in_blank, text_answer_short, or text_answer_long. Use mcq, not multiple_choice.","enum":["mcq","multi_select","true_false","fill_in_blank","text_answer_short","text_answer_long"],"type":"string"},"title":{"minLength":1,"type":"string"}},"required":["kind","id","question_type"],"type":"object"},{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"kind":{"const":"stimulus","type":"string"},"stimulus_markdown":{"minLength":1,"type":"string"},"title":{"minLength":1,"type":"string"}},"required":["kind","id","stimulus_markdown"],"type":"object"},{"oneOf":[{"additionalProperties":false,"properties":{"grading":{"additionalProperties":false,"properties":{"correct_answer":{"type":"string"},"correct_answer_ids":{"items":{"minLength":1,"type":"string"},"type":"array"},"key_points":{"items":{"minLength":1,"type":"string"},"type":"array"},"model_answer":{"minLength":1,"type":"string"}},"required":["model_answer"],"type":"object"},"id":{"minLength":1,"type":"string"},"kind":{"const":"question","type":"string"},"marks":{"minimum":0,"type":"number"},"options":{"items":{"additionalProperties":false,"properties":{"id":{"description":"Stable option id.","minLength":1,"type":"string"},"text":{"description":"Option text.","minLength":1,"type":"string"}},"required":["id","text"],"type":"object"},"minItems":2,"type":"array"},"question_markdown":{"minLength":1,"type":"string"},"section_id":{"minLength":1,"type":"string"},"stimulus_id_refs":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"topics":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"type":{"enum":["mcq","multi_select","true_false"],"type":"string"}},"required":["kind","id","section_id","type","marks","question_markdown","options"],"type":"object"},{"additionalProperties":false,"properties":{"blanks":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"label":{"type":"string"}},"required":["id"],"type":"object"},"type":"array"},"grading":{"additionalProperties":false,"properties":{"correct_answer":{"type":"string"},"correct_answer_ids":{"items":{"minLength":1,"type":"string"},"type":"array"},"key_points":{"items":{"minLength":1,"type":"string"},"type":"array"},"model_answer":{"minLength":1,"type":"string"}},"required":["model_answer"],"type":"object"},"id":{"minLength":1,"type":"string"},"kind":{"const":"question","type":"string"},"marks":{"minimum":0,"type":"number"},"question_markdown":{"minLength":1,"type":"string"},"section_id":{"minLength":1,"type":"string"},"stimulus_id_refs":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"template_markdown":{"anyOf":[{"type":"string"},{"type":"null"}]},"topics":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"type":{"const":"fill_in_blank","type":"string"}},"required":["kind","id","section_id","type","marks","question_markdown"],"type":"object"},{"additionalProperties":false,"properties":{"grading":{"additionalProperties":false,"properties":{"correct_answer":{"type":"string"},"correct_answer_ids":{"items":{"minLength":1,"type":"string"},"type":"array"},"key_points":{"items":{"minLength":1,"type":"string"},"type":"array"},"model_answer":{"minLength":1,"type":"string"}},"required":["model_answer"],"type":"object"},"id":{"minLength":1,"type":"string"},"kind":{"const":"question","type":"string"},"marks":{"minimum":0,"type":"number"},"question_markdown":{"minLength":1,"type":"string"},"section_id":{"minLength":1,"type":"string"},"stimulus_id_refs":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"topics":{"anyOf":[{"items":{"minLength":1,"type":"string"},"type":"array"},{"type":"null"}]},"type":{"enum":["text_answer_short","text_answer_long"],"type":"string"}},"required":["kind","id","section_id","type","marks","question_markdown"],"type":"object"}]}]},"minItems":1,"type":"array"},"front_matter":{"additionalProperties":false,"properties":{"instructions_markdown":{"type":"string"}},"type":"object"},"schema_version":{"const":"0.8","type":"string"},"title":{"minLength":1,"type":"string"}},"required":["schema_version","title","content"],"type":"object"}},"required":["exam_json"],"type":"object"},"description":{"description":"Optional short description of the creation (quiz, mock exam, or flashcard set). The note type does not have this field.","minLength":1,"type":"string"},"kind":{"const":"creation","description":"Must be the string creation. A project source cannot be written with this tool.","type":"string"},"title":{"description":"Title shown to the learner. At least 1 character.","minLength":1,"type":"string"},"type":{"const":"mockExam","type":"string"}},"required":["kind","title","type","content"],"type":"object"},{"additionalProperties":false,"properties":{"content":{"additionalProperties":false,"description":"Note content.","properties":{"html":{"description":"Complete HTML document for the note body (max 1 MiB UTF-8).","minLength":1,"type":"string"}},"required":["html"],"type":"object"},"kind":{"const":"creation","description":"Must be the string creation. A project source cannot be written with this tool.","type":"string"},"title":{"description":"Note title. 1-255 characters.","maxLength":255,"minLength":1,"type":"string"},"type":{"const":"note","type":"string"}},"required":["kind","title","type","content"],"type":"object"},{"additionalProperties":false,"properties":{"content":{"additionalProperties":false,"description":"Flashcard set content.","properties":{"flashcards_json":{"additionalProperties":false,"properties":{"description":{"type":"string"},"flashcards":{"items":{"additionalProperties":false,"properties":{"back":{"minLength":1,"type":"string"},"front":{"minLength":1,"type":"string"}},"required":["front","back"],"type":"object"},"maxItems":200,"minItems":1,"type":"array"},"title":{"minLength":1,"type":"string"}},"required":["title","description","flashcards"],"type":"object"}},"required":["flashcards_json"],"type":"object"},"description":{"description":"Optional short description of the creation (quiz, mock exam, or flashcard set). The note type does not have this field.","minLength":1,"type":"string"},"kind":{"const":"creation","description":"Must be the string creation. A project source cannot be written with this tool.","type":"string"},"title":{"description":"Title shown to the learner. At least 1 character.","minLength":1,"type":"string"},"type":{"const":"flashcard","type":"string"}},"required":["kind","title","type","content"],"type":"object"}]},"project_id":{"description":"UUID of the project that will own the creation. Example: 11111111-1111-4111-8111-111111111111. From create-project or get-context.","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":["project_id","artifact"],"type":"object"},"name":"write-artifact"},{"description":"Save one memory (a preference or project fact) for this learner. Writing the same kind again replaces it.","inputSchema":{"$schema":"http://json-schema.org/draft-07/schema#","properties":{"kind":{"description":"Kind for this memory. At least 1 character. Example: \"study_preference\" or \"project_learning_context\". Writing the same kind again replaces the previous memory.","minLength":1,"type":"string"},"project_id":{"anyOf":[{"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"},{"type":"null"}],"description":"UUID of the project this memory belongs to, or null. Example: 11111111-1111-4111-8111-111111111111. Omit or null to store a learner-wide memory."},"value":{"additionalProperties":{},"description":"JSON object to store. Usual shape: { \"content\": \"the memory text\" }. Other keys are allowed.","propertyNames":{"type":"string"},"type":"object"}},"required":["kind","value"],"type":"object"},"name":"write-memory"}]},"body_sha256":"ce8dee295d743bd4f9ca5589858ab78c3257c816dc7182d903dff069a617eccd","prev_id":559427,"leaf":"0xab931035657dc51bfc9af92072bd400439aecb6d6b4c7919924eac67f0ebd770","leaf_text":"{\"body\":\"ce8dee295d743bd4f9ca5589858ab78c3257c816dc7182d903dff069a617eccd\",\"id\":1288805,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793393483691010,\"prev\":559427,\"subject\":\"58c608f6-76aa-4c70-83ca-5b5b28b5097b\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-30","leaves":243099,"root":"0x0826c7ad6039e06a2360ca0a4a3a4fe7f2626c6dc19f71a37599386f78b39875","chained":"0x36b4c8a1063758f0b8765fa1bdf75fa92fb543cc183add3e261880ee2bd1f822","anchor_chain":"eip155:5042002","anchor_tx":"0x8704744146c6967c8abc9e9a99de4db7283b29e840922ea83a69b6fe776e6861","anchor_block":69923247},"proof":["0xab93d9e772b9e19bcfac5333bb3228079f21ffa6f3f011806511e6d086bdd33c","0x702f1803e0d3233bc884d1ea38aea3c8e11c4987c3c7da4bb5272e50eb00a24f","0x50a932e25af98a8943979dca5c913a79aac4d6f4a53974ef78867ab1edd4f815","0x244dc588e3ae112756d0c467a0ed1d9bab8a86b5b83e16d4b5893a7485d47cfc","0xfddc44167b6249decd882c94110fb02101ca9f4f6a6c226d254d49626658bfb9","0xf19ff7c4cca1263a55dea9bd12314927b732b13d2c2a890f33a43d1d300d1af2","0x9b0df08919c1d62538c36b1d6c420c739cee4cf14e010b7dd04e6fd0c8f6ec54","0xc305572a81d6134cec8627a8d5d785501b90dd7aa6462f6e9bf9ff17474fe884","0x1672cc8df2ae32422ba8e2e5f7bddaedd3b8c69c76c705af9fac65dfd43a5d9c","0x02779f84ad8fd46b10e31c31747cb72632ef2f23daf8e93bce5743d08fdab4e8","0xb3bb958e6a6e739f135cc668ae011c38524a65814b00f11a837d521bd40fabe3","0x76e57d82df41a8444f66943c853bf0ce1a262f9c2e19695e3f9c368cff55d095","0x9889bd73e5603fc0045beeec785a4e7b83076b3dca643ee2497b1d068fa8e3fc","0xe11a711cdcc033b4d3ff4f10f0568bda761703429a7ddfbf68a7fbd1d22911ff","0x11b43ed362a2fd4976e11eceb94ee4b7edbaf6823474ee1c36489f8f0a0496c4","0x835211170e79bdce1a823ec914e3532e128f77751e9074286da35091b0200284","0x61ef83255d34604cb052882568ca1d1386ac3cfb8284509715bc1734cff77831","0x0c43c73b62a5d49ee1444b5dc4195fc5b16b141d3f4458e2e9fbd5fd6ecb367d"]}