# ИИ-репетитор по карточкам в 2026 году: повторяйте карточки с Claude через MCP

*2026-07-15*

К повторению доступны десять карточек. На экране — только один вопрос, а сохранённый ответ скрыт, пока вы не попробуете ответить.

Вот как стоит использовать **ИИ-репетитора по карточкам** в 2026 году: подключить Claude к вашим данным Flashcards через MCP, загрузить небольшую выборку-снимок карточек, которые сейчас доступны для повторения, и переходить дальше только после вашего ответа. Во время сессии Claude может после каждой попытки показывать сохранённую обратную сторону и отмечать первый ответ в чате. Но завершить повторение по FSRS он не может. Оценку `Again`, `Hard`, `Good` или `Easy` всё равно нужно самостоятельно сохранить в приложении Flashcards, иначе карточки останутся доступными для повторения.

![ИИ-репетитор по карточкам задаёт одну карточку для повторения, пока официальная FSRS-сессия ждёт в приложении.](/blog/ai-flashcard-tutor-due-cards.png)

## Двухминутный сценарий

Вот весь процесс — до подробностей настройки:

1. Добавьте удалённый MCP-коннектор Flashcards в Claude.
2. Разрешите `list_workspaces` и `sql_query` на время этой сессии.
3. Заблокируйте `sql_execute`: для этой тренировки запись не нужна.
4. Вставьте промпт для репетитора из раздела ниже.
5. Подтвердите рабочее пространство и позвольте Claude загрузить до десяти доступных для повторения карточек.
6. Отвечайте на карточки по одной. Просите не больше одной подсказки и только при необходимости.
7. После сессии откройте [Flashcards](https://app.flashcards-open-source-app.com/) и повторите эти карточки в штатном режиме, самостоятельно выставив оценки FSRS.

Последний шаг — обязательная часть процесса. MCP-сессия нужна для устной тренировки по вашим карточкам: она не очищает очередь повторения и не меняет расписание.

Если коннектор ещё не настроен, актуальный путь по меню описан в руководстве [«Как подключить Flashcards к Claude через MCP»](/ru/blog/how-to-connect-flashcards-to-claude-with-mcp/). Адрес сервера:

`https://mcp.flashcards-open-source-app.com/mcp`

## Настройте Claude как ИИ-репетитора только для проверки карточек

Коннектор Flashcards предоставляет три вызова:

- `list_workspaces({})` возвращает список рабочих пространств, к которым у вашего аккаунта есть доступ.
- `sql_query({ sql, workspaceId? })` читает карточки через ограниченный диалект SQL.
- `sql_execute({ sql, workspaceId? })` может создавать, редактировать и удалять карточки и колоды.

Аргумент `workspaceId` задаётся заново при каждом вызове. Передайте его, чтобы обратиться к подтверждённому рабочему пространству именно в этом вызове. Если аргумент не указан, инструмент использует выбранное пространство по умолчанию. Передача ID не меняет и не сохраняет новое пространство по умолчанию.

Коннектор в целом не работает только на чтение. Сервер гарантирует, что `list_workspaces` и `sql_query` не могут записывать данные, а для записи карточек и колод предназначен `sql_execute`. Сейчас Flashcards использует одну область доступа OAuth — `flashcards`; отдельного серверного разрешения только на чтение нет.

Для этой проверки заблокируйте `sql_execute` в разрешениях коннектора Claude. Это политика клиентского приложения, а не отдельное OAuth-разрешение, которое обеспечивает сервер Flashcards. Если вместо жёсткой блокировки клиент предлагает подтверждать вызовы, отклоняйте каждый запрос `sql_execute`. Промпт тоже запрещает Claude вызывать этот инструмент, но текстовый запрет не заменяет техническую блокировку инструмента.

Интерактивные клиенты авторизуются по OAuth 2.1 с PKCE и динамической регистрацией клиентов (Dynamic Client Registration). Вставлять API-ключ в Claude не нужно. Актуальные правила аутентификации и контракт инструментов приведены в [документации по MCP-коннектору Flashcards](/ru/docs/mcp-connector/).

## Скопируйте этот промпт для проверки карточек к повторению

В промпте ниже используются документированные сигнатуры инструментов, поля карточек и правило наступившего срока. Карточка доступна для повторения, если `due_at` равен `NULL` или указанная отметка времени уже наступила. В этом контракте `NULL` означает новую карточку, которую ещё ни разу не повторяли.

```text
Используй MCP-коннектор Flashcards в этой сессии только как репетитора для проверки карточек.

Границы использования инструментов:
- Вызывай только list_workspaces и sql_query.
- Никогда не вызывай sql_execute.
- Никогда не создавай, не обновляй, не удаляй, не перепланируй и не помечай карточки как повторённые.

Настройка:
1. Вызови list_workspaces({}).
2. Если рабочее пространство одно, назови его и попроси меня подтвердить выбор.
3. Если рабочих пространств несколько, покажи их названия и попроси меня выбрать одно.
4. Остановись и дождись моего подтверждения рабочего пространства, прежде чем читать карточки.
5. Передай подтверждённый workspaceId в sql_query только для этого вызова. Не утверждай, что это меняет моё рабочее пространство по умолчанию.
6. Используй в точности этот SQL:

SELECT card_id, front_text, back_text, due_at, created_at
FROM cards
WHERE due_at IS NULL OR due_at <= NOW()
ORDER BY due_at ASC, created_at DESC, card_id ASC
LIMIT 10 OFFSET 0

Этот запрос загружает стабильный снимок карточек, которые сейчас доступны для повторения. Он не воспроизводит точный порядок карточек на экране Review в Flashcards. Строки с due_at IS NULL — это новые карточки, которые ещё ни разу не повторяли; они идут первыми. Не загружай карточки, срок повторения которых ещё не наступил.

Если запрос не вернул ни одной строки, сообщи мне об этом и остановись.

Порядок проверки:
- Покажи только front_text первой карточки. Не раскрывай back_text заранее.
- Показывай по одной карточке и жди моего ответа, прежде чем продолжать.
- Не превращай вопрос в тест с вариантами ответа.
- Предлагай не больше одной короткой подсказки и только по моей просьбе. Подсказка не должна раскрывать ответ.
- После моего ответа или фразы «Не знаю» покажи сохранённый back_text с чёткой пометкой «Сохранённый ответ».
- Сравни мой первый ответ с сохранённым. Оставь одну заметку только для этой сессии: «вспомнил», «частично» или «не вспомнил». Если непонятно, какая заметка подходит, спроси меня.
- Сохрани заметку о первой попытке, даже если позднее помогли подсказка или исправление. Никогда не преобразуй эту заметку в Again, Hard, Good или Easy.
- Переходи к следующей карточке только после того, как я скажу «дальше» или иначе подтвержу, что готов продолжать.
- Не повторяй одну и ту же карточку в этой сессии.

В конце покажи компактный список лицевых сторон всех карточек и заметок о первых попытках. Чётко укажи, что это только заметки в чате: ни одно повторение и ни одна оценка не сохранены, расписание FSRS не изменилось, а мне нужно повторить карточки в штатном режиме приложения Flashcards.
```

Оставьте в запросе `NOW()`: этот SQL-интерфейс не поддерживает `CURRENT_TIMESTAMP`. Сортировка по трём столбцам тоже важна. Сначала идут новые карточки, которые ещё не повторяли. Среди них более новые карточки располагаются выше; затем идут запланированные карточки от самого давнего наступившего срока к более позднему, а `card_id` служит последним критерием сортировки. Для одного и того же снимка результат воспроизводим, но точный порядок экрана Review в приложении этот запрос не повторяет.

Десять — это верхний предел, а не цель. Можно остановить тренировку после пяти карточек, не меняя запрос и ничего не записывая обратно.

## Как должен проходить один раунд с репетитором

Claude показывает только лицевую сторону одной карточки. Вы отвечаете по памяти, желательно вслух. Если не получается, можно попросить одну подсказку. Затем Claude открывает сохранённую обратную сторону и сравнивает её с вашим ответом.

Первая попытка остаётся в заметках сессии, даже если после подсказки ответ стал очевиден. Это помогает избежать распространённого самообмана: превратить «не вспомнил, а потом понял объяснение» в «знал». Заметка намеренно остаётся приблизительной. Она помогает увидеть закономерности в ответах на десять карточек, но не передаётся планировщику.

Главную работу выполняет пауза перед каждым показом ответа. Чат, который сразу печатает все лицевые и обратные стороны, превращается в очередную страницу для чтения. Один вопрос, одна попытка и один показ ответа делают сессию настоящей тренировкой извлечения из памяти.

## Устная тренировка — не официальное повторение FSRS

Эту границу стоит сформулировать прямо: Flashcards MCP умеет читать доступные для повторения карточки, но не умеет отправлять событие повторения. Ресурс `review_events` и поля расписания карточки, включая `due_at`, `reps`, `lapses`, `fsrs_card_state` и `fsrs_last_reviewed_at`, доступны агентскому интерфейсу только для чтения. Даже `sql_execute` может изменять лишь карточки и колоды. Claude не может сохранить оценку `Again`, `Hard`, `Good` или `Easy`, обновить расписание или пометить повторение как завершённое.

Поэтому после чата эти карточки останутся в очереди с наступившим сроком повторения.

Откройте веб-приложение или другой клиент Flashcards и снова ответьте на карточки в официальном режиме повторения. Самостоятельно оцените именно эту попытку. Ответ, который вы уже видели в чате, может упростить немедленное повторение, поэтому не преобразуйте заметки «вспомнил», «частично» и «не вспомнил» в оценку автоматически. Если из-за этого честно оценить себя трудно, используйте ИИ-репетитора после обычного повторения в приложении — как сессию с объяснениями.

Если хотите подробнее разобраться в разделении ролей, прочитайте, [чем active recall отличается от интервального повторения](/ru/blog/active-recall-vs-spaced-repetition/). Active recall проверяет, что вы способны воспроизвести сейчас, а интервальное повторение определяет, к чему нужно вернуться позже. Сессия с Claude выполняет первую задачу, приложение — вторую.

## Почему важна пауза перед ответом

Самое полезное ограничение немного раздражает: Claude должен ждать. Если увидеть обратную сторону до попытки ответить по лицевой, раунд превращается в чтение. Скрытый ответ заставляет сначала извлечь информацию из памяти, и эту попытку уже можно честно оценить.

В рандомизированном контролируемом исследовании 2009 года участвовали 40 ординаторов по педиатрии и неотложной медицине, изучавших две медицинские темы. Короткие тесты со свободным ответом и обратной связью проводились сразу, а затем ещё дважды с интервалами примерно в две недели. Более чем через шесть месяцев средний результат составил 39% для материала, который многократно проверяли тестами, и 26% для материала, который многократно изучали по листам для повторения. В [опубликованной аннотации указана разница в 13 процентных пунктов](https://pubmed.ncbi.nlm.nih.gov/19930508/).

Это было одно небольшое исследование в медицинском образовании, а не испытание ИИ-репетитора и не доказательство того, что именно этот MCP-сценарий улучшает оценки. Оно лишь подкрепляет более узкое решение: сначала попытаться ответить и только потом увидеть ответ. Промпт соблюдает эту границу — скрывает обратную сторону, ограничивает подсказки и сохраняет первую попытку.

## Используйте сохранённую обратную сторону как эталон

При оценке ИИ-репетитор легко может улучшить, дополнить или незаметно заменить сохранённый ответ. Это рискованно, если ваша цель — повторять собственные карточки.

Промпт требует от Claude показать сохранённый `back_text` и сравнить ваш ответ именно с этим текстом. Модель может объяснить расхождение, но эталоном во время тренировки остаётся исходный текст карточки. Если обратная сторона неверна или неполна, после сессии отдельно исправьте карточку по надёжному источнику. Не позволяйте удачной формулировке из чата подменить исправление самой карточки.

Более широкий сценарий разобран в статье [«Как использовать ИИ для active recall»](/ru/blog/how-to-use-ai-for-active-recall/): она объясняет, как не показывать подсказки и объяснения раньше времени.

## Приватность и разрешения перед подключением

Когда Claude вызывает `sql_query`, Flashcards возвращает запрошенные данные карточек внешнему ИИ-клиенту. Выбранный клиент или поставщик модели может обрабатывать или хранить эти данные в соответствии с настройками и условиями вашего аккаунта. Они не остаются только внутри Flashcards.

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

Блокировка `sql_execute` защищает от записи, если клиент действительно её обеспечивает. Она не превращает учётные данные OAuth в учётные данные только для чтения и не делает возвращённый текст приватным. Если клиент не позволяет отключать отдельные инструменты или запрашивать подтверждение перед вызовами, считайте, что подключение имеет доступ на запись.

Подробная модель угроз приведена в статье [«Безопасен ли MCP для карточек?»](/ru/blog/is-mcp-safe-for-flashcards/). Для обычной проверки достаточно короткого списка: проверьте адрес MCP, подтвердите рабочее пространство, заблокируйте запись, запрашивайте мало строк и заранее выясните, куда попадут возвращённые данные.

## Оставляйте набор карточек к повторению небольшим

Запрос «ИИ проверяет мои карточки» звучит так, будто нужно загрузить всю колоду. Обычно лучше попросить проверить пять или десять карточек.

Небольшой набор оставляет время на полный ответ, подсказку при необходимости и разбор причины ошибки. Заодно он ограничивает объём текста карточек, который получает внешний клиент. После штатного повторения в приложении переходите к следующему набору, только если ещё можете внимательно заниматься.

Не просите Claude выбрать «самые важные» карточки, если у вас нет чёткого правила определения важности. Правило в примере запроса уже и конкретнее: включить новые карточки без повторений и запланированные карточки, срок которых наступил. Новые карточки идут первыми, затем — запланированные от самого давнего наступившего срока к более позднему. Этот стабильный снимок удобен для короткой тренировки, но не претендует на совпадение с порядком на экране Review в приложении. За расписание по-прежнему отвечает FSRS; Claude меняет только способ подачи вопроса.

## FAQ: Claude, MCP и карточки к повторению

### Может ли Claude проверять меня по моим карточкам?

Да. Через MCP-коннектор Flashcards Claude может прочитать небольшую выборку карточек, доступных для повторения на момент запроса, из подтверждённого вами рабочего пространства. Затем он показывает только лицевую сторону одной карточки, ждёт ответа и открывает сохранённую обратную сторону. Промпт выше ограничивает сессию инструментами `list_workspaces` и `sql_query`.

### Помечает ли Claude карточку как повторённую после моего ответа?

Нет. Агентский интерфейс не умеет отправлять события повторения или менять поля расписания FSRS. Завершите повторение тех же карточек в [приложении Flashcards](https://app.flashcards-open-source-app.com/), чтобы сохранить свои оценки и назначить карточкам следующие сроки.

### Это MCP-подключение только для чтения?

Коннектор в целом работает не только на чтение. `list_workspaces` и `sql_query` — инструменты только для чтения, а `sql_execute` умеет записывать данные. Режим исключительно для проверки зависит от блокировки или отклонения `sql_execute` в клиенте. Сейчас OAuth использует одну область доступа `flashcards`, а не отдельные разрешения на чтение и запись.

### Может ли ИИ выбрать за меня Again, Hard, Good или Easy?

Не должен. Claude может вести приблизительные заметки сессии, например «вспомнил», «частично» и «не вспомнил», но они нигде не сохраняются как оценки FSRS. Официальную оценку выбирайте самостоятельно в приложении.

### Включает ли запрос из промпта новые карточки?

Да. У новых карточек, которые ещё не повторяли, значение `due_at IS NULL`, поэтому по документированному правилу они доступны для повторения. В этом запросе они идут раньше запланированных карточек с наступившим сроком. Карточки с будущим значением `due_at` исключаются.

### Меняет ли workspaceId моё рабочее пространство по умолчанию?

Нет. Переданный в `sql_query` аргумент `workspaceId` выбирает рабочее пространство только для одного вызова. Если его не указать, используется выбранное пространство по умолчанию; передача ID не сохраняет новое значение по умолчанию.

## Не расширяйте задачу ИИ-репетитора по карточкам

Полезный **ИИ-репетитор по карточкам** решает небольшую задачу: загружает несколько карточек, доступных для повторения, показывает их лицевые стороны по одной, ждёт ваших ответов, даёт не больше одной подсказки и открывает уже сохранённые ответы.

Оставьте `sql_execute` заблокированным в клиенте и загружайте выборку через `sql_query`, который на уровне сервера работает только на чтение. Считайте пометки о первых попытках одноразовыми заметками в чате: они не сохраняются как оценки. Затем повторите карточки в штатном режиме Flashcards, чтобы FSRS получил ваши оценки и назначил следующие сроки. Пока этого не произойдёт, все карточки из чата останутся к повторению.

---
*[Открыть оформленную HTML-версию этой страницы](https://flashcards-open-source-app.com/ru/blog/ai-flashcard-tutor-due-cards/)*

*AI-агенты могут создать аккаунт пользователя в этом сервисе, начиная с `GET https://api.flashcards-open-source-app.com/v1/`. После настройки они также могут подключиться по MCP по адресу `https://mcp.flashcards-open-source-app.com/mcp`.*

*Совет: добавьте `.md` к любому URL на https://flashcards-open-source-app.com, чтобы получить чистую Markdown-версию страницы.*