Ви можете забезпечити виконання політики підпису, дозволивши AI‑агенту перевірити всю папку документів в одному запиті, локально, і повернути одну таблицю винятків. Агент працює в Claude Desktop, Claude Code, Cursor або GitHub Copilot, а сервер GroupDocs.Signature.Mcp виконує перевірку. Запит, який запускає сканування:

Для кожного PDF у моїй папці документів перевірте, чи підписано його цифровим підписом і чи він ще дійсний. Надішліть таблицю: файл, підписант, дата підпису, статус.

Версія крок за кроком з налаштуваннями та усуненням проблем знаходиться в документації: Як провести аудит папки підписаних документів за допомогою AI‑агента.

Чому політиці підпису потрібен автоматизований скан?

Політика типу «кожен контракт в архіві має мати дійсний цифровий підпис» є лише політикою, якщо її хтось перевіряє. Ручні перевірки відкривають файли по одному, тому вони трапляються рідко і охоплюють лише вибірку. Питання, які ставить відділ відповідності, стосуються всього архіву: які контракти не підписані, чий сертифікат прострочений, які файли були змінені після підпису.

Сам по собі AI‑агент не може відповісти на ці питання, оскільки модель, що читає PDF, не бачить структуру підпису. Агент забезпечує цикл і підсумок. Движок надає факти, по файлу.

Робочий процес, крок за кроком

  1. Налаштуйте сервер на папку. Встановіть GROUPDOCS_MCP_STORAGE_PATH на папку документів. Файли визначаються за назвою, тому агент передає contract-042.pdf, а не шлях з вашого комп’ютера.
  2. Перевірте режим ліцензування. Попросіть агента викликати get_license_status. У режимі оцінки обробляються лише перші 2 сторінки, тому чистий звіт може бути неправильним (дивіться обмеження нижче).
  3. Запустіть сканування. Використайте запит вище. Для кожного файлу агент викликає search_digital_signatures і формує таблицю. Файл без знайденого цифрового підпису позначається як неподписаний.
  4. Прочитайте винятки. Відсортуйте таблицю за статусом і обробіть три групи, описані нижче.
  5. Запускайте повторно за розкладом. Той самий запит працює наступного місяця в тій же папці, тому аудит стає рутинним, а не проєктом.

Що вирішує агент і що робить движок

Крок Що вирішує агент Що робить движок
Які файли перевіряти Перелічує PDF‑файли у папці згідно вашого запиту Визначає кожен файл за назвою зі сховища
Чи підписано, чи дійсний і ким Вибирає файли Повертає підписанта, емітента, серійний номер, період дії, мітку часу та isValid (search_digital_signatures)
Звіт Створює таблицю та групує винятки Нічого; движок не підсумовує

Приклад сесії (скорочений)

You:    For every PDF in my documents folder, check whether it is digitally
        signed and still valid. Give me a table: file, signer, signed date, status.

Agent:  [get_license_status]  mode: licensed
        [search_digital_signatures] x N
        | file             | signer      | signed     | status   |
        | contract-041.pdf | Dana Whitfield | 2026-09-14 | valid    |
        | contract-042.pdf | -              | -          | unsigned |
        | contract-043.pdf | Omar Haddad    | 2026-08-02 | invalid  |
        Exceptions: 1 unsigned, 1 invalid. Invalid usually means the file
        changed after signing.

Ілюстративний результат: імена файлів та підписантів вигадані. Інструмент повертає поля, описані вище.

Три винятки, які мають значення

  • Непідписані файли. Це прогалина, яку аудит має виявити.
  • Недійсні підписи. Майже завжди після підпису щось змінилося: додано штамп, повторне збереження, додана сторінка. Варто знати, які саме.
  • Протерміновані сертифікати. Підпис був дійсний на момент створення. Чи вважається він дійсним далі — ваша політика. Період дії міститься у повернутих даних, тому попросіть агента перелічити кожен сертифікат, чий період дії закінчився до сьогодні; саме це порівняння їх виявляє.

Як зробити сканування недорогим і звіт достовірним?

  • Виконуйте search_digital_signatures для кожного файлу. Додавайте verify лише як необов’язковий швидкий фільтр і розглядайте детальний запис як джерело правди.
  • Пропускайте search_image_signatures у масовому режимі. Він повертає base64‑зображення для кожного збігу і без потреби збільшує час виконання.
  • Вимикайте returnImage під час пошуку коду.
  • При ліцензуванні за використанням кожен виклик оплачується, тому цільове сканування коштує менше і працює швидше.
  • Зберігайте деталі сертифікату для кожного файлу (підписант, емітент, серійний номер, мітка часу) як ваш запис. Прозора підсумкова розповідь агента — це звіт, а не атестація, і це не нотаріальна дія.

Потім дійте щодо винятків

Ту ж саму сесію можна використати для виправлення того, що виявило сканування, наприклад, застосувавши марку‑посилання до неподписаних файлів:

Підпишіть три неподписані файли нашим стандартним QR‑посиланням і перелічіть, що ви зробили.

Будьте точними щодо того, що це робить. QR‑код — це візуальна мітка, а не підпис на основі сертифіката, тому він не замінює необхідний цифровий підпис. Для файлів, яким потрібен підпис, застосуйте його в кінці за допомогою sign і type: "digital".

Обмеження, які слід зазначити у вашому процесі

Режим оцінки обробляє лише перші 2 сторінки кожного документа і ставить пробний значок на кожну сторінку. Підпис на 4‑й сторінці не відображається, тому неліцензований масовий аудит може повідомити «чистий» для файлу, який таким не є. Спочатку перевіряйте get_license_status щоразу. Сервер також читає дані підпису з файлу; він не знає вашої політики, тому визначення прийнятного сертифіката залишається за вами.

Питання та відповіді

Які мої контракти не підписані?
Попросіть агента провести аудит папки та перелічити файли без цифрового підпису. Для кожного файлу виконується виклик search_digital_signatures; файл, у якому підпис не знайдено, позначається як неподписаний. Результат — одна таблиця.

Чи може AI виконати масову перевірку підписів PDF?
Так, в одному запиті по папці, локально. Без ліцензії перевіряються лише перші 2 сторінки кожного файлу.

Чи може звіт слугувати доказом відповідності?
Зберігайте деталі сертифікату для кожного файлу, повернені движком, як доказ. Підсумок агента — це зручність, а не атестація.

Поглиблене вивчення