nworks_task_list
Retrieve and manage task lists from LINE WORKS, filtering by status or category to view pending or all items with pagination support.
Instructions
할 일(TODO) 목록을 조회합니다. '할 일 확인해줘', 'TODO 목록 보여줘', '남은 업무 뭐 있어?' 등의 요청에 사용. User OAuth 인증 필요 (task.read scope)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| categoryId | No | 카테고리 ID (기본: default) | |
| status | No | 필터: TODO 또는 ALL (기본: ALL) | |
| count | No | 페이지당 항목 수 (기본: 50, 최대: 100) | |
| cursor | No | 페이지네이션 커서 | |
| userId | No | 대상 사용자 ID (미지정 시 me) |
Implementation Reference
- src/mcp/tools.ts:638-672 (handler)The implementation of the nworks_task_list tool, which fetches task lists from the API and formats the output for the MCP client.
server.tool( "nworks_task_list", "할 일(TODO) 목록을 조회합니다. '할 일 확인해줘', 'TODO 목록 보여줘', '남은 업무 뭐 있어?' 등의 요청에 사용. User OAuth 인증 필요 (task.read scope)", { categoryId: z.string().optional().describe("카테고리 ID (기본: default)"), status: z.enum(["TODO", "ALL"]).optional().describe("필터: TODO 또는 ALL (기본: ALL)"), count: z.number().optional().describe("페이지당 항목 수 (기본: 50, 최대: 100)"), cursor: z.string().optional().describe("페이지네이션 커서"), userId: z.string().optional().describe("대상 사용자 ID (미지정 시 me)"), }, async ({ categoryId, status, count, cursor, userId }) => { try { const result = await taskApi.listTasks( categoryId ?? "default", userId ?? "me", count ?? 50, cursor, status ?? "ALL" ); const tasks = result.tasks.map((t) => ({ taskId: t.taskId, title: t.title, status: t.status, dueDate: t.dueDate, assignor: t.assignorName ?? t.assignorId, created: t.createdTime, })); return { content: [{ type: "text" as const, text: JSON.stringify({ tasks, count: tasks.length, hasMore: !!result.responseMetaData?.nextCursor, nextCursor: result.responseMetaData?.nextCursor ?? null }) }], }; } catch (err) { return { content: [{ type: "text" as const, text: mcpErrorHint(err, "task.list") }], isError: true, };