Skip to main content
Glama
evalor
by evalor

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DIDA365_REGIONNoRegion: 'china' for Dida365 or 'international' for TickTickchina
DIDA365_CLIENT_IDYesOAuth Client ID for TickTick/Dida365
DIDA365_CLIENT_SECRETYesOAuth Client Secret for TickTick/Dida365

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_auth_urlA

Use ONLY when a Dida365 MCP tool (task/project operations) fails with an authorization/OAuth error (e.g. missing, expired, or invalid token), or the user explicitly asks to start/redo Dida365 authorization. Not for generic OAuth of other services. Provides a URL (≈10 min) to open in a browser; starts a local callback server to capture the authorization code.

check_auth_statusA

Use when the user asks about being authorized (e.g. 'am I authorized', 'auth status', 'check auth'), or when deciding whether protected Dida365 operations can proceed and current state is unclear. Avoid repeated calls if status already known in the current conversation turn. Restricted to Dida365 MCP authorization context only.

revoke_authA

Use ONLY when the user explicitly requests to log out, revoke, reset, clear, or remove Dida365 authorization/tokens, OR to cancel a pending authorization that cannot be completed. Do NOT call for token refresh, generic OAuth logout of other services, or routine task operations. Clears stored tokens and stops any running authorization server; user must re-authorize afterward.

list_projectsA

Retrieve all projects (清单/folders/lists) for the current user.

WHEN TO USE:

  • Get an overview of all projects (查看所有清单)

  • Find a project ID before operating on tasks (查找清单ID)

  • Check project names (名称), colors (颜色), and view modes (视图模式)

RETURNS: Project list with id, name (名称), color (颜色), viewMode (视图模式), permissions, kind (TASK=任务清单/NOTE=笔记清单).

💡 TIP: After getting the project list, use 'list_tasks' with projectId to get tasks, or 'get_project_data' for complete project data including tasks.

get_projectA

Retrieve metadata for a single project (清单) by ID.

WHEN TO USE:

  • Check project settings (name/名称, color/颜色, viewMode/视图模式, permissions)

  • Verify a project exists before operations

  • Get project metadata without loading tasks

WHEN NOT TO USE:

  • Need tasks within the project (清单内的任务) → use 'get_project_data' or 'list_tasks'

  • Need to filter tasks by date/priority (按日期/优先级筛选) → use 'list_tasks'

RETURNS: Project metadata only (id, name/名称, color/颜色, viewMode/视图模式, kind/类型, permissions). Does NOT include tasks.

get_project_dataA

Retrieve complete project (清单) data including project details, tasks (任务), and kanban columns (看板列).

WHEN TO USE:

  • Get all uncompleted tasks (未完成任务) within a specific project (清单)

  • Need project metadata AND tasks together

  • View kanban column structure (看板列结构) for kanban-view projects

WHEN NOT TO USE:

  • Only need project metadata → use 'get_project' (faster)

  • Filter tasks by date/priority/across projects (按日期/优先级筛选) → use 'list_tasks'

  • Need completed tasks (已完成任务) → NOT available via API

⚠️ LIMITATION: Only returns UNCOMPLETED tasks (未完成任务, status=0). Completed tasks are not accessible.

RETURNS: { project, tasks[], columns[] } - project metadata (清单信息), task list (任务列表), and kanban columns (看板列).

create_projectA

Create a new project (清单/folder/list) for organizing tasks (任务).

WHEN TO USE:

  • User wants to create a new task list (新建清单), folder, or project

  • Organizing tasks into categories or areas (分类整理任务)

REQUIRED: name (project title/清单名称)

OPTIONAL:

  • color: Hex color code (颜色, e.g., '#F18181')

  • viewMode: 'list' (列表, default), 'kanban' (看板), or 'timeline' (时间线)

  • kind: 'TASK' (任务清单, default) for tasks, 'NOTE' (笔记清单) for notes

  • sortOrder: Position in project list (排序位置)

RETURNS: Created project with generated ID. Use this ID for subsequent task operations.

update_projectA

Update an existing project's (清单) settings.

WHEN TO USE:

  • Rename a project (重命名清单)

  • Change project color (颜色), view mode (视图模式), or type (类型)

  • Reorder projects in the list (调整清单顺序)

PARTIAL UPDATE: Only provide fields you want to change. Unspecified fields remain unchanged.

REQUIRED: projectId (清单ID)

OPTIONAL (at least one required):

  • name: New project name (新名称)

  • color: New hex color (新颜色, e.g., '#F18181')

  • viewMode: 'list' (列表), 'kanban' (看板), or 'timeline' (时间线)

  • kind: 'TASK' (任务清单) or 'NOTE' (笔记清单)

  • sortOrder: New position in project list (新排序位置)

delete_projectA

Permanently delete a project (清单) and all its contents.

⚠️ DESTRUCTIVE: This action cannot be undone. All tasks (任务) within the project will also be deleted (此操作无法撤销,清单内所有任务也将被删除).

WHEN TO USE:

  • User explicitly requests to delete a project (删除清单)

  • Cleaning up unused/empty projects

WHEN NOT TO USE:

  • Just archiving or hiding a project (not supported)

  • Moving tasks to another project first (移动任务) → use 'update_task'

REQUIRED: projectId (清单ID)

get_taskA

Retrieve detailed information about a specific task (任务).

WHEN TO USE:

  • View complete task details (title/标题, description/描述, dates/日期, priority/优先级)

  • Check task status before updating or completing

  • Verify a task exists

WHEN NOT TO USE:

  • List multiple tasks → use 'list_tasks'

  • Get all tasks in a project (清单) → use 'get_project_data' or 'list_tasks'

REQUIRED: projectId (清单ID), taskId (任务ID)

RESPONSE FIELDS:

  • content: Description for TEXT tasks (no sub-tasks)

  • desc: Description for CHECKLIST tasks (with sub-tasks/子任务)

  • kind: "TEXT" or "CHECKLIST"

  • items: Sub-task list (子任务列表, CHECKLIST only)

NOTE: When creating/updating, use unified 'description' parameter which auto-maps to the correct field.

list_tasksA

List and filter tasks (任务) across one or more projects (清单).

WHEN TO USE:

  • Find tasks due today (今天的任务), this week (本周任务), or overdue (逾期任务)

  • Filter tasks by priority (优先级) or date range (日期范围)

  • Search tasks across multiple projects (清单) or inbox (收集箱)

  • Get a filtered subset of tasks

WHEN NOT TO USE:

  • Need all tasks in one project without filtering → use 'get_project_data'

  • Need a single specific task → use 'get_task'

QUICK FILTERS (preset 快速筛选):

  • "today": Tasks due today (今天的任务)

  • "tomorrow": Tasks due tomorrow (明天的任务)

  • "thisWeek": Tasks due this week (本周任务)

  • "overdue": Past-due tasks (逾期任务)

OPTIONAL FILTERS:

  • projectId: Single ID, array of IDs, or "inbox" (收集箱) (omit for all projects/所有清单)

  • dueDateFrom/dueDateTo: Custom date range (自定义日期范围, ISO 8601)

  • priority: [0=none (无), 1=low (低), 3=medium (中), 5=high (高)]

SORTING:

  • sortBy: "dueDate" (截止日期, default), "priority" (优先级), "createdTime" (创建时间)

  • sortOrder: "asc" (升序, default), "desc" (降序)

⚠️ LIMITATION: Only returns UNCOMPLETED tasks (未完成任务, status=0). Completed tasks not available.

EXAMPLES:

  • Today's tasks (今天的任务): { "preset": "today" }

  • High priority from inbox (收集箱高优先级): { "projectId": "inbox", "priority": [5] }

create_taskA

Create one or more tasks (任务) in a project (清单). Supports batch creation.

WHEN TO USE:

  • Add new tasks to a project or inbox (收集箱)

  • Create tasks with due dates (截止日期), priorities (优先级), reminders (提醒)

  • Create tasks with sub-tasks (子任务/检查项)

⚠️ IMPORTANT - INBOX VS PROJECT (收集箱与清单选择): The inbox (收集箱) is ONLY for tasks temporarily inconvenient to classify.

  • Use a specific PROJECT when: user mentions a project name (e.g., "工作清单", "学习清单"), or context clearly indicates which project the task belongs to

  • Use "inbox" ONLY when: user explicitly says "收集箱"/"inbox", OR user doesn't specify any project AND the task has no clear category

  • DO NOT arbitrarily place tasks in inbox when a project can be identified from context

REQUIRED (per task):

  • title: Task name (任务标题)

  • projectId: Target project ID (清单ID), or "inbox" for inbox (收集箱) - see above for when to use each

OPTIONAL (per task):

  • description: Task notes (任务备注, auto-maps to correct field)

  • dueDate: ISO 8601 format (截止日期, e.g., "2025-11-25T17:00:00+0800")

  • startDate: ISO 8601 format (开始日期)

  • priority: 0=none (无), 1=low (低), 3=medium (中), 5=high (高)

  • isAllDay: true for all-day tasks (全天任务)

  • timeZone: e.g., "America/Los_Angeles"

  • reminders: ["TRIGGER:PT0S"] (at due time), ["TRIGGER:-PT30M"] (30min before)

  • repeatFlag: "RRULE:FREQ=DAILY;INTERVAL=1" for recurring tasks (重复任务)

  • items: Sub-task array (子任务列表) [{title, status: 0|1}] - creates CHECKLIST type

INPUT FORMAT: { "tasks": [{ "title": "...", "projectId": "..." }, ...] }

⚠️ INBOX NOTE: When using "inbox" (收集箱), returned tasks have projectId like "inbox1023997016". Use this actual ID for update/delete/complete operations.

BATCH BEHAVIOR: Non-atomic - some may succeed while others fail. Check summary.failed > 0 for failures.

update_taskA

Update one or more existing tasks (任务). Supports batch updates.

WHEN TO USE:

  • Modify task title (标题), description (描述), dates (日期), or priority (优先级)

  • Change due date (截止日期) or add reminders (提醒)

  • Add/update sub-tasks (子任务/检查项)

  • Reschedule or reprioritize tasks

REQUIRED (per task):

  • taskId: Task to update (任务ID)

  • projectId: Project containing the task (清单ID)

OPTIONAL (only provided fields are updated):

  • title: New task title (新标题)

  • description: New notes (新描述, auto-maps to correct field)

  • dueDate: ISO 8601 format (截止日期, e.g., "2025-11-25T17:00:00+0800")

  • startDate: ISO 8601 format (开始日期)

  • priority: 0=none (无), 1=low (低), 3=medium (中), 5=high (高)

  • isAllDay: true for all-day tasks (全天任务)

  • reminders: ["TRIGGER:PT0S"] (提醒)

  • repeatFlag: Recurrence rule (重复规则)

  • items: Sub-task array (子任务列表) [{title, status: 0|1}]

INPUT FORMAT: { "tasks": [{ "taskId": "...", "projectId": "...", ...updates }, ...] }

BATCH BEHAVIOR: Non-atomic - some may succeed while others fail. Check summary.failed > 0.

delete_taskA

Permanently delete one or more tasks (任务). Supports batch deletion.

⚠️ DESTRUCTIVE: This action cannot be undone! (此操作无法撤销!)

WHEN TO USE:

  • User explicitly requests to remove/delete a task (删除任务)

  • Cleaning up unwanted tasks

WHEN NOT TO USE:

  • Complete a task (完成任务) → use 'complete_task'

  • Archive a task (not supported by API)

REQUIRED (per task):

  • projectId: Project containing the task (清单ID)

  • taskId: Task to delete (任务ID)

INPUT FORMAT: { "tasks": [{ "projectId": "...", "taskId": "..." }, ...] }

⚠️ IDEMPOTENT: Deleting a non-existent task returns success. Use 'get_task' first to verify existence if needed.

BATCH BEHAVIOR: Non-atomic - some may succeed while others fail. Check summary.failed > 0.

complete_taskA

Mark one or more tasks (任务) as completed (已完成). Supports batch completion.

WHEN TO USE:

  • User finished a task and wants to mark it done (完成任务)

  • Batch complete multiple related tasks

WHEN NOT TO USE:

  • Delete a task permanently (删除任务) → use 'delete_task'

  • Update other task properties (修改任务) → use 'update_task'

REQUIRED (per task):

  • projectId: Project containing the task (清单ID)

  • taskId: Task to mark complete (任务ID)

INPUT FORMAT: { "tasks": [{ "projectId": "...", "taskId": "..." }, ...] }

⚠️ IDEMPOTENT: Completing an already-completed or non-existent task returns success. Use 'get_task' first to verify if needed.

⚠️ NOTE: Completed tasks (已完成任务) are no longer returned by 'list_tasks' or 'get_project_data'.

BATCH BEHAVIOR: Non-atomic - some may succeed while others fail. Check summary.failed > 0.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
terminologyBilingual terminology glossary (中英术语对照表) for Dida365/TickTick. Provides mappings between English terms (TickTick) and Simplified Chinese terms (滴答清单/Dida365). Read this resource to understand Chinese user requests and map them to the correct tool calls. 当处理中文用户请求时,阅读此资源以理解中文术语与英文参数的对应关系。
icalendar-formatiCalendar (RFC 5545) format reference for Dida365/TickTick reminders and repeat rules. Provides TRIGGER format documentation for the reminders parameter and RRULE format documentation for the repeatFlag parameter. Read this resource when users request reminders (提醒) or repeat rules (重复) to correctly format the parameter values. 当用户请求设置提醒或重复规则时,阅读此资源以正确格式化参数值。

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/evalor/Dida365MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server