Files
dobetternorge-tools/includes/mcp-tool-translations.php
T
daveadmin 1bfafa9908 Localize mcp.php + add mcp-tool.php detail pages for all 19 MCP tools
- Replace all hardcoded English strings in mcp.php with dbnToolsT() calls
- Add 44 MCP UI chrome translation keys to includes/i18n.php (en/no/uk/pl)
- Generate includes/mcp-tool-translations.php with tool names, descriptions,
  and parameter docs translated into Norwegian, Ukrainian, and Polish via Azure OpenAI
- Create mcp-tool.php: parameterized detail page (?tool=dbn.slug) with parameter
  table, example request/response JSON, and privacy section, all localized
- Add "View details →" links on tool cards in mcp.php (shown on expand)
- Add translations/mcp-chrome.php and scripts/generate-mcp-translations.php

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 12:05:07 +02:00

971 lines
48 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
// MCP tool translations — display_name, description, param descriptions
// DO NOT EDIT MANUALLY — regenerate with scripts/generate-mcp-translations.php
return array (
'dbn.search_legal' =>
array (
'en' =>
array (
'display_name' => 'Search DBN legal corpus',
'description' => 'Search the DBN Norwegian family-law corpus.',
'params' =>
array (
'query' => 'The search query (minimum 3 characters). Enter a legal topic, keyword, or question.',
'language' => 'Response language: en, no, uk, pl, or auto (detect from input).',
'limit' => 'Maximum number of results to return (110).',
'corpus_scope' => 'Which corpus to search: shared (public legal corpus), private (your uploaded documents), or both.',
),
),
'no' =>
array (
'display_name' => 'Søk i DBN juridisk korpus',
'description' => 'Søk i DBN norsk familierett korpus.',
'params' =>
array (
'query' => 'Søketeksten (minimum 3 tegn). Skriv inn et juridisk emne, nøkkelord eller spørsmål.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto (oppdages fra input).',
'limit' => 'Maksimalt antall resultater som skal returneres (110).',
'corpus_scope' => 'Hvilket korpus skal søkes i: delt (offentlig juridisk korpus), privat (dine opplastede dokumenter), eller begge.',
),
),
'uk' =>
array (
'display_name' => 'Пошук юридичного корпусу DBN',
'description' => 'Пошук норвезького корпусу сімейного права DBN.',
'params' =>
array (
'query' => 'Пошуковий запит (мінімум 3 символи). Введіть юридичну тему, ключове слово або запитання.',
'language' => 'Мова відповіді: en, no, uk, pl або auto (виявити з введення).',
'limit' => 'Максимальна кількість результатів для повернення (1–10).',
'corpus_scope' => 'Який корпус шукати: спільний (публічний юридичний корпус), приватний (ваші завантажені документи) або обидва.',
),
),
'pl' =>
array (
'display_name' => 'Szukaj w korpusie prawnym DBN',
'description' => 'Szukaj w norweskim korpusie prawa rodzinnego DBN.',
'params' =>
array (
'query' => 'Zapytanie wyszukiwania (minimum 3 znaki). Wprowadź temat prawny, słowo kluczowe lub pytanie.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto (wykrywanie na podstawie wejścia).',
'limit' => 'Maksymalna liczba wyników do zwrócenia (110).',
'corpus_scope' => 'Który korpus przeszukać: wspólny (publiczny korpus prawny), prywatny (twoje przesłane dokumenty) lub oba.',
),
),
),
'dbn.ask' =>
array (
'en' =>
array (
'display_name' => 'Ask a legal question',
'description' => 'Answer a legal preparation question with source-grounded DBN context.',
'params' =>
array (
'question' => 'The legal question to answer (minimum 5 characters).',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Still et juridisk spørsmål',
'description' => 'Svar på et juridisk forberedelsesspørsmål med kildebasert DBN kontekst.',
'params' =>
array (
'question' => 'Det juridiske spørsmålet som skal besvares (minimum 5 tegn).',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_case_context' => 'Inkluder kontekst fra din Case Workbench økt (true/false).',
),
),
'uk' =>
array (
'display_name' => 'Задати юридичне питання',
'description' => 'Відповісти на питання підготовки до суду з контекстом, основаним на DBN.',
'params' =>
array (
'question' => 'Юридичне питання для відповіді (мінімум 5 символів).',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (true/false).',
),
),
'pl' =>
array (
'display_name' => 'Zadaj pytanie prawne',
'description' => 'Odpowiedz na pytanie dotyczące przygotowania prawnego z kontekstem opartym na źródłach DBN.',
'params' =>
array (
'question' => 'Pytanie prawne do odpowiedzi (minimum 5 znaków).',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.summarize' =>
array (
'en' =>
array (
'display_name' => 'Summarize document',
'description' => 'Summarize pasted case text with optional legal-corpus enrichment.',
'params' =>
array (
'text' => 'The text to summarize.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_legal_corpus' => 'Enrich the summary with relevant legal corpus passages (true/false).',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Oppsummer dokument',
'description' => 'Oppsummer innlimt sakstekst med valgfri berikelse fra juridisk korpus.',
'params' =>
array (
'text' => 'Teksten som skal oppsummeres.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_legal_corpus' => 'Berik oppsummeringen med relevante passasjer fra juridisk korpus (true/false).',
'use_case_context' => 'Inkluder kontekst fra din Case Workbench økt (true/false).',
),
),
'uk' =>
array (
'display_name' => 'Підсумувати документ',
'description' => 'Підсумувати вставлений текст справи з можливим збагаченням юридичним корпусом.',
'params' =>
array (
'text' => 'Текст для підсумування.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_legal_corpus' => 'Збагачувати підсумок відповідними уривками з юридичного корпусу (true/false).',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (true/false).',
),
),
'pl' =>
array (
'display_name' => 'Podsumuj dokument',
'description' => 'Podsumuj wklejony tekst sprawy z opcjonalnym wzbogaceniem korpusu prawnego.',
'params' =>
array (
'text' => 'Tekst do podsumowania.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_legal_corpus' => 'Wzbogac podsumowanie o odpowiednie fragmenty korpusu prawnego (prawda/fałsz).',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.timeline' =>
array (
'en' =>
array (
'display_name' => 'Extract timeline',
'description' => 'Extract dates, hearings, milestones, and deadlines from case text.',
'params' =>
array (
'text' => 'The case text to extract dates from.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'focus' => 'What to extract: all (every date), deadlines (appeal windows and filing deadlines), hearings (tribunal and court dates), cps (Barnevernet milestones).',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Ekstraher tidslinje',
'description' => 'Ekstraher datoer, høringer, milepæler og frister fra sakstekst.',
'params' =>
array (
'text' => 'Saksteksten for å ekstrahere datoer fra.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'focus' => 'Hva som skal hentes ut: alle (hver dato), frister (klagefrister og innleveringsfrister), høringer (tribunal- og rettsdatoer), cps (Barnevernet milepæler).',
'use_case_context' => 'Inkluder kontekst fra din Case Workbench-økt (sann/usann).',
),
),
'uk' =>
array (
'display_name' => 'Витягти хронологію',
'description' => 'Витягти дати, слухання, етапи та терміни з тексту справи.',
'params' =>
array (
'text' => 'Текст справи для витягування дат.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'focus' => 'Що витягнути: всі (кожну дату), терміни (вікна апеляції та терміни подання), слухання (дати трибуналу та суду), cps (етапи Barnevernet).',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (так/ні).',
),
),
'pl' =>
array (
'display_name' => 'Wyodrębnij oś czasu',
'description' => 'Wyodrębnij daty, przesłuchania, kamienie milowe i terminy z tekstu sprawy.',
'params' =>
array (
'text' => 'Tekst sprawy, z którego należy wyodrębnić daty.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'focus' => 'Co wyodrębnić: wszystkie (wszystkie daty), terminy (okna odwoławcze i terminy składania), rozprawy (daty trybunałów i sądów), cps (kamienie milowe Barnevernet).',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.redact' =>
array (
'en' =>
array (
'display_name' => 'Redact private data',
'description' => 'Remove or pseudonymize names, IDs, phone numbers, addresses, and places.',
'params' =>
array (
'text' => 'The text to redact.',
'language' => 'Language of the input text: en, no, uk, pl, or auto.',
'mode' => 'Redaction scope: standard (names, IDs, phones) or strict (also addresses, locations, institutions).',
'output_format' => 'Replacement style: contextual ([PERSON A]), generic (█████), or pseudonym (consistent invented names).',
),
),
'no' =>
array (
'display_name' => 'Rediger private data',
'description' => 'Fjern eller pseudonymiser navn, ID-er, telefonnumre, adresser og steder.',
'params' =>
array (
'text' => 'Teksten som skal redigeres.',
'language' => 'Språk for innholdsteksten: en, no, uk, pl, eller auto.',
'mode' => 'Redigeringsomfang: standard (navn, ID-er, telefoner) eller strengt (også adresser, steder, institusjoner).',
'output_format' => 'Erstatningsstil: kontekstuell ([PERSON A]), generell (█████), eller pseudonym (konsistente oppdiktede navn).',
),
),
'uk' =>
array (
'display_name' => 'Редагувати приватні дані',
'description' => 'Видалити або псевдонімізувати імена, ідентифікаційні номери, номери телефонів, адреси та місця.',
'params' =>
array (
'text' => 'Текст для редагування.',
'language' => 'Мова вхідного тексту: en, no, uk, pl або auto.',
'mode' => 'Обсяг редагування: стандартний (імена, ідентифікаційні номери, телефони) або строгий (також адреси, місця, установи).',
'output_format' => 'Стиль заміни: контекстуальний ([PERSON A]), загальний (█████) або псевдонім (послідовно вигадані імена).',
),
),
'pl' =>
array (
'display_name' => 'Redaguj dane prywatne',
'description' => 'Usuń lub zanonimizuj imiona, identyfikatory, numery telefonów, adresy i miejsca.',
'params' =>
array (
'text' => 'Tekst do redakcji.',
'language' => 'Język tekstu wejściowego: en, no, uk, pl lub auto.',
'mode' => 'Zakres redakcji: standardowy (imiona, identyfikatory, telefony) lub ścisły (także adresy, lokalizacje, instytucje).',
'output_format' => 'Styl zastąpienia: kontekstowy ([OSOBA A]), ogólny (█████) lub pseudonim (spójne wymyślone imiona).',
),
),
),
'dbn.translate' =>
array (
'en' =>
array (
'display_name' => 'Translate legal document',
'description' => 'Translate Norwegian family-law text with legal terminology annotations.',
'params' =>
array (
'text' => 'The text to translate.',
'source_lang' => 'Language of the input text. Use auto to detect automatically.',
'target_lang' => 'Language to translate into (required): en, no, uk, or pl.',
'doc_type' => 'Document type hint for legal terminology: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd, or other.',
),
),
'no' =>
array (
'display_name' => 'Oversett juridisk dokument',
'description' => 'Oversett norsk familierettstekst med juridiske terminologianotasjoner.',
'params' =>
array (
'text' => 'Teksten som skal oversettes.',
'source_lang' => 'Språk for innholdsteksten. Bruk auto for automatisk deteksjon.',
'target_lang' => 'Språk å oversette til (påkrevd): en, no, uk, eller pl.',
'doc_type' => 'Dokumenttypehint for juridisk terminologi: auto, barnevernet, adopsjon, akutt, samvær, fylkesnemnd, eller annet.',
),
),
'uk' =>
array (
'display_name' => 'Перекласти юридичний документ',
'description' => 'Перекласти текст норвезького сімейного права з анотаціями юридичної термінології.',
'params' =>
array (
'text' => 'Текст для перекладу.',
'source_lang' => 'Мова вхідного тексту. Використовуйте auto для автоматичного визначення.',
'target_lang' => 'Мова для перекладу (обов\'язково): en, no, uk або pl.',
'doc_type' => 'Підказка щодо типу документа для юридичної термінології: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd або інше.',
),
),
'pl' =>
array (
'display_name' => 'Przetłumacz dokument prawny',
'description' => 'Przetłumacz tekst dotyczący prawa rodzinnego w Norwegii z adnotacjami terminologii prawnej.',
'params' =>
array (
'text' => 'Tekst do przetłumaczenia.',
'source_lang' => 'Język tekstu wejściowego. Użyj auto, aby wykryć automatycznie.',
'target_lang' => 'Język, na który należy przetłumaczyć (wymagane): en, no, uk lub pl.',
'doc_type' => 'Wskazówka dotycząca typu dokumentu dla terminologii prawnej: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd lub inne.',
),
),
),
'dbn.legal_analysis' =>
array (
'en' =>
array (
'display_name' => 'Legal analysis',
'description' => 'Extract legal issues from a document and answer each with DBN legal context.',
'params' =>
array (
'text' => 'The document text to analyze.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'doc_type' => 'Document type hint: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd, or other.',
),
),
'no' =>
array (
'display_name' => 'Juridisk analyse',
'description' => 'Hent ut juridiske spørsmål fra et dokument og svar på hver med DBN juridisk kontekst.',
'params' =>
array (
'text' => 'Dokumentteksten som skal analyseres.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'doc_type' => 'Dokumenttypehint: auto, barnevernet, adopsjon, akutt, samvær, fylkesnemnd, eller annet.',
),
),
'uk' =>
array (
'display_name' => 'Юридичний аналіз',
'description' => 'Витягти юридичні питання з документа та відповісти на кожне з контекстом DBN.',
'params' =>
array (
'text' => 'Текст документа для аналізу.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'doc_type' => 'Підказка щодо типу документа: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd або інше.',
),
),
'pl' =>
array (
'display_name' => 'Analiza prawna',
'description' => 'Wyodrębnij kwestie prawne z dokumentu i odpowiedz na każdą z kontekstem prawnym DBN.',
'params' =>
array (
'text' => 'Tekst dokumentu do analizy.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'doc_type' => 'Wskazówka dotycząca typu dokumentu: auto, barnevernet, adopsjon, emergency, samvaer, fylkesnemnd lub inne.',
),
),
),
'dbn.korrespond' =>
array (
'en' =>
array (
'display_name' => 'Draft authority correspondence',
'description' => 'Draft a reply or new letter to Norwegian authorities.',
'params' =>
array (
'narrative' => 'Description of your situation — what happened and what you need.',
'received_text' => 'Text of the letter or decision you received (for reply mode).',
'recipient_body' => 'The authority you are writing to (e.g. Barnevernet, NAV, Skole, Kommune).',
'goal' => 'Your legal goal — what you want the letter to achieve.',
'mode' => 'reply (responding to a received letter) or initiate (starting new correspondence).',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
'force_draft' => 'Skip the clarify gate and draft immediately (true/false).',
),
),
'no' =>
array (
'display_name' => 'Utkast til myndighetskorrespondanse',
'description' => 'Utkast et svar eller nytt brev til norske myndigheter.',
'params' =>
array (
'narrative' => 'Beskrivelse av din situasjon — hva som skjedde og hva du trenger.',
'received_text' => 'Tekst av brevet eller vedtaket du mottok (for svarmodus).',
'recipient_body' => 'Myndigheten du skriver til (f.eks. Barnevernet, NAV, Skole, Kommune).',
'goal' => 'Ditt juridiske mål — hva du ønsker at brevet skal oppnå.',
'mode' => 'svar (respondere på et mottatt brev) eller initiere (starte ny korrespondanse).',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_case_context' => 'Inkluder kontekst fra din Sak Arbeidsbenk økt (true/false).',
'force_draft' => 'Hopp over avklaringsporten og utkast umiddelbart (true/false).',
),
),
'uk' =>
array (
'display_name' => 'Проект кореспонденції з органами влади',
'description' => 'Складіть відповідь або новий лист до норвезьких органів влади.',
'params' =>
array (
'narrative' => 'Опис вашої ситуації — що сталося і що вам потрібно.',
'received_text' => 'Текст листа або рішення, яке ви отримали (для режиму відповіді).',
'recipient_body' => 'Орган влади, до якого ви пишете (наприклад, Barnevernet, NAV, Skole, Kommune).',
'goal' => 'Ваша юридична мета — що ви хочете досягти листом.',
'mode' => 'відповідь (реагування на отриманий лист) або ініціювати (початок нової кореспонденції).',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (так/ні).',
'force_draft' => 'Пропустити етап уточнення та одразу скласти проект (так/ні).',
),
),
'pl' =>
array (
'display_name' => 'Szkic korespondencji z organami',
'description' => 'Szkic odpowiedzi lub nowego listu do norweskich organów.',
'params' =>
array (
'narrative' => 'Opis twojej sytuacji — co się wydarzyło i czego potrzebujesz.',
'received_text' => 'Treść listu lub decyzji, którą otrzymałeś (w trybie odpowiedzi).',
'recipient_body' => 'Organ, do którego piszesz (np. Barnevernet, NAV, Skole, Kommune).',
'goal' => 'Twój cel prawny — co chcesz osiągnąć dzięki temu listowi.',
'mode' => 'odpowiedź (odpowiadając na otrzymany list) lub inicjacja (rozpoczynając nową korespondencję).',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
'force_draft' => 'Pomiń bramkę wyjaśniającą i natychmiast stwórz szkic (prawda/fałsz).',
),
),
),
'dbn.barnevernet_analyze' =>
array (
'en' =>
array (
'display_name' => 'Analyze Barnevernet document',
'description' => 'Analyze child-welfare documents for red flags and legal issues.',
'params' =>
array (
'document_text' => 'Full text of the child welfare document to analyze (required).',
'filename' => 'Original filename for context (helps identify document type).',
'advocate_role' => 'Your role in the case: parent, lawyer, guardian ad litem, etc.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Analyser Barnevernet-dokument',
'description' => 'Analyser barnevern-dokumenter for røde flagg og juridiske problemer.',
'params' =>
array (
'document_text' => 'Full tekst av barnevern-dokumentet som skal analyseres (påkrevd).',
'filename' => 'Original filnavn for kontekst (hjelper med å identifisere dokumenttype).',
'advocate_role' => 'Din rolle i saken: forelder, advokat, vergemål, osv.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_case_context' => 'Inkluder kontekst fra din Sak Arbeidsbenk økt (true/false).',
),
),
'uk' =>
array (
'display_name' => 'Аналіз документа Barnevernet',
'description' => 'Аналізуйте документи з питань захисту дітей на наявність червоних прапорців та юридичних проблем.',
'params' =>
array (
'document_text' => 'Повний текст документа з питань захисту дітей для аналізу (обов\'язково).',
'filename' => 'Оригінальна назва файлу для контексту (допомагає визначити тип документа).',
'advocate_role' => 'Ваша роль у справі: батько, адвокат, опікун, призначений судом тощо.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (так/ні).',
),
),
'pl' =>
array (
'display_name' => 'Analiza dokumentu Barnevernet',
'description' => 'Analiza dokumentów dotyczących opieki nad dziećmi w poszukiwaniu czerwonych flag i problemów prawnych.',
'params' =>
array (
'document_text' => 'Pełny tekst dokumentu dotyczącego opieki nad dziećmi do analizy (wymagane).',
'filename' => 'Oryginalna nazwa pliku dla kontekstu (pomaga zidentyfikować typ dokumentu).',
'advocate_role' => 'Twoja rola w sprawie: rodzic, prawnik, kurator ad litem itp.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.advocate_brief' =>
array (
'en' =>
array (
'display_name' => 'Create advocate brief',
'description' => 'Generate a source-grounded brief for a chosen party or role.',
'params' =>
array (
'query' => 'Legal question or topic for the brief.',
'paste_text' => 'Document text to use as the basis for the brief.',
'advocate_role' => 'The party or role to advocate for (required). E.g. parent, child, Barnevernet.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Opprett advokatnotat',
'description' => 'Generer et kildebasert notat for en valgt part eller rolle.',
'params' =>
array (
'query' => 'Juridisk spørsmål eller tema for notatet.',
'paste_text' => 'Dokumenttekst som skal brukes som grunnlag for brevet.',
'advocate_role' => 'Parten eller rollen som skal ivaretas (obligatorisk). F.eks. forelder, barn, Barnevernet.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_case_context' => 'Inkluder kontekst fra din Case Workbench-økt (sann/usann).',
),
),
'uk' =>
array (
'display_name' => 'Створити бриф адвоката',
'description' => 'Сгенеруйте бриф, оснований на джерелах, для обраної сторони або ролі.',
'params' =>
array (
'query' => 'Юридичне питання або тема для брифу.',
'paste_text' => 'Текст документа, який буде використано як основу для брифу.',
'advocate_role' => 'Сторона або роль, за яку потрібно виступити (обов\'язково). Наприклад, батько, дитина, Barnevernet.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (так/ні).',
),
),
'pl' =>
array (
'display_name' => 'Utwórz notatkę adwokacką',
'description' => 'Generuj notatkę opartą na źródłach dla wybranej strony lub roli.',
'params' =>
array (
'query' => 'Pytanie prawne lub temat notatki.',
'paste_text' => 'Tekst dokumentu do wykorzystania jako podstawa dla briefu.',
'advocate_role' => 'Strona lub rola, którą należy reprezentować (wymagana). Np. rodzic, dziecko, Barnevernet.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.deep_research' =>
array (
'en' =>
array (
'display_name' => 'Deep research',
'description' => 'Expand a legal question into research angles and synthesize a cited brief.',
'params' =>
array (
'query' => 'Legal question to research in depth.',
'paste_text' => 'Supporting document text to research from.',
'language' => 'Response language: en, no, uk, pl, or auto.',
'use_case_context' => 'Include context from your Case Workbench session (true/false).',
),
),
'no' =>
array (
'display_name' => 'Dyp forskning',
'description' => 'Utvid et juridisk spørsmål til forskningsvinkler og syntetiser et siterbart brev.',
'params' =>
array (
'query' => 'Juridisk spørsmål for dypere forskning.',
'paste_text' => 'Støttedokumenttekst for forskning.',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
'use_case_context' => 'Inkluder kontekst fra din Case Workbench-økt (sann/usann).',
),
),
'uk' =>
array (
'display_name' => 'Глибоке дослідження',
'description' => 'Розширити юридичне питання в дослідницькі кути та синтезувати цитований бриф.',
'params' =>
array (
'query' => 'Юридичне питання для глибокого дослідження.',
'paste_text' => 'Текст підтримуючого документа для дослідження.',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
'use_case_context' => 'Включити контекст з вашої сесії Case Workbench (так/ні).',
),
),
'pl' =>
array (
'display_name' => 'Dogłębne badania',
'description' => 'Rozwiń pytanie prawne w kierunkach badawczych i zsyntetyzuj cytowany brief.',
'params' =>
array (
'query' => 'Pytanie prawne do zbadania w szczegółach.',
'paste_text' => 'Tekst dokumentu wspierającego do badania.',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
'use_case_context' => 'Uwzględnij kontekst z sesji Case Workbench (prawda/fałsz).',
),
),
),
'dbn.discrepancy_find' =>
array (
'en' =>
array (
'display_name' => 'Find document discrepancies',
'description' => 'Compare two document versions for contradictions, deletions, and added claims.',
'params' =>
array (
'document_a_text' => 'Text of the first document (required).',
'document_b_text' => 'Text of the second document to compare against the first (required).',
'filename_a' => 'Filename of the first document (for reference in the report).',
'filename_b' => 'Filename of the second document (for reference in the report).',
'language' => 'Response language: en, no, uk, pl, or auto.',
),
),
'no' =>
array (
'display_name' => 'Finn dokumentavvik',
'description' => 'Sammenlign to dokumentversjoner for motsetninger, slettinger og tillegg.',
'params' =>
array (
'document_a_text' => 'Tekst av det første dokumentet (obligatorisk).',
'document_b_text' => 'Tekst av det andre dokumentet som skal sammenlignes med det første (obligatorisk).',
'filename_a' => 'Filnavn på det første dokumentet (for referanse i rapporten).',
'filename_b' => 'Filnavn på det andre dokumentet (for referanse i rapporten).',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
),
),
'uk' =>
array (
'display_name' => 'Знайти розбіжності в документах',
'description' => 'Порівняти дві версії документа на наявність суперечностей, видалень та доданих вимог.',
'params' =>
array (
'document_a_text' => 'Текст першого документа (обов\'язково).',
'document_b_text' => 'Текст другого документа для порівняння з першим (обов\'язково).',
'filename_a' => 'Ім\'я файлу першого документа (для посилання в звіті).',
'filename_b' => 'Ім\'я файлу другого документа (для посилання в звіті).',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
),
),
'pl' =>
array (
'display_name' => 'Znajdź niezgodności w dokumentach',
'description' => 'Porównaj dwie wersje dokumentu pod kątem sprzeczności, usunięć i dodanych roszczeń.',
'params' =>
array (
'document_a_text' => 'Tekst pierwszego dokumentu (wymagany).',
'document_b_text' => 'Tekst drugiego dokumentu do porównania z pierwszym (wymagany).',
'filename_a' => 'Nazwa pliku pierwszego dokumentu (do odniesienia w raporcie).',
'filename_b' => 'Nazwa pliku drugiego dokumentu (do odniesienia w raporcie).',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
),
),
),
'dbn.transcribe_audio' =>
array (
'en' =>
array (
'display_name' => 'Transcribe audio',
'description' => 'Transcribe an audio file from base64-encoded content or a URL.',
'params' =>
array (
'audio_base64' => 'Base64-encoded audio file content. Use either this or audio_url.',
'audio_url' => 'URL to a publicly accessible audio file. Use either this or audio_base64.',
'filename' => 'Original filename with extension (e.g. recording.mp3) — helps set the correct audio format.',
'language' => 'Language spoken in the audio (e.g. no, en, uk). Leave blank for auto-detection.',
'diarize' => 'Enable speaker diarization — label each segment with a speaker identifier (true/false).',
),
),
'no' =>
array (
'display_name' => 'Transkribere lyd',
'description' => 'Transkribere en lydfil fra base64-kodet innhold eller en URL.',
'params' =>
array (
'audio_base64' => 'Base64-kodet lydfilinnhold. Bruk enten dette eller audio_url.',
'audio_url' => 'URL til en offentlig tilgjengelig lydfil. Bruk enten dette eller audio_base64.',
'filename' => 'Original filnavn med filtype (f.eks. opptak.mp3) — hjelper med å sette riktig lydformat.',
'language' => 'Språk som snakkes i lyden (f.eks. no, en, uk). La stå tomt for automatisk deteksjon.',
'diarize' => 'Aktiver taler diarization — merk hvert segment med en taleridentifikator (sann/usann).',
),
),
'uk' =>
array (
'display_name' => 'Транскрибувати аудіо',
'description' => 'Транскрибувати аудіофайл з вмісту, закодованого в base64, або з URL.',
'params' =>
array (
'audio_base64' => 'Вміст аудіофайлу, закодованого в base64. Використовуйте або це, або audio_url.',
'audio_url' => 'URL до публічно доступного аудіофайлу. Використовуйте або це, або audio_base64.',
'filename' => 'Оригінальна назва файлу з розширенням (наприклад, recording.mp3) — допомагає встановити правильний формат аудіо.',
'language' => 'Мова, що звучить в аудіо (наприклад, no, en, uk). Залиште порожнім для автоматичного визначення.',
'diarize' => 'Увімкнути діаризацію спікерів — позначити кожен сегмент ідентифікатором спікера (true/false).',
),
),
'pl' =>
array (
'display_name' => 'Transkrypcja audio',
'description' => 'Transkrybuj plik audio z treści zakodowanej w base64 lub z URL.',
'params' =>
array (
'audio_base64' => 'Treść pliku audio zakodowanego w base64. Użyj tego lub audio_url.',
'audio_url' => 'URL do publicznie dostępnego pliku audio. Użyj tego lub audio_base64.',
'filename' => 'Oryginalna nazwa pliku z rozszerzeniem (np. recording.mp3) — pomaga ustawić poprawny format audio.',
'language' => 'Język mówiony w nagraniu (np. no, en, uk). Pozostaw puste dla automatycznego wykrywania.',
'diarize' => 'Włącz diarizację mówców — oznacz każdy segment identyfikatorem mówcy (prawda/fałsz).',
),
),
),
'dbn.corpus_stats' =>
array (
'en' =>
array (
'display_name' => 'Corpus statistics',
'description' => 'Return document and chunk counts and active legal sources in the DBN corpus.',
'params' =>
array (
),
),
'no' =>
array (
'display_name' => 'Korpusstatistikk',
'description' => 'Returner dokument- og delmengdeantall samt aktive juridiske kilder i DBN-korpuset.',
'params' =>
array (
),
),
'uk' =>
array (
'display_name' => 'Статистика корпусу',
'description' => 'Повернути кількість документів і частин, а також активні юридичні джерела в корпусі DBN.',
'params' =>
array (
),
),
'pl' =>
array (
'display_name' => 'Statystyki korpusu',
'description' => 'Zwróć liczbę dokumentów i fragmentów oraz aktywne źródła prawne w korpusie DBN.',
'params' =>
array (
),
),
),
'dbn.list_documents' =>
array (
'en' =>
array (
'display_name' => 'List corpus documents',
'description' => 'List DBN legal corpus documents with optional filters.',
'params' =>
array (
'category' => 'Filter by document category (e.g. barnevernet, statsforvalter, echr).',
'title' => 'Filter by title — partial match.',
'limit' => 'Maximum number of documents to return (150, default 20).',
'offset' => 'Number of documents to skip (for pagination).',
),
),
'no' =>
array (
'display_name' => 'List opp korpusdokumenter',
'description' => 'List opp DBN juridiske korpusdokumenter med valgfrie filtre.',
'params' =>
array (
'category' => 'Filtrer etter dokumentkategori (f.eks. barnevernet, statsforvalter, echr).',
'title' => 'Filtrer etter tittel — delvis samsvar.',
'limit' => 'Maksimalt antall dokumenter som skal returneres (150, standard 20).',
'offset' => 'Antall dokumenter som skal hoppes over (for paginering).',
),
),
'uk' =>
array (
'display_name' => 'Список документів корпусу',
'description' => 'Список юридичних документів корпусу DBN з необов\'язковими фільтрами.',
'params' =>
array (
'category' => 'Фільтрувати за категорією документа (наприклад, barnevernet, statsforvalter, echr).',
'title' => 'Фільтрувати за назвою — часткове співпадіння.',
'limit' => 'Максимальна кількість документів для повернення (1–50, за замовчуванням 20).',
'offset' => 'Кількість документів, які потрібно пропустити (для пагінації).',
),
),
'pl' =>
array (
'display_name' => 'Lista dokumentów korpusu',
'description' => 'Lista dokumentów prawnych korpusu DBN z opcjonalnymi filtrami.',
'params' =>
array (
'category' => 'Filtruj według kategorii dokumentu (np. barnevernet, statsforvalter, echr).',
'title' => 'Filtruj według tytułu — częściowe dopasowanie.',
'limit' => 'Maksymalna liczba dokumentów do zwrócenia (150, domyślnie 20).',
'offset' => 'Liczba dokumentów do pominięcia (do paginacji).',
),
),
),
'dbn.get_document' =>
array (
'en' =>
array (
'display_name' => 'Get document chunks',
'description' => 'Fetch a document and its text chunks by numeric document ID.',
'params' =>
array (
'document_id' => 'The numeric ID of the document to retrieve (required).',
),
),
'no' =>
array (
'display_name' => 'Hent dokumentdeler',
'description' => 'Hent et dokument og dets tekstdeler ved hjelp av numerisk dokument-ID.',
'params' =>
array (
'document_id' => 'Den numeriske ID-en til dokumentet som skal hentes (påkrevd).',
),
),
'uk' =>
array (
'display_name' => 'Отримати частини документа',
'description' => 'Отримати документ та його текстові частини за числовим ідентифікатором документа.',
'params' =>
array (
'document_id' => 'Числовий ідентифікатор документа для отримання (обов\'язково).',
),
),
'pl' =>
array (
'display_name' => 'Pobierz fragmenty dokumentu',
'description' => 'Pobierz dokument i jego fragmenty tekstowe według numerycznego ID dokumentu.',
'params' =>
array (
'document_id' => 'Numeryczne ID dokumentu do pobrania (wymagane).',
),
),
),
'dbn.citation_graph' =>
array (
'en' =>
array (
'display_name' => 'Explore citation graph',
'description' => 'Explore cites, cited-by, implementation, or chain relationships.',
'params' =>
array (
'doc_id' => 'The numeric ID of the document to explore (required).',
'action' => 'Relationship to traverse: cites, cited_by, implements, or chain (full citation path).',
'depth' => 'How many levels of relationships to explore (13, default 1).',
),
),
'no' =>
array (
'display_name' => 'Utforsk siteringsgraf',
'description' => 'Utforsk siteringer, siterte av, implementering eller kjede relasjoner.',
'params' =>
array (
'doc_id' => 'Den numeriske ID-en til dokumentet som skal utforskes (påkrevd).',
'action' => 'Relasjon å traversere: siterer, siteres_av, implementerer, eller kjede (full siteringsbane).',
'depth' => 'Hvor mange nivåer av relasjoner som skal utforskes (13, standard 1).',
),
),
'uk' =>
array (
'display_name' => 'Дослідити граф посилань',
'description' => 'Дослідити посилання, посилання на, реалізацію або ланцюгові відносини.',
'params' =>
array (
'doc_id' => 'Числовий ідентифікатор документа для дослідження (обов\'язково).',
'action' => 'Відношення для проходження: cites, cited_by, implements, або chain (повний шлях цитування).',
'depth' => 'Скільки рівнів відносин досліджувати (1–3, за замовчуванням 1).',
),
),
'pl' =>
array (
'display_name' => 'Eksploruj graf cytatów',
'description' => 'Eksploruj cytaty, cytowane przez, wdrożenie lub relacje łańcuchowe.',
'params' =>
array (
'doc_id' => 'Numeryczne ID dokumentu do eksploracji (wymagane).',
'action' => 'Relacja do przeszukania: cytaty, cytowane_przez, wdraża, lub łańcuch (pełna ścieżka cytatu).',
'depth' => 'Ile poziomów relacji do eksploracji (13, domyślnie 1).',
),
),
),
'dbn.case_workbench_plan' =>
array (
'en' =>
array (
'display_name' => 'Plan next case step',
'description' => 'Create a stateless legal preparation plan based on your situation.',
'params' =>
array (
'situation' => 'Describe your current legal situation and what you need help with (required).',
'goal' => 'Your desired outcome or legal goal.',
'deadline' => 'Any relevant deadline (date or description, e.g. "3 weeks").',
'language' => 'Response language: en, no, uk, pl, or auto.',
),
),
'no' =>
array (
'display_name' => 'Planlegg neste sakstrinn',
'description' => 'Lag en statsløs juridisk forberedelsesplan basert på din situasjon.',
'params' =>
array (
'situation' => 'Beskriv din nåværende juridiske situasjon og hva du trenger hjelp med (obligatorisk).',
'goal' => 'Ditt ønskede utfall eller juridiske mål.',
'deadline' => 'Eventuell relevant frist (dato eller beskrivelse, f.eks. "3 uker").',
'language' => 'Svarspråk: en, no, uk, pl, eller auto.',
),
),
'uk' =>
array (
'display_name' => 'Плануйте наступний крок у справі',
'description' => 'Створіть бездержавний план юридичної підготовки на основі вашої ситуації.',
'params' =>
array (
'situation' => 'Опишіть вашу поточну юридичну ситуацію та те, з чим вам потрібна допомога (обов\'язково).',
'goal' => 'Ваш бажаний результат або юридична мета.',
'deadline' => 'Будь-який відповідний термін (дата або опис, наприклад, "3 тижні").',
'language' => 'Мова відповіді: en, no, uk, pl або auto.',
),
),
'pl' =>
array (
'display_name' => 'Zaplanuj następny krok w sprawie',
'description' => 'Utwórz bezstanowy plan przygotowania prawnego na podstawie swojej sytuacji.',
'params' =>
array (
'situation' => 'Opisz swoją obecną sytuację prawną i z czym potrzebujesz pomocy (wymagane).',
'goal' => 'Twój pożądany wynik lub cel prawny.',
'deadline' => 'Jakikolwiek istotny termin (data lub opis, np. "3 tygodnie").',
'language' => 'Język odpowiedzi: en, no, uk, pl lub auto.',
),
),
),
'dbn.save_to_case' =>
array (
'en' =>
array (
'display_name' => 'Save result to My Case',
'description' => 'Explicitly save a prior MCP tool result to the user case record.',
'params' =>
array (
'tool' => 'The MCP tool slug whose result you are saving (required).',
'title' => 'A descriptive title for this saved result.',
'input_payload' => 'The input parameters used to generate the result (required).',
'output_payload' => 'The tool result to save (required).',
'meta' => 'Optional metadata (e.g. notes, tags, source reference).',
),
),
'no' =>
array (
'display_name' => 'Lagre resultat til Min Sak',
'description' => 'Lagre eksplisitt et tidligere MCP-verktøyresultat til brukerens sakspost.',
'params' =>
array (
'tool' => 'Slug til MCP-verktøyet hvis resultat du lagrer (obligatorisk).',
'title' => 'En beskrivende tittel for dette lagrede resultatet.',
'input_payload' => 'Inndata-parametrene som ble brukt for å generere resultatet (obligatorisk).',
'output_payload' => 'Verktøyresultatet som skal lagres (obligatorisk).',
'meta' => 'Valgfri metadata (f.eks. notater, tagger, kildehenvisning).',
),
),
'uk' =>
array (
'display_name' => 'Зберегти результат у Моя справа',
'description' => 'Явно зберегти попередній результат інструменту MCP у записі справи користувача.',
'params' =>
array (
'tool' => 'Слаг інструменту MCP, результат якого ви зберігаєте (обов\'язково).',
'title' => 'Описовий заголовок для цього збереженого результату.',
'input_payload' => 'Вхідні параметри, використані для генерації результату (обов\'язково).',
'output_payload' => 'Результат інструменту для збереження (обов\'язково).',
'meta' => 'Додаткова метадані (наприклад, нотатки, теги, посилання на джерело).',
),
),
'pl' =>
array (
'display_name' => 'Zapisz wynik do Mojej Sprawy',
'description' => 'Wyraźnie zapisz wcześniejszy wynik narzędzia MCP w rejestrze sprawy użytkownika.',
'params' =>
array (
'tool' => 'Slug narzędzia MCP, którego wynik zapisujesz (wymagane).',
'title' => 'Opisowy tytuł dla tego zapisanego wyniku.',
'input_payload' => 'Parametry wejściowe użyte do wygenerowania wyniku (wymagane).',
'output_payload' => 'Wynik narzędzia do zapisania (wymagane).',
'meta' => 'Opcjonalne metadane (np. notatki, tagi, odniesienie do źródła).',
),
),
),
);