MAG-Cie/mcp-microsoft-todo

MAG-Cie/mcp-microsoft-todo

от mag-cie
MCP-сервер для Microsoft To Do с любыми аккаунтами Microsoft, без настройки Azure, вход через device code. 28 инструментов для управления задачами: создание, поиск, групповые операции, экспорт в iC...

mcp-microsoft-todo

🇫🇷 Version française : README.fr.md

MCP server to drive Microsoft To Do from Claude Code, Claude Desktop, or any MCP-compatible client.

Works with any Microsoft account: personal (outlook.com, hotmail.com, live.com), Office 365 personal or business, Microsoft 365. Zero Azure setup required on the user side — just sign in via device code flow.

npm license


🏗 Built and maintained by MAG&Cie

This MCP server is open-source and free to use. It's also a showcase of our Création de MCP offering at MAG&Cie — we build custom MCP connectors for businesses that want to plug AI into their internal tools (CRM, ERP, custom APIs, internal databases).

If you'd like the same kind of connector for your tools — drop us a line at www.mag-cie.com/creation-mcp.


🚀 End-user installation

Prerequisites (all clients)
  • Node.js 20+ (nodejs.org)
  • A Microsoft account (free or paid)

No Azure account required, no App Registration to create, nothing to compile.


🟦 Claude Code (CLI)

Install (one command):

claude mcp add --transport stdio microsoft-todo -- npx -y @mag-cie/mcp-microsoft-todo
Инструменты были проиндексированы:
batch_complete_tasksидемпотентныйвнешний мир

Отмечает несколько задач как завершённые в одном $batch HTTP вызове (до 100 элементов).

Параметры
  • itemsobject[]обязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

batch_create_tasksвнешний мир

Создаёт несколько задач за один HTTP-вызов через Microsoft Graph $batch (до 100 элементов, автоматически разбивается на части по 20). Возвращает: статус + результат ИЛИ ошибку для каждого элемента, по порядку. Эффективнее N вызовов create_task.

Параметры
  • itemsobject[]обязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

batch_delete_tasksидемпотентныйвнешний мир

Удаляет несколько задач в одном HTTP-вызове $batch (до 100 элементов).

Параметры
  • itemsobject[]обязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

bulk_update_categoriesидемпотентныйвнешний мир

Добавляет/удаляет категории для нескольких задач за одну операцию. Двухфазный пакет: GET для чтения существующих категорий, затем PATCH с обновлённым набором. Поэлементные ошибки, без глобального сбоя.

Параметры
  • addstring[]
  • refsobject[]обязательный
  • removestring[]
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

complete_taskидемпотентныйвнешний мир

Ярлык для отметки задачи как выполненной.

Параметры
  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

create_checklist_itemвнешний мир

Добавляет подпункт (чек-лист) к задаче.

Параметры
  • display_namestringобязательный
  • is_checkedboolean
  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

create_linked_resourceвнешний мир

Прикрепляет связанный ресурс (URL или внешнюю ссылку) к задаче.

Параметры
  • application_namestring
  • display_namestring
  • external_idstring
  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

  • web_urlstring
create_taskвнешний мир

Создаёт новую задачу в списке To Do. Поддерживает повторение и напоминание.

Параметры
  • bodystring
  • categoriesstring[]
  • due_datestring

    ISO 8601

  • importanceenum
  • is_reminder_onboolean
  • list_idstringобязательный
  • recurrenceobject

    Microsoft Graph patternedRecurrence. Combines pattern (type, interval, ...) and range (type, startDate, ...).

  • reminder_date_timestring

    ISO 8601

  • reminder_time_zonestring
  • time_zonestring
  • titlestringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

delete_checklist_itemидемпотентныйвнешний мир

Удаляет подэлемент.

Параметры
  • item_idstringобязательный
  • list_idstringобязательный
  • task_idstringобязательный
delete_extensionидемпотентныйвнешний мир

Удаляет открытое расширение из задачи.

Параметры
  • extension_namestringобязательный
  • list_idstringобязательный
  • task_idstringобязательный
delete_linked_resourceидемпотентныйвнешний мир

Удаляет связанный ресурс из задачи.

Параметры
  • list_idstringобязательный
  • resource_idstringобязательный
  • task_idstringобязательный
delete_taskидемпотентныйвнешний мир

Удаляет задачу навсегда.

Параметры
  • list_idstringобязательный
  • task_idstringобязательный
export_tasks_icsтолько чтениевнешний мир

Экспортирует задачи в формат iCalendar (text/calendar VTODO) для импорта в Google Calendar, Apple Calendar, Outlook, Thunderbird и другие. Преобразует повторения в RRULE, когда это возможно. Преобразует напоминания в VALARM.

Параметры
  • include_completedboolean
  • list_idsstring[]
  • top_per_listnumber
get_taskтолько чтениевнешний мир

Получает детали задачи по ID.

Параметры
  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_all_tasksтолько чтениевнешний мир

Получает все активные задачи из всех списков за один запрос (внутри использует Graph $batch). Используйте для вопроса «какие у меня все задачи?» вместо N×list_tasks вызовов. Необязательный параметр filter — это OData-фильтр, применяемый к каждому списку (например, importance eq 'high'). По умолчанию добавляется status ne 'completed', если только include_completed не равен true.

Параметры
  • filterstring
  • include_completedboolean
  • top_per_listnumber
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_checklist_itemsтолько чтениевнешний мир

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

Параметры
  • list_idstringобязательный
  • paginateboolean

    If true: follows @odata.nextLink up to 20 pages (≈2000 items max). Default false. Use sparingly — large result sets may exhaust the LLM context window.

  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_extensionsтолько чтениевнешний мир

Перечисляет открытые расширения (пользовательские JSON-метаданные), прикреплённые к задаче.

Параметры
  • list_idstringобязательный
  • paginateboolean

    If true: follows @odata.nextLink up to 20 pages (≈2000 items max). Default false. Use sparingly — large result sets may exhaust the LLM context window.

  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_linked_resourcesтолько чтениевнешний мир

Перечисляет связанные ресурсы (внешние URL, ссылки на сторонние приложения) задачи.

Параметры
  • list_idstringобязательный
  • paginateboolean

    If true: follows @odata.nextLink up to 20 pages (≈2000 items max). Default false. Use sparingly — large result sets may exhaust the LLM context window.

  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_overdue_tasksтолько чтениевнешний мир

Перечисляет ВСЕ просроченные задачи (status ne completed и dueDateTime < today) по каждому списку. Объединяет через Promise.all.

Параметры
  • top_per_listnumber
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_task_listsтолько чтениевнешний мир

Выводит список всех To Do списков пользователя (Tasks, Inbox, пользовательские списки и т.д.).

Параметры
  • paginateboolean

    If true: follows @odata.nextLink up to 20 pages (≈2000 items max). Default false. Use sparingly — large result sets may exhaust the LLM context window.

  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_tasksтолько чтениевнешний мир

Выводит список задач из списка To Do. Поддерживает OData filter, $orderby, $top и пагинацию.

Параметры
  • filterstring
  • list_idstringобязательный
  • orderbystring
  • paginateboolean

    If true: follows @odata.nextLink up to 20 pages (≈2000 items max). Default false. Use sparingly — large result sets may exhaust the LLM context window.

  • topnumber
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

list_tasks_by_categoryтолько чтениевнешний мир

Перечисляет ВСЕ задачи, содержащие заданную категорию, во всех списках. Фильтр OData: categories/any(c: c eq '...').

Параметры
  • categorystringобязательный
  • include_completedboolean
  • top_per_listnumber
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

move_taskвнешний мир

Перемещает задачу из одного списка в другой. Воссоздаёт задачу в целевом списке (заголовок, описание, срок, периодичность, напоминание, категории сохраняются), затем удаляет оригинал. Примечание: checklistItems и linkedResources НЕ перемещаются (ограничение Graph). Идентификатор задачи изменяется.

Параметры
  • source_list_idstringобязательный
  • target_list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

search_tasksтолько чтениевнешний мир

Ищет термин в названиях задач во ВСЕХ списках (с учётом регистра). По умолчанию исключает выполненные задачи.

Параметры
  • include_completedboolean
  • querystringобязательный
  • top_per_listnumber
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

set_extensionидемпотентныйвнешний мир

Создаёт или обновляет (upsert) открытое расширение в задаче. Прикрепляет произвольные JSON-метаданные (project_id, external_ref, custom flags...), которые сохраняются в Microsoft Graph.

Параметры
  • dataobjectобязательный

    Arbitrary JSON object to store

  • extension_namestringобязательный

    Unique name, ideally reverse-DNS, e.g. 'com.example.mydata'

  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

summarize_todayтолько чтениевнешний мир

Сводка задач на сегодня и просроченных, сгруппированных по спискам. Полезна для вопроса: «Что мне нужно сделать сегодня?»

Параметры
  • time_zonestring
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

update_checklist_itemидемпотентныйвнешний мир

Обновляет подпункт (переименовать или отметить/снять отметку).

Параметры
  • display_namestring
  • is_checkedboolean
  • item_idstringобязательный
  • list_idstringобязательный
  • task_idstringобязательный
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

update_taskидемпотентныйвнешний мир

Обновляет существующую задачу (название, статус, повторение, напоминание и т.д.).

Параметры
  • bodystring
  • categoriesstring[]
  • due_datestring

    ISO 8601

  • importanceenum
  • is_reminder_onboolean
  • list_idstringобязательный
  • recurrenceobject

    Microsoft Graph patternedRecurrence. Combines pattern (type, interval, ...) and range (type, startDate, ...).

  • reminder_date_timestring

    ISO 8601

  • reminder_time_zonestring
  • statusenum
  • task_idstringобязательный
  • time_zonestring
  • titlestring
  • verboseboolean

    If true: returns full JSON. Otherwise: compact text format (default, saves tokens).

Похожие MCP-сервера

eyaltoledano/claude-task-master

eyaltoledano/claude-task-master

Taskmaster — система управления задачами для AI-разработки, подключаемая через MCP к Cursor, Claude Code и другим редакторам. Разбивает PRD на задачи, отслеживает прогресс и управляет разработкой п...

JavaScript28062
tacticlaunch/mcp-linear

tacticlaunch/mcp-linear

MCP сервер для интеграции AI-ассистентов с Linear. Предоставляет инструменты управления задачами, проектами, циклами и документами, включая ресурсы и промпты. Полезен командам, использующим Linear ...

TypeScript147
Яндекс Трекер MCP

Яндекс Трекер MCP

MCP-сервер для интеграции AI-ассистентов с Яндекс Трекером: полный цикл работы с задачами от создания до закрытия, включая комментарии, трудозатраты и расширенный поиск через Yandex Tracker Query Language.

Python116
aashari/mcp-server-atlassian-jira

aashari/mcp-server-atlassian-jira

Подключает AI-ассистентов к Jira: запрашивайте проекты, задачи, комментарии на естественном языке. Упрощает управление проектами и отслеживание работы для разработчиков, менеджеров и всех пользоват...

TypeScript74
its-dart/dart-mcp-server

its-dart/dart-mcp-server

MCP сервер Dart подключает ИИ к управлению проектами: создавайте и редактируйте задачи и документы, фильтруйте по статусу, исполнителю и срокам. Готовые промпты и инструменты упрощают автоматизацию планирования — полезно командам, внедряющим AI-помощников в рабочий процесс.

TypeScript128
awwaiid/mcp-server-taskwarrior

awwaiid/mcp-server-taskwarrior

Сервер MCP, подключающий TaskWarrior к AI: просмотр задач, фильтрация по проектам и тегам, добавление новых с описанием, сроком, приоритетом, отметка о выполнении. Упрощает управление задачами через естественный язык.

JavaScript51
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин