whisper-windows-mcp 2.2.0 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/LICENSE +20 -1
  2. package/LICENSE-COMMERCIAL.md +58 -0
  3. package/PRIVACY.es.md +135 -0
  4. package/PRIVACY.id.md +135 -0
  5. package/PRIVACY.ja.md +135 -0
  6. package/PRIVACY.ko.md +135 -0
  7. package/PRIVACY.md +135 -0
  8. package/PRIVACY.pl.md +135 -0
  9. package/PRIVACY.pt-BR.md +135 -0
  10. package/PRIVACY.ro.md +135 -0
  11. package/PRIVACY.uk.md +135 -0
  12. package/PRIVACY.vi.md +135 -0
  13. package/README.es.md +393 -0
  14. package/README.id.md +393 -0
  15. package/README.ja.md +402 -397
  16. package/README.ko.md +393 -0
  17. package/README.md +393 -388
  18. package/README.pl.md +393 -0
  19. package/README.pt-BR.md +393 -0
  20. package/README.ro.md +393 -0
  21. package/README.uk.md +393 -0
  22. package/README.vi.md +393 -0
  23. package/ROADMAP.es.md +200 -0
  24. package/ROADMAP.id.md +289 -0
  25. package/ROADMAP.ja.md +301 -268
  26. package/ROADMAP.ko.md +286 -0
  27. package/ROADMAP.pl.md +198 -0
  28. package/ROADMAP.pt-BR.md +286 -0
  29. package/ROADMAP.ro.md +200 -0
  30. package/ROADMAP.uk.md +290 -0
  31. package/ROADMAP.vi.md +286 -0
  32. package/SECURITY.es.md +47 -0
  33. package/SECURITY.id.md +47 -0
  34. package/SECURITY.ja.md +47 -0
  35. package/SECURITY.ko.md +47 -0
  36. package/SECURITY.md +14 -2
  37. package/SECURITY.pl.md +47 -0
  38. package/SECURITY.pt-BR.md +47 -0
  39. package/SECURITY.ro.md +47 -0
  40. package/SECURITY.uk.md +47 -0
  41. package/SECURITY.vi.md +47 -0
  42. package/TROUBLESHOOTING.es.md +323 -0
  43. package/TROUBLESHOOTING.id.md +323 -0
  44. package/TROUBLESHOOTING.ko.md +323 -0
  45. package/TROUBLESHOOTING.pl.md +323 -0
  46. package/TROUBLESHOOTING.pt-BR.md +323 -0
  47. package/TROUBLESHOOTING.ro.md +323 -0
  48. package/TROUBLESHOOTING.uk.md +323 -0
  49. package/TROUBLESHOOTING.vi.md +323 -0
  50. package/glama.json +6 -0
  51. package/package.json +10 -3
  52. package/patch_roadmaps.py +72 -0
package/README.uk.md ADDED
@@ -0,0 +1,393 @@
1
+ # whisper-windows-mcp
2
+
3
+ Нативний MCP-сервер (Model Context Protocol) для Windows. Використовує [whisper.cpp](https://github.com/ggml-org/whisper.cpp) для транскрибування аудіо та відеофайлів локально в Claude Desktop — з апаратним прискоренням GPU, підтримкою багатьох мов і пакетним опрацюванням. Уся транскрипція виконується локально — жодні аудіо-, відеофайли чи шляхи до файлів не передаються назовні.
4
+
5
+ > **Чому існує цей пакет?**
6
+ > Популярний пакет `whisper-mcp` створено для macOS і розрахований на Unix-середовище. На Windows він не працює. Цей пакет написано спеціально для користувачів Windows, які хочуть локальне AI-транскрибування, інтегроване з Claude Desktop.
7
+
8
+ ---
9
+
10
+ ## Що ви можете робити
11
+
12
+ Після встановлення можна говорити прямо в Claude Desktop:
13
+
14
+ - *"Транскрибуй C:\Users\Me\Downloads\meeting.mp3"*
15
+ - *"Транскрибуй всі записи в цій теці й збережи кожен як текстовий файл"*
16
+ - *"Створи українські та англійські субтитри для цього відео"*
17
+ - *"Почни пакетне транскрибування всіх файлів у цій теці"*
18
+ - *"Скільки часу займе транскрибування цих файлів?"*
19
+ - *"Перевір, чи працює прискорення GPU"*
20
+
21
+ ---
22
+
23
+ ## Вимоги
24
+
25
+ 1. **Node.js 18 або новіше** — [nodejs.org](https://nodejs.org)
26
+ 2. **Бінарники whisper.cpp з підтримкою Vulkan GPU** — дивіться Крок 1
27
+ 3. **Файл моделі Whisper** — дивіться Крок 2
28
+ 4. **FFmpeg** — необхідний для відеофайлів і аудіоформатів, що не є WAV/MP3
29
+
30
+ ---
31
+
32
+ ## Крок 1 — Встановлення бінарників whisper.cpp
33
+
34
+ ### Варіант А — Готовий Vulkan-реліз (рекомендовано)
35
+
36
+ Завантажте `whisper-vulkan-win-x64.zip` зі [сторінки релізів](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0).
37
+
38
+ Це спеціальна збірка з увімкненим **Vulkan GPU-прискоренням**. Працює з GPU від AMD, NVIDIA та Intel — без потреби в окремих SDK від виробника.
39
+
40
+ Розпакуйте в `C:\whisper\Release\`. Ви маєте отримати такі файли:
41
+
42
+ ```
43
+ C:\whisper\Release\whisper-cli.exe
44
+ C:\whisper\Release\ggml-vulkan.dll
45
+ C:\whisper\Release\ggml.dll
46
+ C:\whisper\Release\ggml-base.dll
47
+ C:\whisper\Release\ggml-cpu.dll
48
+ C:\whisper\Release\whisper.dll
49
+ ```
50
+
51
+ Прискорення GPU вмикається автоматично — жодних додаткових налаштувань не потрібно.
52
+
53
+ ### Варіант Б — Збірка з вихідного коду
54
+
55
+ Потрібно: Git, CMake, Visual Studio Build Tools 2022+ з компонентом "Desktop development with C++", Vulkan SDK з [lunarg.com](https://vulkan.lunarg.com/sdk/home#windows).
56
+
57
+ ```
58
+ git clone https://github.com/ggml-org/whisper.cpp
59
+ cd whisper.cpp
60
+ cmake -B build -DGGML_VULKAN=ON -DCMAKE_BUILD_TYPE=Release
61
+ cmake --build build --config Release --target whisper-cli
62
+ ```
63
+
64
+ Скопіюйте бінарники з `build\bin\Release\` до `C:\whisper\Release\`.
65
+
66
+ > **Примітка:** Офіційні Windows-релізи whisper.cpp на GitHub не містять Vulkan-збірки. Використовуйте готовий реліз вище або компілюйте з вихідного коду з прапором `-DGGML_VULKAN=ON`.
67
+
68
+ ---
69
+
70
+ ## Крок 2 — Завантаження моделі Whisper
71
+
72
+ | Модель | Розмір | Швидкість | Точність | Найкраще для |
73
+ |---|---|---|---|---|
74
+ | `ggml-tiny.en.bin` | 75 МБ | Дуже швидко | Базова | Швидкі тести |
75
+ | `ggml-base.en.bin` | 142 МБ | Швидко | Добра | Щоденна англійська |
76
+ | `ggml-small.en.bin` | 466 МБ | Помірно | Краща | Важливі записи |
77
+ | `ggml-medium.en.bin` | 1.5 ГБ | Швидко на GPU | Дуже добра | Найвища якість англійської |
78
+ | `ggml-large-v3-turbo.bin` | 1.6 ГБ | Швидко на GPU | Відмінна | **Рекомендовано для пакетної обробки на GPU — ~у 6 разів швидше за large-v3 з мінімальною втратою точності** |
79
+ | `ggml-large-v3.bin` | 2.9 ГБ | Швидко на GPU | Відмінна | Багатомовний, максимальна точність |
80
+ | `ggml-medium.en-q5_0.bin` | 514 МБ | Швидко | Дуже добра | **Найкращий вибір для CPU-only англійської — висока точність при малому обсязі пам'яті** |
81
+ | `ggml-large-v3-turbo-q5_0.bin` | 547 МБ | Швидко | Відмінна | **Найкращий вибір для CPU-only багатомовного** |
82
+ | `ggml-large-v3-q5_0.bin` | 1.1 ГБ | Помірно на CPU | Відмінна | Багатомовний, сприятливий для CPU |
83
+
84
+ Використовуйте `download_model` у Claude Desktop для встановлення безпосередньо. Для **лише англійської**: `large-v3-turbo` (GPU) або `medium.en-q5_0` (CPU) — найкращий вибір. Для **багатомовного**: `large-v3-turbo` або `large-v3-turbo-q5_0` (CPU). Моделі лише для англійської (`*.en.bin`) виводять `[FOREIGN]` для не-англійського аудіо і не можуть використовуватися для інших мов.
85
+
86
+ ---
87
+
88
+ ## Крок 3 — Встановлення FFmpeg
89
+
90
+ FFmpeg потрібен для відеофайлів і аудіоформатів, що не є рідними.
91
+
92
+ Встановлення через winget:
93
+ ```
94
+ winget install ffmpeg
95
+ ```
96
+
97
+ Або завантажте з [ffmpeg.org](https://ffmpeg.org/download.html) і додайте до PATH.
98
+
99
+ Перевірка:
100
+ ```
101
+ ffmpeg -version
102
+ ```
103
+
104
+ ---
105
+
106
+ ## Крок 4 — Встановлення MCP-сервера
107
+
108
+ ```
109
+ npm install -g whisper-windows-mcp
110
+ ```
111
+
112
+ ---
113
+
114
+ ## Крок 5 — Налаштування Claude Desktop
115
+
116
+ Відкрийте Claude Desktop → Налаштування → Розробник → Редагувати конфігурацію.
117
+
118
+ Додайте запис `whisper`:
119
+
120
+ ```json
121
+ {
122
+ "mcpServers": {
123
+ "whisper": {
124
+ "command": "npx",
125
+ "args": ["-y", "whisper-windows-mcp"],
126
+ "env": {
127
+ "WHISPER_CLI_PATH": "C:\\whisper\\Release\\whisper-cli.exe",
128
+ "WHISPER_MODEL": "C:\\whisper\\models\\ggml-medium.en.bin"
129
+ }
130
+ }
131
+ }
132
+ }
133
+ ```
134
+
135
+ Розташування файлу конфігурації: `C:\Users\ВашеІм'я\AppData\Roaming\Claude\claude_desktop_config.json`
136
+
137
+ > Використовуйте **подвійний зворотній слеш** у всіх шляхах.
138
+
139
+ Збережіть і **повністю перезапустіть** Claude Desktop. Ви маєте побачити **whisper** у списку зі зеленим значком "запущено" в Налаштуваннях → Розробник.
140
+
141
+ ---
142
+
143
+ ## Крок 6 — Перевірка налаштування
144
+
145
+ У Claude Desktop запитайте:
146
+
147
+ > *"Перевір конфігурацію whisper"*
148
+
149
+ Потім:
150
+
151
+ > *"Перевір апаратне забезпечення системи"*
152
+
153
+ Це підтвердить, що ваш GPU визначено і прискорення Vulkan активне.
154
+
155
+ ---
156
+
157
+ ## Доступні інструменти
158
+
159
+ ### `transcribe_audio`
160
+ Транскрибує один файл. Підтримує блокувальний (типово) або фоновий режим для довгих файлів.
161
+
162
+ | Параметр | Опис |
163
+ |---|---|
164
+ | `file_path` | Абсолютний шлях до файлу (обов'язково) |
165
+ | `language` | Код мови (`uk`, `en`, `ja` тощо) або `auto` для автовизначення. Типово: `en` |
166
+ | `output_format` | `text` (типово), `timestamps`, `json` або `srt` |
167
+ | `save_to_file` | Зберегти транскрипцію як .txt поруч із вихідним файлом |
168
+ | `background` | Запустити як окреме завдання — одразу повертає ID завдання. Використовуйте `check_progress` для стеження. Рекомендовано для файлів понад 10 хвилин. |
169
+ | `threads` | Перевизначити кількість потоків CPU |
170
+ | `temperature` | Температура вибірки 0.0–1.0. Типово 0.0 (детерміновано). Вищі значення зменшують галюцинації на шумному аудіо. |
171
+ | `prompt` | Рядок попереднього контексту — підвищує точність для галузевої лексики або імен доповідачів. Приклад: `"Імена: Keemstar, DramaAlert."` |
172
+ | `condition_on_prev_text` | Повторно увімкнути контекстне обумовлення між сегментами. Типово false. |
173
+ | `beam_size` | Ширина пошуку за промінем. Вище = точніше, повільніше. Типово 5. |
174
+ | `best_of` | Кількість оцінюваних послідовностей-кандидатів. Типово 5. |
175
+ | `gpu_device` | Індекс пристрою GPU для багатогеркових систем. Типово 0. |
176
+ | `processors` | Кількість паралельних процесорів. Типово 1. |
177
+ | `word_timestamps` | Один рядок на слово з мітками часу. Корисно для вирівнювання кліпів. |
178
+ | `max_segment_length` | Максимальна довжина сегмента в символах. |
179
+ | `diarize` | Стерео-розрізнення доповідачів — потребує стерео аудіо з доповідачами на окремих каналах. |
180
+ | `vad_model` | Шлях до .bin-файлу моделі Silero VAD. Видаляє тишу перед транскрипцією — зменшує галюцинації у шумних файлах. |
181
+ | `offset_t` | Зміщення початку в мілісекундах. |
182
+ | `duration` | Тривалість опрацювання в мілісекундах від зміщення. |
183
+
184
+ ---
185
+
186
+ ### `check_progress`
187
+ Стежить за фоновим завданням транскрипції, запущеним через `transcribe_audio` (background=true).
188
+
189
+ Повертає минулий час, останню опрацьовану мітку часу, відсоток і повну транскрипцію після завершення.
190
+
191
+ | Параметр | Опис |
192
+ |---|---|
193
+ | `job_id` | ID завдання, повернений `transcribe_audio` |
194
+
195
+ ---
196
+
197
+ ### `start_batch`
198
+ Автоматично і послідовно транскрибує всі ще не транскрибовані файли в теці. Сортує за тривалістю (від найкоротших), опрацьовує по одному як фонові завдання, перевіряє кожен результат.
199
+
200
+ | Параметр | Опис |
201
+ |---|---|
202
+ | `folder_path` | Шлях до теки (обов'язково) |
203
+ | `language` | Код мови. Типово: `en` |
204
+ | `threads` | Перевизначити кількість потоків CPU |
205
+
206
+ ---
207
+
208
+ ### `check_batch_progress`
209
+ Стежить за запущеним пакетом. Автоматично переходить до наступного файлу після завершення поточного. Повертає загальний прогрес, поточний файл з міткою часу, очікуваний час завершення і файли з помилками.
210
+
211
+ | Параметр | Опис |
212
+ |---|---|
213
+ | `batch_id` | ID пакету, повернений `start_batch` |
214
+
215
+ ---
216
+
217
+ ### `transcribe_batch` (інтерактивний)
218
+ Опрацьовує файли по одному з попереднім переглядом і підтвердженням перед кожним. Корисно, коли хочеться переглядати результати в процесі.
219
+
220
+ | Параметр | Опис |
221
+ |---|---|
222
+ | `folder_path` | Шлях до теки (обов'язково) |
223
+ | `file_index` | Який файл опрацювати (нумерація з 1). Пропустіть, щоб спочатку показати список файлів. |
224
+ | `language` | Код мови. Типово: `en` |
225
+ | `recursive` | Включити підтеки |
226
+
227
+ ---
228
+
229
+ ### `generate_subtitles`
230
+ Створює файли субтитрів SRT. Підтримує автовизначення мови та вивід перекладу англійською.
231
+
232
+ | Параметр | Опис |
233
+ |---|---|
234
+ | `file_path` | Шлях до файлу (обов'язково) |
235
+ | `language` | Код мови або `auto` для автовизначення. Типово: `en` |
236
+ | `translate_to_english` | Також створити `.en.srt` з перекладом англійською. Застосовується лише якщо джерело — не англійська. |
237
+ | `threads` | Перевизначити кількість потоків CPU |
238
+
239
+ Коли запитуються обидва варіанти, поруч із джерелом зберігаються два файли:
240
+ - `назвафайлу.uk.srt` — рідна мова
241
+ - `назвафайлу.en.srt` — переклад англійською
242
+
243
+ > Вбудований переклад Whisper перекладає **лише на англійську**. Для інших цільових мов перекладайте вміст .srt-файлу окремо.
244
+
245
+ ---
246
+
247
+ ### `analyze_media`
248
+ Аналізує файл перед транскрипцією. Повертає тривалість, розмір, кодек і орієнтовний час транскрипції на CPU та GPU. Для теки показує всі файли у таблиці з можливістю сортування й статусом транскрипції.
249
+
250
+ | Параметр | Опис |
251
+ |---|---|
252
+ | `path` | Шлях до окремого файлу або теки (обов'язково) |
253
+ | `sort_by` | Для теки: `duration` (типово), `name` або `size` |
254
+
255
+ ---
256
+
257
+ ### `check_config`
258
+ Перевіряє, чи доступні whisper-cli.exe, файл моделі та FFmpeg. Запускайте це першим, якщо щось не працює.
259
+
260
+ ---
261
+
262
+ ### `list_models`
263
+ Перелічує всі встановлені файли моделей Whisper у вашій теці моделей. Показує ім'я файлу, розмір, чи активна модель, статус квантизації та рекомендовані випадки використання. Без мережевих запитів — лише читання локальної файлової системи.
264
+
265
+ ---
266
+
267
+ ### `download_model`
268
+ Завантажує модель Whisper безпосередньо з Hugging Face до вашої теки моделей. Приймає назву моделі (наприклад `large-v3-turbo`, `medium.en-q5_0`) і автоматично виконує завантаження. Завантажує лише з довірених просторів імен Hugging Face. Після завантаження активуйте через `switch_model`.
269
+
270
+ | Параметр | Опис |
271
+ |---|---|
272
+ | `model_name` | Назва моделі для завантаження, наприклад `large-v3-turbo`, `large-v3-turbo-q5_0`, `medium.en-q5_0` |
273
+
274
+ ---
275
+
276
+ ### `switch_model`
277
+ Перемикає активну модель Whisper для поточного сеансу без перезапуску Claude Desktop. Зміна діє лише в межах сеансу — після перезапуску не зберігається. Щоб зробити постійним, оновіть `WHISPER_MODEL` у конфігурації.
278
+
279
+ | Параметр | Опис |
280
+ |---|---|
281
+ | `model_name` | Ім'я файлу моделі (наприклад `ggml-large-v3-turbo.bin`) або повний шлях. Має бути `.bin`-файлом у налаштованій теці моделей. |
282
+
283
+ ---
284
+
285
+ ### `check_system`
286
+ Визначає апаратне забезпечення GPU і перевіряє доступність прискорення Vulkan. Повідомляє назву GPU, обсяг VRAM, наявність `ggml-vulkan.dll` і рекомендує найкращий розмір моделі для вашого обладнання.
287
+
288
+ ---
289
+
290
+ ## Підтримувані формати
291
+
292
+ | Тип | Формати |
293
+ |---|---|
294
+ | Рідні (без конвертування) | `mp3`, `wav` |
295
+ | Відео (автоконвертування через FFmpeg) | `mp4`, `mkv`, `avi`, `mov`, `webm`, `flv`, `wmv`, `m4v`, `ts`, `3gp` |
296
+ | Аудіо (автоконвертування через FFmpeg) | `m4a`, `ogg`, `flac` |
297
+
298
+ ---
299
+
300
+ ## Прискорення GPU
301
+
302
+ Готовий Vulkan-реліз автоматично вмикає прискорення GPU. Протестовано на AMD Radeon RX Vega 56 (GCN 5-го покоління). Будь-який GPU з підтримкою Vulkan 1.0+ має працювати, включно з NVIDIA та Intel Arc.
303
+
304
+ **Порівняння продуктивності (модель medium.en, аудіофайл ~5 хвилин):**
305
+
306
+ | Обладнання | Час |
307
+ |---|---|
308
+ | Лише CPU (Ryzen 7 2700x, 8 потоків) | 8–12 хвилин |
309
+ | GPU (Vega 56 через Vulkan) | 20–40 секунд |
310
+
311
+ Навантаження GPU під час транскрипції зазвичай становить 15–20% і повертається до простою між файлами. CPU зберігається близько 15%.
312
+
313
+ ---
314
+
315
+ ## Багатомовна підтримка
316
+
317
+ Whisper може автоматично визначати мову мовлення і транскрибувати нею. Вбудована модель перекладу перекладає **лише на англійську**.
318
+
319
+ Для найкращої точності у багатомовному режимі використовуйте модель `large-v3`. Моделі лише для англійської (`*.en.bin`) не можуть визначати або транскрибувати інші мови.
320
+
321
+ **Приклад — іноземне відео із субтитрами:**
322
+ 1. Попросіть Claude створити субтитри з `language=auto` і `translate_to_english=true`
323
+ 2. Whisper визначає мову і створює SRT рідною мовою
324
+ 3. Другий прохід створює SRT з перекладом англійською
325
+ 4. Завантажте будь-який файл у VLC через Субтитри → Додати файл субтитрів
326
+
327
+ ---
328
+
329
+ ## Розроблено для користувачів безкоштовного плану
330
+
331
+ Цей інструмент створено, щоб мінімізувати взаємодію з Claude API. Увесь робочий процес транскрипції — сканування, аналіз, черга, виконання, перевірка — розроблено так, щоб вимагати якомога менше взаємодій з Claude. Важка робота виконується локально на вашому комп'ютері.
332
+
333
+ ---
334
+
335
+ ## Додаткові змінні середовища
336
+
337
+ | Змінна | Опис |
338
+ |---|---|
339
+ | `WHISPER_CLI_PATH` | Шлях до whisper-cli.exe (обов'язково) |
340
+ | `WHISPER_MODEL` | Шлях до файлу моделі .bin (обов'язково) |
341
+ | `WHISPER_THREADS` | Перевизначити кількість потоків CPU |
342
+ | `FFMPEG_PATH` | Шлях до ffmpeg, якщо його немає в системному PATH |
343
+ | `WHISPER_PRIVACY_MODE` | **Планується.** При значенні `true` відповіді інструментів повертають лише метадані — жодний текст транскрипції не передається Claude. Для регульованого або конфіденційного контенту. Дивіться [PRIVACY.md](PRIVACY.md). |
344
+
345
+ ---
346
+
347
+ ## Усунення несправностей
348
+
349
+ Детальні рішення — у [TROUBLESHOOTING.md](TROUBLESHOOTING.md). Якщо ви працюєте з регульованим контентом, дивіться також [PRIVACY.md](PRIVACY.md).
350
+
351
+ Швидкий контрольний список:
352
+ - Шляхи в конфігурації використовують **подвійний зворотній слеш** (`C:\\whisper\\...`)
353
+ - `whisper-cli.exe` існує за налаштованим шляхом
354
+ - Файл моделі `.bin` існує за налаштованим шляхом
355
+ - FFmpeg встановлено і доступно в PATH (`ffmpeg -version` працює)
356
+ - Claude Desktop **повністю перезапущено** після редагування конфігурації
357
+ - Whisper відображається як **запущено** (зелений значок) у Налаштуваннях → Розробник
358
+
359
+ ---
360
+
361
+ ## Безпека та конфіденційність
362
+
363
+ whisper-windows-mcp розроблено з безпекою як основним принципом.
364
+
365
+ **Аудіо ніколи не покидає ваш комп'ютер.** Жодні аудіо- чи відеофайли, шляхи до файлів або телеметрія не передаються на жодний сервер. Для основних функцій хмарні API не потрібні.
366
+
367
+ **Текст транскрипції та межа API.** Коли відповідь інструменту містить текст транскрипції, цей текст опрацьовується API Claude — він покидає ваш локальний комп'ютер. Для більшості користувачів (публічний контент, подкасти, записи стрімів) це очікувана поведінка. Якщо ви працюєте з медичними, юридичними, фінансовими чи іншими регульованими записами, дивіться [PRIVACY.md](PRIVACY.md) для отримання рекомендацій щодо відповідності та параметрів налаштування.
368
+
369
+ Планується змінна середовища `WHISPER_PRIVACY_MODE`, яка обмежить усі відповіді інструментів лише метаданими (ім'я файлу, тривалість, кількість слів) — жодний текст транскрипції не повертатиметься Claude. Це правильне налаштування для регульованого або конфіденційного контенту.
370
+
371
+ **Перевірка вхідних даних.** Усі шляхи до файлів перевіряються перед використанням — UNC-шляхи (`\\server\share`) та послідовності обходу теки (`..`) відхиляються. Файли понад 10 ГБ відхиляються для запобігання вичерпанню ресурсів.
372
+
373
+ **Усвідомлення ін'єкції транскрипції.** Аудіофайли можуть містити вимовлений контент, який після транскрипції нагадує інструкції. Вбудований захист Claude впорається з цим, але варто знати, що сам MCP-сервер обробляє вміст транскрипції як дані — ніколи як інструкції.
374
+
375
+ **Завантаження моделей обмежено.** Інструмент `download_model` завантажує лише з двох довірених просторів імен Hugging Face (`ggerganov/whisper.cpp` і `ggml-org`). Довільні URL-адреси відхиляються. Переспрямування перевіряються за списком дозволених перед виконанням.
376
+
377
+ **Перемикання моделей у пісочниці.** `switch_model` приймає лише `.bin`-файли з налаштованої теки моделей. Шляхи за межами цієї теки відхиляються.
378
+
379
+ **Жодних нових мережевих залежностей.** Завантаження моделей використовує вбудований `https` Node.js — жодні зовнішні HTTP-бібліотеки не додаються до пакету.
380
+
381
+ ---
382
+
383
+ ## Ліцензія
384
+
385
+ **Некомерційне використання:** MIT — безкоштовно для особистого, освітнього та некомерційного використання. Дивіться [LICENSE](LICENSE).
386
+
387
+ **Комерційне використання:** Для будь-якого бізнес-, професійного або комерційного використання необхідна окрема комерційна ліцензійна угода. Умови та контактна інформація — у [LICENSE-COMMERCIAL.md](LICENSE-COMMERCIAL.md).
388
+
389
+ ## Внески
390
+
391
+ Pull requests вітаються. Дивіться [ROADMAP.md](ROADMAP.md) для запланованих функцій.
392
+
393
+ Якщо ви тестували прискорення GPU на обладнанні, не вказаному вище, будь ласка, відкрийте issue з результатами — модель GPU, обсяг VRAM, розмір моделі та спостережувана пропускна здатність.