Подключение Taskid к Claude, ChatGPT и другим AI-ассистентам по протоколу Model Context Protocol (Streamable HTTP, spec 2025-11-25).
Один и тот же URL работает и для OAuth (Claude.ai, ChatGPT), и для Bearer-токена (Desktop / Code / Codex).
Клиент сам открывает окно авторизации Taskid - вы логинитесь, выбираете доступ и подтверждаете. Токен вручную копировать не нужно.
Подходит: Claude.ai (веб, мобилка), ChatGPT.
Создаёте API-токен tkd_... в настройках
и прописываете его в конфиг MCP-клиента.
Подходит: Claude Desktop, Claude Code, Codex CLI, Cursor.
https://taskid.app/mcp.Поле OAuth Client ID / Secret в advanced-настройках не заполняйте - Taskid использует Client ID Metadata Documents (CIMD) и Dynamic Client Registration, Claude всё подхватит сам.
Нужен платный тариф и включённый Developer mode. Тариф определяет уровень доступа:
Шаги:
Taskid, MCP Server URL:
https://taskid.app/mcp.URL обязательно HTTPS. Запускать пользовательские коннекторы можно только проверив, что сервер безопасен (Taskid - открытый исходный код, домен верифицируется TLS).
Desktop и Code пока не принимают URL с OAuth через UI. Используйте
REST API-токен tkd_... из раздела
API-токены:
claude mcp add --transport http taskid https://taskid.app/mcp \
--header "Authorization: Bearer tkd_ВАШ_ТОКЕН" Проверка: claude mcp list - должен
показать taskid ... ✓ Connected.
Для OpenAI Codex передайте токен через переменную окружения - это безопаснее, чем держать секрет прямо в конфиге:
export TASKID_TOKEN='tkd_ВАШ_ТОКЕН'
codex mcp add taskid \
--url https://taskid.app/mcp \
--bearer-token-env-var TASKID_TOKEN Проверка:
codex mcp list
codex mcp get taskid --json Область доступа (все списки / выбранные, чтение / запись) задаётся при создании токена в настройках.
Списки: list_lists, get_list, create_list, update_list, delete_list
Группы: list_groups, get_group, create_group, update_group, delete_group
Задачи: list_tasks, get_task, create_task, update_task, complete_task, reopen_task, delete_task
Заметки: list_info, get_info, create_info, update_info, delete_info
Уведомления: list_notifications, get_notification, create_notification, update_notification, delete_notification, attach_file_to_notification, detach_file_from_notification
Файлы: upload_file, attach_file_to_task, detach_file_from_task, attach_file_to_info, detach_file_from_info
Внешние ссылки (без загрузки): attach_link_to_task, attach_link_to_info, attach_link_to_notification
Если вам поделились списком (на сайте - кнопка «Поделиться»), коннектор увидит его наравне с собственными. У каждого списка приходят два поля:
is_owner -
true, если вы владелец списка;
false, если участник чужого.is_shared -
true, если у списка есть участники
(личный это или общий).Участник может читать содержимое и создавать/менять/удалять задачи и заметки в общем списке (включая прикрепление файлов). А вот сам список (его имя, иконка, архивация, удаление, перенос в группу) - менять может только владелец; попытка участника даст ошибку.
Поля completed_user_id и
deleted_user_id у задач показывают,
кто реально закрыл/удалил запись - удобно для аудита в общих
списках.
У каждой задачи, заметки и уведомления есть массив
files - прикреплённые вложения. Если
ничего не прикреплено - массив пустой. Каждый элемент:
{
"id": "9f1c-...",
"name": "contract.pdf",
"size": 184320,
"url": "https://taskid.app/files/aa/bb/cc/9f1c....pdf",
"source": "upload" // 'upload' | 'link'
} Поле source различает два типа
прикреплений:
"upload" - реально загруженный файл
в нашем хранилище. url ведёт на
taskid.app и открывается в браузере
без авторизации (capability-токен зашит в путь). Учитывается в
файловой квоте пользователя."link" - внешний HTTPS-URL (наш
сервер ничего не скачивает и не хранит). url
ведёт на сторонний ресурс как есть. В квоте не учитывается;
size может быть 0,
если сервер ресурса не отдал размер на HEAD при прикреплении.upload_file с полями
name,
mime_type,
content_base64 - получите
file.id. Файл сам по себе ни к
чему не привязан - если не прикрепить его, orphan-sweep его
удалит.attach_file_to_task,
attach_file_to_info или
attach_file_to_notification с
file_ids: ["..."] -
прикрепляет к задаче / заметке / уведомлению. В ответе придёт
обновлённая запись с уже заполненным files.Содержимое файла передаётся в base64 (не URL-safe, без префикса
data:...). Размер ограничен квотой
пользователя; слишком большой файл вернёт ошибку.
Если ресурс уже доступен по HTTPS (картинка, дашборд, лог, документ в облаке) - не нужно его скачивать и заливать к нам. Используйте одну из:
attach_link_to_taskattach_link_to_infoattach_link_to_notificationПараметр links - массив объектов
{ url, name? }. URL должен быть
http/https; name опционален - если
не задан, сервер возьмёт его из Content-Disposition
HEAD-ответа или из последнего сегмента URL. В ответе придёт обновлённая
задача / заметка / уведомление с source: "link"
у новых элементов.
detach_file_from_task /
detach_file_from_info /
detach_file_from_notification -
одинаково работают и для upload, и для link (различаются по
source в JSONB). Для upload-файла,
загруженного вами, освобождается квота; для link физически ничего
не удаляется - просто перестаёт быть прикреплённой.
Помимо задач и заметок ассистент может создавать уведомления - записи, которые на устройстве пользователя приходят видимым push-баннером (как сообщение от мессенджера). Полезно, чтобы напомнить о чём-то немедленно, а не «к завтрашнему утру».
create_notification -
title,
message?,
priority? (0..3, severity для иконки/цвета),
list_id? (если опущен - «Входящие»).
Сразу при создании можно передать
file_ids и
links.list_notifications /
get_notification - чтение.update_notification /
delete_notification - редактирование текста
и soft-delete. Состояние «прочитано / непрочитано» через MCP не управляется -
это клиентский CRDT-флаг, выставляется только в приложении пользователем.Уведомление видно во вкладке «Уведомления» приложения и попадает в указанный список. На iPhone/iPad/Mac/Android приходит push-баннером; одной кнопкой пользователь может превратить его в задачу.
Авторизация выполняется по стандарту OAuth 2.1. Активные подключения видны и отзываются в любой момент в разделе Настройки → MCP.
Нужен REST API (curl, скрипты, интеграции)? Справка по API →