DOMOVINA.ai

Podržani alati

Trenutno Domovina MCP poslužitelj nudi sljedeće alate za pretraživanje i pregled korpusa. Dodatni alati u izradi navedeni su pod „Planirano".

Aktivni alati

AlatOpisParametri
search_podcasts Semantičko pretraživanje korpusa hrvatskih katoličkih i političkih podcasta. Vraća do 50 chunkova transkripta s ocjenom relevantnosti, imenom govornika, vremenom u epizodi i dubokim linkom na YouTube na točnu sekundu. Podržava hibridno pretraživanje (semantika + leksički filter) za vlastita imena gdje sami vektori imaju slabosti.
query (string, obavezan): prirodno jezični upit, 2–500 znakova
limit (broj, neobavezan): 1–25, zadano 10
channel (string, neobavezan): slug kanala (npr. podcast_cuspajz)
speaker (string, neobavezan): filter na govornika — case-insensitive partial match (npr. Miletić)
min_upload_date, max_upload_date (YYYY-MM-DD, neobavezno): filter po datumu objave
include_summaries (bool, zadano true): ako false, isključuje AI sažetke (samo direktni citati)
lexical_terms (popis stringova, neobavezan): hibridni filter — chunk mora sadržavati SVE navedene tokene; do 10 tokena
get_episode Dohvati metapodatke, popis poglavlja i (po želji) cijeli transkript jedne epizode prema YouTube ID-u. Vraća naslov, govornike, trajanje, popis poglavlja (outline chunkovi) i transkript po segmentima s timestamp-ima. Za duge epizode (preko ~80 000 znakova) bez parametra view_range, transkript je izostavljen uz uputu da se dohvati po dijelovima. Koristi za doktrinarnu i temeljnu analizu cijele epizode kada search_podcasts daje preslab obuhvat.
youtube_id (string, obavezan): 11-znakovni YouTube video ID (npr. 5J9GQ0sFe3M)
include_transcript (bool, neobavezan): zadano true; false vraća samo meta + poglavlja
view_range (popis dvaju brojeva, neobavezan): [start_sec, end_sec] — filtriraj chunkove na vremenski raspon (npr. [0, 600] = prvih 10 min). Bypassira soft limit.
chapter_index (broj, neobavezan): 1-based indeks u chapters[] — convenience nad view_range-om. Mutually exclusive s njim.
list_channels Vraća popis svih kanala u korpusu sa statistikama (broj epizoda i chunkova, datum prvog i zadnjeg uploada). Koristi za pregled korpusa i za biranje validnog slug-a kanala u channel filterima drugih alata.
sort_by (neobavezno): episodes (default), chunks, channel (abecedno)
list_episodes Vraća listu epizoda korpusa (distinct po YouTube ID-u) s metapodacima: naslov, kanal, datum objave, trajanje, govornici, broj chunkova. Komplementarno search_podcasts — koristi za browsing korpusa bez specifičnog upita, npr. „tko sve gostuje u kanalu X", „najnovije epizode iz svibnja", „epizode govornika Y".
channel (string, neobavezan): slug kanala
speaker (string, neobavezan): partial match na govornika
min_upload_date, max_upload_date (YYYY-MM-DD, neobavezno)
sort_by: upload_date_desc (default), upload_date_asc, chunks_desc, duration_desc
limit (broj, neobavezno): 1–100, zadano 20
count_mentions Agregator: vraća top N grupa (kanal, govornik ili mjesec) po broju chunkova koji semantički matchaju upit. Vraća samo brojeve, ne sadržaj — drastično manji odgovor od search_podcasts. Idealan za statistička pitanja: „u kojem kanalu najviše govore o X", „tko najčešće spominje Y", „u kojem mjesecu najviše rasprava o Z".
query (string, obavezan): semantic upit za relevantne chunkove
group_by (obavezan): channel | speaker | month
relevance_threshold (0–1, zadano 0.4): cosine similarity prag
limit (broj, neobavezno): 1–50, zadano 20
min_upload_date, max_upload_date, channel (filteri)
server_info Vraća metapodatke o MCP servisu i stanju korpusa: verziju, build info, statistiku dataset-a (broj kanala, epizoda, chunkova, datum najnovije i najstarije epizode), popis dostupnih alata. Koristi za debug, provjeru svježine podataka i otkrivanje koje su verzije/funkcionalnosti trenutno dostupne.
Nema parametara.

Planirano (TBD)

Sljedeći alati su u planu ali nisu još implementirani na produkciji. Prati napredak na GitHub Issues.

AlatOpisStatus
get_speaker Dohvati profil govornika prema imenu — popis pojavljivanja po epizodama, glavne teme, link na entity resolution. Zahtijeva završetak ensemble speaker pipeline-a (TitaNet + pyannote-wespeaker34). planirano (Faza 3)
chat (Q&A) Cjelokupni Q&A cjevovod: tvoje pitanje → retrieval → reranker → Gemini 2.5 Flash generacija s citatima iz transkripta. Resursno zahtjevnija operacija — vlastiti rate-limit bazen (vidi Ograničenja). planirano (Faza 2)

Stil odgovora

Svi alati vraćaju strukturirani JSON unutar MCP content bloka tipa text (JSON-stringified). Vremenski timestamp-i su u sekundama od početka videa; datumi u YYYY-MM-DD formatu (ISO 8601). Hrvatska slova zadržana su u UTF-8 bez transliteracije.