feishu-mcp
Version:
Model Context Protocol server for Feishu integration
111 lines • 4.57 kB
JSON
{
"name": "create_feishu_task",
"description": "Batch creates Feishu tasks or nested subtasks. Pass an array of task items; each item has summary (required), optional description/due/members/repeat_rule/start/mode/is_milestone, optional parentTaskGuid (create under existing task), and optional subTasks (nested subtasks, multi-level). Use open_id from get_feishu_users for assignees. Min 1, max 50 top-level items; max 50 subTasks per level. Returns nested results and path-indexed errors.",
"arguments": {
"type": "object",
"properties": {
"tasks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"parentTaskGuid": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Parent task GUID (optional). When set, creates a subtask under this task; requires edit permission on the parent."
},
"summary": {
"type": "string",
"minLength": 1,
"maxLength": 3000,
"description": "Task title (required). Max 3000 UTF-8 characters."
},
"description": {
"type": "string",
"maxLength": 3000,
"description": "Task description (optional). Max 3000 UTF-8 characters."
},
"dueTimestamp": {
"type": "string",
"description": "Timestamp in milliseconds since 1970-01-01 00:00:00 UTC. Example: \"1675454764000\"."
},
"isDueAllDay": {
"type": "boolean",
"default": false,
"description": "Whether the time is all-day. If true, only the date part of timestamp is used."
},
"completedAt": {
"type": "string",
"description": "Completion timestamp in ms (optional). Omit or \"0\" = unfinished; set to create a completed task."
},
"assigneeIds": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 50,
"description": "Assignee open_ids (optional). Use open_id from get_feishu_users. Max 50."
},
"followerIds": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 50,
"description": "Follower open_ids (optional). Use open_id from get_feishu_users. Max 50."
},
"repeatRule": {
"type": "string",
"maxLength": 1000,
"description": "Recurrence rule (optional). Example: \"FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR\"."
},
"startTimestamp": {
"$ref": "#/properties/tasks/items/properties/dueTimestamp"
},
"isStartAllDay": {
"$ref": "#/properties/tasks/items/properties/isDueAllDay"
},
"mode": {
"type": "number",
"enum": [
1,
2
],
"default": 2,
"description": "Task mode (optional): 1 = all assignees must complete, 2 = any assignee can complete. Default 2."
},
"isMilestone": {
"type": "boolean",
"default": false,
"description": "Whether the task is a milestone (optional). Default false."
},
"subTasks": {
"type": "array",
"items": {
"$ref": "#/properties/tasks/items"
},
"maxItems": 50,
"description": "Nested subtasks (optional). Same shape as parent; supports multi-level nesting. Max 50 per level."
}
},
"required": [
"summary"
],
"additionalProperties": false,
"description": "Task item: summary (required), optional description/due/members/subTasks etc. Use subTasks for nested subtasks."
},
"minItems": 1,
"maxItems": 50,
"description": "Array of tasks to create (required). Each item has summary, description?, parentTaskGuid? (for subtask under existing task), subTasks? (nested subtasks). Min 1, max 50 top-level."
}
},
"required": [
"tasks"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
}