Plate
Minimal project management for teams and AI agents.
사용해야 할까요
품질 및 안전성
발견 사항 (3)
- HIGH
- LOWupdate_section에서
- INFOlist_comments에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"mcp": {
"url": "https://plate.to/mcp"
}
}
}원격 엔드포인트
https://plate.to/mcpstreamable-http할 수 있는 일
도구 목록
도구 (28)
🟢list_workspaces
List all Plate workspaces the user is a member of.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"urlId": {
"type": "string"
},
"taskPrefix": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name",
"urlId",
"taskPrefix"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_projects(workspaceId)
List projects in a workspace.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
},
"required": [
"workspaceId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_tasks(projectId, workspaceId, taskPrefix, number, statusId, ...)
List tasks in a project, or look up a specific task by its public number. To resolve a public ID like 'TES-1': pass taskPrefix='TES' and number=1 — the prefix locates the correct workspace automatically (do NOT hardcode workspaceId when the prefix belongs to a different workspace). Alternatively pass workspaceId + number when you are certain of the workspace.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"description": "Project ID. Required unless number is provided.",
"type": "string"
},
"workspaceId": {
"description": "Workspace ID. Use when searching by number and you know the workspace. Ignored when taskPrefix is provided.",
"type": "string"
},
"taskPrefix": {
"description": "Task prefix (e.g. 'TES' from TES-1). When provided with number, the workspace is located by prefix automatically — use this instead of workspaceId when the prefix is known.",
"type": "string"
},
"number": {
"description": "Look up a task by its public number (digits only — e.g. 1 from TES-1). Requires either taskPrefix or workspaceId. projectId is ignored when number is provided.",
"type": "number"
},
"statusId": {
"description": "Filter by status ID",
"type": "string"
},
"listId": {
"description": "Filter by section ID",
"type": "string"
},
"includeCompleted": {
"description": "Include completed tasks (default: false)",
"type": "boolean"
},
"limit": {
"description": "Max number of tasks to return (default: 100, max: 500)",
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"number": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"isCompleted": {
"type": "boolean"
},
"statusId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"assigneeId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"listId": {
"type": "string"
},
"projectId": {
"type": "string"
},
"workspaceId": {
"type": "string"
},
"createdAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"number",
"name",
"isCompleted",
"statusId",
"assigneeId",
"listId",
"projectId",
"workspaceId",
"createdAt"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_sections(projectId)
List sections (columns) in a project.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
}
},
"required": [
"projectId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"order": {
"type": "number"
}
},
"required": [
"id",
"name",
"order"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_task(taskId, workspaceId, number)
Get full details of a task. You can look up by internal taskId OR by public task identifier. To resolve a public ID like 'TES-1' or 'SCD-409', pass it as taskId — the prefix is used to find the correct workspace automatically. Alternatively, pass workspaceId + number (digits only).
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"description": "Internal task ID OR full public task identifier (e.g. 'TES-1', 'SCD-409'). When a prefixed ID is passed, the prefix is used to locate the correct workspace automatically.",
"type": "string"
},
"workspaceId": {
"description": "Workspace ID. Used when looking up by number without a prefix.",
"type": "string"
},
"number": {
"description": "Public task number (digits only — e.g. 409 from SCD-409). Requires workspaceId unless taskId contains the prefix.",
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"number": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"isCompleted": {
"type": "boolean"
},
"statusId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"assigneeId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"listId": {
"type": "string"
},
"projectId": {
"type": "string"
},
"workspaceId": {
"type": "string"
},
"createdAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"description": {},
"descriptionText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Description converted to Markdown — use this for reading and displaying the description."
},
"labels": {
"type": "array",
"items": {}
},
"ownerId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"number",
"name",
"isCompleted",
"statusId",
"assigneeId",
"listId",
"projectId",
"workspaceId",
"createdAt",
"description",
"descriptionText",
"labels",
"ownerId"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_comments(taskId)
List a task's comments, oldest first. The taskId is the internal document ID from list_tasks — NOT the public SCD-XXX number.
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID (from list_tasks `id` field, not the public SCD-XXX number)"
}
},
"required": [
"taskId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"authorId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"content": {},
"contentText": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Comment converted to Markdown — use this for reading and displaying the comment."
},
"createdAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"authorId",
"content",
"contentText",
"createdAt"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_members(workspaceId)
List workspace members with their userId, name, email, and role. Use userId as assigneeId when creating or updating tasks.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
},
"required": [
"workspaceId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"userId": {
"type": "string"
},
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"role": {
"type": "string"
}
},
"required": [
"userId",
"name",
"email",
"role"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_activity(workspaceId, from, to, actorId, type, ...)
List task activity history (status changes, assignments, moves, etc.) over a time range. Use it for time-based questions like which tasks were completed last week or what someone did. Filters: from/to (ISO 8601 dates), actorId (who made the change — get userIds from list_members), type ('task_status_changed', or 'completed' for transitions into a Done status), and projectId. Each row gives the task identifier, the status change, who did it, and the task's owner and assignee.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
},
"from": {
"description": "Start of range, ISO 8601 (e.g. 2026-06-01)",
"type": "string"
},
"to": {
"description": "End of range, ISO 8601",
"type": "string"
},
"actorId": {
"description": "Only changes made by this userId",
"type": "string"
},
"type": {
"description": "Event type, e.g. 'task_status_changed' or 'completed'",
"type": "string"
},
"projectId": {
"description": "Limit to one project",
"type": "string"
},
"limit": {
"description": "Max rows (default 100, max 500)",
"type": "number"
}
},
"required": [
"workspaceId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"at": {
"type": "string"
},
"type": {
"type": "string"
},
"task": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"taskName": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"change": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"completed": {
"type": "boolean"
},
"actor": {
"type": "string"
},
"owner": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"assignee": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"at",
"type",
"task",
"taskName",
"change",
"completed",
"actor",
"owner",
"assignee"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_statuses(workspaceId)
List workflow statuses for a workspace. Use the returned IDs as statusId when creating or updating tasks.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
},
"required": [
"workspaceId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"systemType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"order": {
"type": "number"
}
},
"required": [
"id",
"name",
"color",
"systemType",
"order"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_labels(workspaceId)
List task labels for a workspace. Use the returned IDs (or names) as `labels` when creating or updating tasks.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
},
"required": [
"workspaceId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"order": {
"type": "number"
}
},
"required": [
"id",
"name",
"color",
"order"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_task(projectId, listId, name, statusId, assigneeId, ...)
Create a new task in a project section. Only call this tool when creating a brand-new task that does not yet exist. To change the name, status, assignee, or description of an existing task, call update_task instead. To mark an existing task as done, call complete_task instead. If unsure whether a task already exists, call list_tasks first.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"listId": {
"type": "string",
"description": "Section ID"
},
"name": {
"type": "string",
"description": "Task name"
},
"statusId": {
"description": "Initial status ID",
"type": "string"
},
"assigneeId": {
"description": "Assignee user ID",
"type": "string"
},
"labels": {
"description": "Label IDs or names (from list_labels). Names match case-insensitively. Labels are never created automatically — an unknown one is an error.",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"projectId",
"listId",
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"number": {
"type": "number"
}
},
"required": [
"id",
"number"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_task(taskId, name, statusId, assigneeId, listId, ...)
Update one or more fields on an existing task. Use this instead of create_task when the task already exists. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408). To resolve a public number to an internal ID, call list_tasks with workspaceId + number first.
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID (from list_tasks `id` field, not the public SCD-XXX number)"
},
"name": {
"description": "New task name",
"type": "string"
},
"statusId": {
"description": "New status ID",
"type": "string"
},
"assigneeId": {
"description": "New assignee user ID (null to unassign)",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"listId": {
"description": "Move to a different section (must belong to the same project)",
"type": "string"
},
"description": {
"description": "New description. Supports markdown: # headings, - bullets, 1. numbered lists, **bold**, *italic*, `code`, > blockquote.",
"type": "string"
},
"labels": {
"description": "Replace the task's labels with these IDs or names (from list_labels). Names match case-insensitively; pass [] to clear. This REPLACES the list, it does not append. Labels are never created automatically — an unknown one is an error.",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"taskId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡complete_task(taskId, isCompleted)
Mark an existing task as completed or reopen it. Use this instead of create_task when the task already exists and you only need to change its completion state. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408). To resolve a public number to an internal ID, call list_tasks with workspaceId + number first.
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID (from list_tasks `id` field, not the public SCD-XXX number)"
},
"isCompleted": {
"description": "True to complete, false to reopen (default: true)",
"type": "boolean"
}
},
"required": [
"taskId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"isCompleted": {
"type": "boolean"
}
},
"required": [
"id",
"isCompleted"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴delete_task(taskId)
Permanently delete a task. Comments and attachments are removed automatically. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408).
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID (from list_tasks `id` field, not the public SCD-XXX number)"
}
},
"required": [
"taskId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deleted": {
"type": "boolean",
"const": true
}
},
"required": [
"id",
"deleted"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_project(workspaceId, name, description)
Create a new project in a workspace. If a project with the same name already exists in the workspace, returns the existing project instead of creating a duplicate — check the `created` field in the response to tell the two cases apart.
입력 스키마
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID"
},
"name": {
"type": "string",
"description": "Project name"
},
"description": {
"description": "Project description",
"type": "string"
}
},
"required": [
"workspaceId",
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"defaultListId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"created": {
"type": "boolean",
"description": "true if a new project was created, false if an existing project with this name was returned"
}
},
"required": [
"id",
"defaultListId",
"created"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_project(projectId, name, description)
Rename a project or update its description.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"name": {
"description": "New project name",
"type": "string"
},
"description": {
"description": "New project description (null to clear)",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"projectId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_section(projectId, name)
Create a new section (column) in a project. If a section with the same name already exists in the project, returns the existing section instead of creating a duplicate — check the `created` field in the response to tell the two cases apart.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"name": {
"type": "string",
"description": "Section name"
}
},
"required": [
"projectId",
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"created": {
"type": "boolean",
"description": "true if a new section was created, false if an existing section with this name was returned"
}
},
"required": [
"id",
"created"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_section(sectionId, name)
Rename a section.
입력 스키마
{
"type": "object",
"properties": {
"sectionId": {
"type": "string",
"description": "Section ID"
},
"name": {
"type": "string",
"description": "New section name"
}
},
"required": [
"sectionId",
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴delete_comment(commentId)
Delete a comment from a task.
입력 스키마
{
"type": "object",
"properties": {
"commentId": {
"type": "string",
"description": "Comment ID"
}
},
"required": [
"commentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deleted": {
"type": "boolean",
"const": true
}
},
"required": [
"id",
"deleted"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_comment(taskId, text)
Add a comment to a task. The taskId is the internal document ID from list_tasks — NOT the public task number (e.g. SCD-408).
입력 스키마
{
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID (from list_tasks `id` field, not the public SCD-XXX number)"
},
"text": {
"type": "string",
"description": "Comment text. Supports markdown: # headings, - bullets, 1. numbered lists, **bold**, *italic*, `code`, > blockquote."
}
},
"required": [
"taskId",
"text"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_tasks(projectId, listId, tasks)
Create multiple tasks in a project in one action. Use this instead of calling create_task multiple times when the user asks to create several tasks at once. All tasks are created atomically — if validation fails for any item, nothing is created.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"listId": {
"description": "Default section ID for all tasks (can be overridden per task)",
"type": "string"
},
"tasks": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Task name"
},
"listId": {
"description": "Section ID for this task (overrides default listId)",
"type": "string"
},
"assigneeId": {
"description": "Assignee user ID",
"type": "string"
},
"statusId": {
"description": "Status ID",
"type": "string"
},
"description": {
"description": "Description (markdown)",
"type": "string"
},
"dueDate": {
"description": "Due date (ISO date string)",
"type": "string"
},
"labels": {
"description": "Label IDs or names (from list_labels); names match case-insensitively. Unknown labels are an error — they are never created automatically.",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"name"
]
},
"description": "Tasks to create (1–50)"
}
},
"required": [
"projectId",
"tasks"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"number": {
"type": "number"
},
"name": {
"type": "string"
},
"listId": {
"type": "string"
},
"projectId": {
"type": "string"
},
"workspaceId": {
"type": "string"
}
},
"required": [
"id",
"number",
"name",
"listId",
"projectId",
"workspaceId"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_tasks(tasks)
Update multiple existing tasks in one action. Use this instead of calling update_task multiple times when the user asks to change several tasks at once. All updates are applied atomically.
입력 스키마
{
"type": "object",
"properties": {
"tasks": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID"
},
"name": {
"description": "New task name",
"type": "string"
},
"listId": {
"description": "Move to a different section",
"type": "string"
},
"assigneeId": {
"description": "New assignee user ID (null to unassign)",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"statusId": {
"description": "New status ID",
"type": "string"
},
"description": {
"description": "New description (markdown)",
"type": "string"
},
"dueDate": {
"description": "New due date (ISO date string, null to clear)",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"labels": {
"description": "REPLACE this task's labels with these IDs or names (from list_labels); [] clears them. Unknown labels are an error — they are never created automatically.",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"taskId"
]
},
"description": "Tasks to update (1–50)"
}
},
"required": [
"tasks"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}⚪complete_tasks(taskIds, isCompleted)
Mark multiple tasks as completed in one action. Use this instead of calling complete_task multiple times. Already-completed tasks are left as-is.
입력 스키마
{
"type": "object",
"properties": {
"taskIds": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "string"
},
"description": "Internal task IDs to complete (1–100)"
},
"isCompleted": {
"description": "True to complete, false to reopen (default: true)",
"type": "boolean"
}
},
"required": [
"taskIds"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"isCompleted": {
"type": "boolean"
}
},
"required": [
"id",
"isCompleted"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴delete_tasks(taskIds)
Permanently delete multiple tasks in one action. Use this instead of calling delete_task multiple times. All tasks are validated before any are deleted.
입력 스키마
{
"type": "object",
"properties": {
"taskIds": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "string"
},
"description": "Internal task IDs to delete (1–50)"
}
},
"required": [
"taskIds"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deleted": {
"type": "boolean",
"const": true
}
},
"required": [
"id",
"deleted"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_sections(projectId, sections)
Create multiple sections in a project in one action. Use this instead of calling create_section multiple times.
입력 스키마
{
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"sections": {
"minItems": 1,
"maxItems": 30,
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Section name"
}
},
"required": [
"name"
]
},
"description": "Sections to create (1–30)"
}
},
"required": [
"projectId",
"sections"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"created": {
"type": "boolean"
}
},
"required": [
"id",
"name",
"created"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_sections(sections)
Rename multiple sections in one action. Use this instead of calling update_section multiple times.
입력 스키마
{
"type": "object",
"properties": {
"sections": {
"minItems": 1,
"maxItems": 30,
"type": "array",
"items": {
"type": "object",
"properties": {
"sectionId": {
"type": "string",
"description": "Section ID"
},
"name": {
"type": "string",
"description": "New section name"
}
},
"required": [
"sectionId",
"name"
]
},
"description": "Sections to update (1–30)"
}
},
"required": [
"sections"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡create_comments(comments)
Add multiple comments to tasks in one action. Use this instead of calling create_comment multiple times.
입력 스키마
{
"type": "object",
"properties": {
"comments": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "Internal task ID"
},
"text": {
"type": "string",
"description": "Comment text (markdown supported)"
}
},
"required": [
"taskId",
"text"
]
},
"description": "Comments to create (1–50)"
}
},
"required": [
"comments"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"taskId": {
"type": "string"
}
},
"required": [
"id",
"taskId"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴delete_comments(commentIds)
Delete multiple comments in one action. Use this instead of calling delete_comment multiple times. All comments are validated before any are deleted.
입력 스키마
{
"type": "object",
"properties": {
"commentIds": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "string"
},
"description": "Comment IDs to delete (1–50)"
}
},
"required": [
"commentIds"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deleted": {
"type": "boolean",
"const": true
}
},
"required": [
"id",
"deleted"
],
"additionalProperties": false
}
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}권장 프롬프트
get_taskget_tasklist_workspaceslist_workspaceslist_workspacesget_task커뮤니티
증거