Skip to main content
Glama
jawello
by jawello

TickTick MCP Server -- Полная интеграция TickTick для Claude

License: MIT Version Python Tools Glama

28 инструментов. Полный CRUD. Умные запросы. Многоусловные фильтры. Пакетные операции. Поддержка GTD. Совместимость с Dida365.

Подключите Claude к своему аккаунту TickTick и управляйте всей системой задач через естественный разговор -- создавайте задачи, ищите по проектам, проверяйте просроченное, создавайте элементы пакетно и оставайтесь организованными, не открывая приложение.

"Что просрочено?" --> Мгновенно показывает все пропущенные сроки по всем проектам.


Почему именно этот?

Функция

Этот сервер

Официальный MCP TickTick

jacepark12

Инструменты

28

22

~20

Многоусловный фильтр

Да (приоритет + тег + дата + проект)

Да

Нет

Перемещение задач между проектами

Да

Да

Нет

Массовое завершение

Да (до 20)

Да (до 20)

Нет

Пакетное обновление

Да

Да

Нет

Просмотр выполненных задач

Да

Да

Нет

Поиск по всем проектам

Полнотекстовый поиск

Да

Да

Подзадачи

Да

Нет

Нет

GTD-представление фокуса

Да (высокий приоритет + срок + просроченные)

Нет

Частично

Поддержка Dida365

Да (настраиваемый базовый URL)

Нет

Да

Асинхронность (httpx)

Да

Н/Д

Нет (синхронные запросы)

Валидация Pydantic

Да (типизированные входные данные)

Н/Д

Нет

Аннотации MCP

Да (readOnly, destructive подсказки)

Н/Д

Нет

Самостоятельное размещение / открытый исходный код

Да

Нет (облачный сервис)

Да

Конфиденциальность

100% локально, только ваши токены

Проходит через серверы TickTick

100% локально


Related MCP server: TickTick MCP

Быстрый старт

Предварительные требования

Шаг 1 -- Клонирование и установка

git clone https://github.com/Salen-Project/ticktick-mcp
cd ticktick-mcp
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt

Шаг 2 -- Регистрация приложения разработчика TickTick

  1. Перейдите на developer.ticktick.com

  2. Нажмите New App и укажите любое имя

  3. Установите OAuth Redirect URL на: http://localhost:8080/callback

  4. Скопируйте ваш Client ID и Client Secret

Шаг 3 -- Аутентификация

TICKTICK_CLIENT_ID=your_id TICKTICK_CLIENT_SECRET=your_secret .venv/bin/python3 setup_auth.py

Это откроет ваш браузер для авторизации приложения. Нажмите Allow -- токены сохраняются в ~/.ticktick_mcp/tokens.json и обновляются автоматически.

Шаг 4 -- Регистрация в Claude Code

claude mcp add ticktick \
  -e TICKTICK_CLIENT_ID=your_id \
  -e TICKTICK_CLIENT_SECRET=your_secret \
  -- /path/to/ticktick-mcp/.venv/bin/python3 /path/to/ticktick-mcp/server.py

Для Claude Desktop

Добавьте в ваш claude_desktop_config.json:

{
  "mcpServers": {
    "ticktick": {
      "type": "stdio",
      "command": "/path/to/ticktick-mcp/.venv/bin/python3",
      "args": ["/path/to/ticktick-mcp/server.py"],
      "env": {
        "TICKTICK_CLIENT_ID": "your_id",
        "TICKTICK_CLIENT_SECRET": "your_secret"
      }
    }
  }
}

Шаг 5 -- Добавление навыка продуктивности (необязательно)

mkdir -p ~/.claude/skills/ticktick
cp skills/ticktick/SKILL.md ~/.claude/skills/ticktick/

Поддержка Dida365

Для Dida365 (китайской версии TickTick) установите следующие переменные окружения:

TICKTICK_BASE_URL=https://api.dida365.com/open/v1
TICKTICK_TOKEN_URL=https://dida365.com/oauth/token

Примеры использования

Вы говорите

Что происходит

"Напомни мне позвонить стоматологу в пятницу"

Задача создана с датой выполнения

"Добавь 'review Q1 report' в Work, высокий приоритет"

Задача в проекте Work, приоритет 5

"Что просрочено?"

Показывает все просроченные задачи по проектам

"На чём мне сосредоточиться?"

GTD-представление: высокий приоритет + срок сегодня + просроченные

"Найди что-нибудь о 'бюджете'"

Полнотекстовый поиск по всем проектам

"Покажи все задачи с высоким приоритетом"

Фильтрация по приоритету=5 по всем проектам

"Что должно быть выполнено на этой неделе?"

Задачи со сроком в ближайшие 7 дней

"Создай задачи: купить молоко, позвонить Джону, сдать отчёт"

Пакетное создание 3 задач

"Создай проект под названием 'Планирование отпуска'"

Новый проект создан

"Добавь подзадачу 'Купить солнцезащитный крем' к задаче об отпуске"

Подзадача создана

"Я завершил задачу о стоматологе"

Задача отмечена как выполненная

"Удали старый проект Sprint"

Проект и все задачи удалены


Справочник инструментов MCP

Проекты (5 инструментов)

Инструмент

Описание

ticktick_list_projects

Список всех проектов с ID, названиями, цветами

ticktick_get_project

Получить детали конкретного проекта

ticktick_get_project_with_tasks

Получить детали проекта + все незавершённые задачи одним вызовом

ticktick_create_project

Создать новый проект (название, цвет, режим просмотра)

ticktick_update_project

Обновить название, цвет или режим просмотра проекта

ticktick_delete_project

Безвозвратно удалить проект

Задачи -- базовые операции CRUD (7 инструментов)

Инструмент

Описание

ticktick_list_tasks

Список всех задач в конкретном проекте

ticktick_create_task

Создать задачу (название, срок, приоритет, проект, теги)

ticktick_get_task

Получить полные детали конкретной задачи

ticktick_update_task

Обновить название, содержание, даты или приоритет

ticktick_complete_task

Отметить задачу как выполненную

ticktick_delete_task

Безвозвратно удалить задачу

ticktick_create_subtask

Создать подзадачу внутри родительской задачи

Задачи -- умные запросы (7 инструментов)

Инструмент

Описание

ticktick_get_all_tasks

Получить все задачи по всем активным проектам

ticktick_search_tasks

Полнотекстовый поиск по названиям, содержанию, подзадачам

ticktick_get_tasks_by_priority

Фильтр по приоритету (Нет/Низкий/Средний/Высокий)

ticktick_get_tasks_due_today

Задачи со сроком сегодня по всем проектам

ticktick_get_overdue_tasks

Все просроченные задачи по всем проектам

ticktick_get_tasks_due_this_week

Задачи со сроком в ближайшие 7 дней

ticktick_get_tasks_due_in_days

Задачи со сроком ровно через N дней

Задачи -- пакетные операции и продуктивность (5 инструментов)

Инструмент

Описание

ticktick_batch_create_tasks

Создать несколько задач одновременно

ticktick_batch_update_tasks

Обновить несколько задач одновременно

ticktick_complete_tasks_bulk

Отметить до 20 задач как выполненные одновременно

ticktick_move_task

Переместить задачу из одного проекта в другой

ticktick_get_focus_tasks

GTD-представление фокуса: высокий приоритет + срок сегодня + просроченные

Задачи -- расширенные фильтры (2 инструмента)

Инструмент

Описание

ticktick_filter_tasks

Многоусловный фильтр: приоритет + тег + диапазон дат + проект + статус

ticktick_get_completed_tasks

Просмотр выполненных задач в проекте

Пользователь (1 инструмент)

Инструмент

Описание

ticktick_get_user_preferences

Получить настройки пользователя (часовой пояс, начало недели и т.д.)


Архитектура

ticktick_mcp/server.py # All MCP tools, async httpx, flat tool arguments
server.py              # Thin entry point re-exporting the package
setup_auth.py          # One-time OAuth 2.0 setup (browser-based)
~/.ticktick_mcp/       # Token storage (auto-refreshed)
skills/ticktick/       # Claude skill for natural task language

Проектные решения:

  • Асинхронность везде -- httpx.AsyncClient для неблокирующих API-вызовов

  • Плоские аргументы инструментов -- Annotated[T, Field(...)] для каждого аргумента, а не единый объект params: агенты надёжно генерируют плоские аргументы и часто пропускают обёртку

  • Аннотации MCP -- readOnlyHint, destructiveHint для более безопасного использования инструментов

  • Автоматическое обновление токенов -- Токены обновляются прозрачно с буфером в 60 секунд


Устранение неполадок

"Given client ID does not match" -- Перепроверьте ваш Client ID на developer.ticktick.com.

Порт 8080 уже используется -- lsof -ti:8080 | xargs kill -9 затем повторите попытку.

Срок действия токенов истёк -- Повторно запустите setup_auth.py, чтобы получить новые токены.

Claude не видит инструменты -- Выполните claude mcp list, чтобы проверить регистрацию.


Вклад в проект

Вклад приветствуется! Пожалуйста, сначала откройте issue, чтобы обсудить, что вы хотите изменить.

git clone https://github.com/Salen-Project/ticktick-mcp
cd ticktick-mcp
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
# Make your changes to server.py
# Test: python3 -c "from server import mcp; print(len(mcp._tool_manager._tools), 'tools')"

Ссылки


Лицензия

MIT (c) Salen-Project

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/jawello/ticktick-mcp'

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