mt_batch_execute
ChatGPTExecute up to 150 create/update/destroy operations in a single API call. Each change: { event: "create"|"update"|"destroy", itemType, id?, data? } Item types: Task, Section, Comment, Checklist, ChecklistItem, Label, TaskLabel Temp IDs: every create gets a unique negative temp ID, auto-assigned when omitted. Supply your own (-1, -2...) only to reference the new entity from other changes in the same batch. Positive id required for update/destroy. FIELDS ( = required for create): Task: name, section_id, assigned_to_id, due (ISO 8601), notes, status (open|completed|cancelled|trashed|archived), sequence Section: name, project_id, color, description, sequence, status (active|trashed), indicator, limit Comment: text, task_id — text supports inline @mention tags: <person_id>123</person_id>, <group_id>456</group_id>, <here/> (everyone on task), <all/> (everyone in project). Resolve person IDs via mt_projects_members_list first; a non-member mention rejects the whole comment. Checklist: name, task_id, sequence ChecklistItem: name, checklist_id, checked (boolean), sequence Label: name, color, project_id TaskLabel: task_id, label_id Auto-conversions: due → timestamp, status → integer, checked → integer. Response: idMapping (your temp IDs→real IDs), status ("success"|"partial_success"|"conflict"), pendingChanges, results. results[] follows the sorted order destroy→create→update, not submission order. EXAMPLE: {"event":"create","itemType":"Section","id":-1,"data":{"name":"Sprint 1","project_id":123}} {"event":"create","itemType":"Task","id":-2,"data":{"name":"Design API","section_id":-1}} {"event":"create","itemType":"Task","id":-3,"data":{"name":"Implement API","section_id":-1}}
mt_checklist_items_create
ChatGPTAdd an item to a checklist. Requires numeric checklistId.
mt_checklist_items_delete
ChatGPTDelete a checklist item.
mt_checklist_items_update
ChatGPTUpdate a checklist item. Toggle checked state, rename, move between checklists, or reorder.
mt_checklists_create
ChatGPTCreate a new checklist on a task. Requires numeric taskId.
mt_checklists_list
ChatGPTList all checklists and items on a task. Requires a task token.
mt_labels_create
ChatGPTCreate a new label in a project. Color is a 6-digit hex value such as "FF0000" (red); a leading is accepted.
mt_labels_delete
ChatGPTDelete a label from a project. Removes the label from all tasks where it was attached.
mt_labels_list
ChatGPTList all labels in a project.
mt_labels_update
ChatGPTUpdate a label name or color.
mt_notes_batch_get
ChatGPTGet metadata for multiple notes by tokens. Returns titles, status, and dates — not full block content.
mt_notes_children_list
ChatGPTList direct child notes of a parent note by token. Returns one level of children. If a note's content is empty or minimal, it likely serves as a container; use this tool to discover child notes before concluding it has no useful content.
mt_notes_create
ChatGPTCreate a note from markdown. If parentToken is provided, creates a child note under that parent; otherwise creates a root-level note. Returns the created note token, name, and URL.
mt_notes_delete
ChatGPTMove a note to trash or archive (soft delete, not permanent). Use mt_notes_restore to undo, or mt_notes_list with status TRASH/ARCHIVE to find affected notes.
mt_notes_discussions_create
ChatGPTStart a discussion on a block of a note. The text becomes the discussion's first comment, which MeisterNote shows in the sidebar. Page-level discussions (scopeType NOTE) are rejected. Accepts plain text; for mentions or formatting, pass raw comment content via dataJson.
mt_notes_discussions_list
ChatGPTList discussions on a note, filtered by status (ACTIVE or RESOLVED). Requires the numeric note ID. Each discussion includes its comments.
mt_notes_discussions_resolve
ChatGPTMark a discussion as RESOLVED. Resolved discussions reject new comments, and no tool on this server reopens them.
mt_notes_favorites_list
ChatGPTList the user's favorite (starred) notes with their tokens.
mt_notes_get
ChatGPTGet a single note with markdown content, revisionId, task links, and identifiers needed for follow-up actions. Accepts a note token or a note URL.
mt_notes_groups_list
ChatGPTList note groups (per-person sidebar folders) with id, name, expansion state, and order. Groups are returned without their notes, and no tool lists notes by group; use mt_notes_list or mt_search to find notes.
mt_notes_list
ChatGPTList root-level notes by status. Returns note metadata (name, token, type, dates) but NOT full block content.
mt_notes_move
ChatGPTMove a note under a different parent. Resolves tokens internally and appends after existing children by default.
mt_notes_rename
ChatGPTRename a note without changing its content. Resolves the note token internally before updating the title.
mt_notes_restore
ChatGPTRestore a note from trash or archive back to active status. Use mt_notes_list with status TRASH or ARCHIVE to find notes that can be restored.
mt_notes_update
ChatGPTReplace a note's entire markdown body. This is a full replacement, not a partial update. Requires the latest revisionId for optimistic concurrency; if the revision changed, re-fetch and retry.
mt_notifications_list
ChatGPTGet notifications from MeisterTask. Includes mentions, task updates, note comments, and other activity. Filter by product origin (MT/MN), type (mentions only), or status (unread/all). Supports pagination.
mt_persons_get
ChatGPTResolve one or more person IDs to names and profiles in a single request.
mt_persons_list
ChatGPTList all team members with person IDs, names, and avatars. To resolve specific personIds from discussions, comments, or task assignments, use mt_persons_get.
mt_projects_create
ChatGPTCreate a new MeisterTask project. If sectionNames is omitted, default sections (Open, In Progress, Done) are created.
mt_projects_delete
ChatGPTMove a project to trash. The project remains in the database and can be restored with status ACTIVE. Archiving is a separate status change that keeps the project out of the trash.
mt_projects_documents_create
ChatGPTAdd a web link or a MeisterNote note to a MeisterTask project's Documents tab. Provide projectId and exactly one of url (an http or https address) or noteToken (a note token or note URL, from mt_notes_list or mt_search). The note must be one the user can view. name is optional; a note defaults to its title, which every project member can then see. Linking a note does not give project members access to it. Only project admins can change documents, and a project holds at most 50. Files cannot be added with this tool.
mt_projects_documents_delete
ChatGPTRemove a document (a note, link or file) from a MeisterTask project's Documents tab. This cannot be undone: a removed file is deleted for good, while a removed note stays in MeisterNote and only its place in the project goes. documentId comes from mt_projects_documents_list or mt_projects_get. Only project admins can change documents.
mt_projects_documents_list
ChatGPTList the documents in a MeisterTask project's Documents tab: notes, links and files. Returns each document's id, type, name, link, timestamps and the creator's person ID; notes include their note token, files include file name, content type, size and download URL. Read a note with mt_notes_get and its url or note token. Links point to outside pages this server cannot read. A file's download URL needs the user's MeisterTask login, so give it to the user rather than fetching it. name is null when a link or note has no name of its own; an unnamed file shows its file name. Files attached to tasks are not documents (see mt_tasks_attachments_list), and documents cannot be added or removed with these tools. Provide exactly one of projectId or projectToken.
mt_projects_documents_update
ChatGPTRename a document in a MeisterTask project's Documents tab, change a link's url, or point a note document at a different note with noteToken (a note token or note URL the user can view). Use url only for link documents and noteToken only for note documents; a file document takes only name. A document's type cannot change. documentId comes from mt_projects_documents_list or mt_projects_get. Only project admins can change documents.
mt_projects_get
ChatGPTGet a MeisterTask project by ID or token with sections, metadata and a summary of its documents (notes, links and files). Provide exactly one of id or token.
mt_projects_invite
ChatGPTInvite an individual user to a project by email. Sends an invitation; use mt_projects_members_add for Groups/Teams.
mt_projects_list
ChatGPTList all MeisterTask projects with their sections.
mt_projects_members_add
ChatGPTAdd a Group or Team to a project. For individual users, use mt_projects_invite with an email address — the create_project_membership mutation does not accept individual users.
mt_projects_members_list
ChatGPTList all members, individual access rights, and pending invites for a project. Returns memberships (Groups/Teams), rights (individual users with names), and pending invites (id and role only — not the invited email address).
mt_projects_members_remove
ChatGPTRemove a Group or Team from a project. Requires the membership ID (from mt_projects_members_list), NOT the member/user ID.
mt_projects_update
ChatGPTUpdate a project's properties: name, notes, status (ACTIVE|TRASHED|ARCHIVED), share mode, start/end dates. Does not return sections — use mt_projects_get after update if you need them.
mt_search
ChatGPTSearch across MeisterTask content (tasks, projects, notes, blocks). Returns items with type, token/ID, and URL.
mt_sections_create
ChatGPTCreate a new section (column) in a MeisterTask project. Requires projectId.
mt_sections_delete
ChatGPTMove a section to trash. Any tasks in the section are also trashed. The section can be restored via mt_sections_update by setting status back to "active".
mt_sections_list
ChatGPTList all sections (columns) in a MeisterTask project. Sections represent stages like To Do, In Progress, Done.
mt_sections_update
ChatGPTUpdate a section's status, name, color, WIP limit, ordering, indicator, or description. Setting status to 'trashed' moves the section and its tasks to trash; setting it to 'active' restores the section.
mt_tasks_activities_list
ChatGPTList recent activities on a task including comments, attachment changes, and checklist updates. Provide either taskId (numeric) or taskToken. Supports pagination.
mt_tasks_attachments_create_external
ChatGPTAttach an external URL to a task as a link reference without uploading or fetching its contents. Accepts any valid URL and optional display name and MIME contentType. Provide either taskId (numeric) or taskToken.
mt_tasks_attachments_delete
ChatGPTDelete an attachment from a task.
mt_tasks_attachments_list
ChatGPTList all attachments on a task. Provide either taskId (numeric) or taskToken.
mt_tasks_attachments_upload
ChatGPTUpload a file attachment to a task. Provide either taskId (numeric) or taskToken. Provide the file via exactly one of: - url — publicly hosted file fetched server-side and stored as an attachment (max 25 MB). - data — base64 obtained programmatically (e.g. reading a local file). Do not transcribe a file from the conversation into base64 because its bytes are unavailable; ask the user to provide a URL or file path. Small files only (~100 KB practical; the remote HTTP transport rejects requests over 1 MB).
mt_tasks_create
ChatGPTCreate a task in a MeisterTask section. Requires sectionId. Returns task with ID, token, and URL.
mt_tasks_delete
ChatGPTMove a task to trash (soft delete, not permanent). Provide either id (numeric) or taskToken. The task remains in the database and can be restored by setting its status to "open".
mt_tasks_duplicate
ChatGPTDuplicate a task, optionally including its subtasks. Provide either id (numeric) or taskToken. The duplicate is created in the same section. Returns the new task with its own ID and token.
mt_tasks_get
ChatGPTGet full task details by token. Supports optional expansions for attachments, checklists, custom fields, and parent project with labels.
mt_tasks_labels_add
ChatGPTAttach a label to a task. Both label and task must belong to the same project. Returns the task_label ID needed for mt_tasks_labels_remove.
mt_tasks_labels_remove
ChatGPTRemove a label from a task. Requires the task_label ID (returned by mt_tasks_labels_add), NOT the label ID.
mt_tasks_list
ChatGPTList active (open or completed) tasks in a MeisterTask project. Requires projectId. Returns tasks with tokens, assignee, section, and labels. Archived, cancelled, and trashed tasks are not included — use mt_tasks_search with a status filter for those. Results are limited (default 200, max 500).
mt_tasks_relationships_create
ChatGPTLink two tasks with a relationship: "blocks", "blocked_by", "duplicate_of", "related_to", "is_child_of" (subtask), or "is_parent_of" (parent). Both tasks must be accessible to the caller.
mt_tasks_relationships_delete
ChatGPTRemove a task relationship by its numeric ID.
mt_tasks_search
ChatGPTSearch tasks across MeisterTask projects using text, status, assignee, project, label, section, and date filters. Supports pagination and returns full task snapshots with project context.
mt_tasks_update
ChatGPTUpdate a task's properties. Provide either id (numeric) or taskToken. Can change name, notes, status (open|completed|cancelled|trashed|archived), assignee, section (to move between columns), or due date.
mt_timeline_items_delete
ChatGPTRemove the timeline item (start/end date bar) from a task without deleting the task itself. Provide either taskId (numeric) or taskToken; the timeline item is resolved from the task.
mt_whoami
ChatGPTGet the current session owner (your identity). Returns your person ID, name, and team. Call it when a request depends on who the caller is: their person ID, name, or team. Clients that read meister://domain-model already have the person ID.
mt_batch_execute
Claudemt_checklist_items_create
Claudemt_checklist_items_delete
Claudemt_checklist_items_update
Claudemt_checklists_create
Claudemt_checklists_list
Claudemt_discussions_create
Claudemt_discussions_list
Claudemt_discussions_resolve
Claudemt_favorites_list
Claudemt_groups_list
Claudemt_labels_create
Claudemt_labels_delete
Claudemt_labels_list
Claudemt_labels_update
Claudemt_notes_batch_get
Claudemt_notes_children_list
Claudemt_notes_create
Claudemt_notes_delete
Claudemt_notes_discussions_create
Claudemt_notes_discussions_list
Claudemt_notes_discussions_resolve
Claudemt_notes_favorites_list
Claudemt_notes_get
Claudemt_notes_groups_list
Claudemt_notes_list
Claudemt_notes_move
Claudemt_notes_rename
Claudemt_notes_restore
Claudemt_notes_update
Claudemt_notifications_list
Claudemt_persons_get
Claudemt_persons_list
Claudemt_projects_create
Claudemt_projects_delete
Claudemt_projects_documents_create
Claudemt_projects_documents_delete
Claudemt_projects_documents_list
Claudemt_projects_documents_update
Claudemt_projects_get
Claudemt_projects_invite
Claudemt_projects_list
Claudemt_projects_members_add
Claudemt_projects_members_list
Claudemt_projects_members_remove
Claudemt_projects_update
Claudemt_search
Claudemt_sections_create
Claudemt_sections_delete
Claudemt_sections_list
Claudemt_sections_update
Claudemt_tasks_activities_list
Claudemt_tasks_attachments_create_external
Claudemt_tasks_attachments_delete
Claudemt_tasks_attachments_list
Claudemt_tasks_attachments_upload
Claudemt_tasks_create
Claudemt_tasks_delete
Claudemt_tasks_duplicate
Claudemt_tasks_get
Claudemt_tasks_labels_add
Claudemt_tasks_labels_remove
Claudemt_tasks_list
Claudemt_tasks_relationships_create
Claudemt_tasks_relationships_delete
Claudemt_tasks_search
Claudemt_tasks_update
Claudemt_timeline_items_delete
Claudemt_whoami
Claude