# MCP serveris — Kultūras un valodu tehnoloģiju arhitektūras interfeiss ## Pārskats Šis dokuments apraksta KISC MCP (Model Context Protocol) serveri, kas nodrošina AI aģentiem un automatizācijas rīkiem strukturētu piekļuvi Latvijas kultūras un valodu tehnoloģiju jomas mērķarhitektūras datiem. **Servera adrese:** `https://llm.kis.gov.lv/mcp` **Versija:** 0.3.0 **Operators:** Kultūras informācijas sistēmu centrs (KISC) **Identitāte:** `did:web:llm.kis.gov.lv` MCP serveris ir **tikai-lasīšanas interfeiss** — tas nemaina SSOT saturu, bet gan ļauj to meklēt, analizēt un ģenerēt dokumentus no tā. --- ## 1) Kas ir šī arhitektūra un ko MCP serveris dara Kultūras un valodu tehnoloģiju jomas mērķarhitektūra apraksta Latvijas valsts stratēģiju kultūras mantojuma digitalizācijai un latviešu valodas tehnoloģiju attīstībai. Tā ietver divus apakšdomēnus: - **Kultūras apakšjoma** (`kultura`) — muzeju, bibliotēku, arhīvu un kultūras pieminekļu digitalizācija, datu pārvaldība, publiskā pieejamība - **Valodu tehnoloģiju apakšjoma** (`valoda`) — Lielais latviešu valodas modelis (LVM-LV), mašīntulkošana, runas sintēze/atpazīšana, semantiskā meklēšana Arhitektūra satur šādus elementu tipus: | Entītiju tips | Piemēri | Skaits | |---|---|---| | **Mērķi** (`goal`) | M1 "Kultūras mantojuma saglabāšana", M4 "Latviešu valoda digitālajā laikmetā" | 6 | | **Organizācijas** (`org`) | KISC, LNB, LU MII, Kultūras ministrija | ~40 | | **Funkcijas** (`func`) | Mantojuma digitalizācija, valodu platformas uzturēšana | 6 | | **Pakalpojumi** (`svc`) | Mašīntulkošana, runas sintēze, DOM, statistikas portāls | 30 | | **Informācijas resursi** (`ir`) | Valodu korpusi, muzeja dati, terminoloģija | 23 | | **Sistēmas** (`sys`) | LVM-LV, VBK, valodu platformas, DOM | 32 | | **Ceļa kartes pasākumi** (`rm`) | Modernizācijas iniciatīvas ar laika grafiku | ~10 | | **Riski** (`risk`) | Datu kvalitāte, kiberdrošība, AI Act atbilstība | ~8 | | **Dokumenti** (`doc`) | GDPR, AI Act, VDAR, nozares regulējums | ~15 | | **Principi** (`principle`) | Arhitektūras pamatprincipi | 4 | --- ## 2) MCP rīki — ko AI aģents saņem Kad AI aģents (piemēram, Claude) pieslēdzas MCP serverim, tam kļūst pieejami **9 rīki**. Šajā sadaļā aprakstīts katrs rīks — tā nolūks, parametri un kas tiek atgriezts. ### 2.1 `identify` — servera identitātes verificēšana **Nolūks:** Atgriež informāciju par servera operatoru, identitāti un uzticamības pierādījumiem. Ļauj AI aģentam pārliecināties, ka serveris pieder KISC un ir verificēts. **Parametri:** nav obligātu parametru. **Atgriež:** - Servera nosaukums, versija, operators (KISC) - DID identitāte: `did:web:llm.kis.gov.lv` - MCPF (MCP Trust Framework) atbilstības informācija - VeriTrust izdotas verifikācijas akreditācijas URL - JWKS, DID dokumenta, MCP manifesta un uzticamības reģistra URL **Kad lietot:** Pirms uzticēšanās servera datiem — lai pārliecinātos, ka datu avots ir leģitīms. --- ### 2.2 `describe_model` — arhitektūras metamodelis **Nolūks:** Atgriež pilnu arhitektūras datu modeļa aprakstu — kādi entītiju tipi pastāv, kādi atribūti katram tipam, kādi attiecību tipi, kādi apakšdomēni un skati. **Parametri:** nav. **Atgriež:** - 11 entītiju tipu saraksts ar to ID shēmām un atribūtiem - 16 attiecību tipu saraksts (has_goal, depends_on, owns, u.c.) - 2 apakšdomēni (kultura, valoda) - 6 dokumenta skatu saraksts **Kad lietot:** Kā pirmo soli — lai AI aģents saprastu, kāda veida dati ir pieejami un kā tie ir strukturēti. Šis rīks ir "karte" visiem pārējiem rīkiem. **Piemērs — ko AI aģents uzzina:** > "Šajā arhitektūrā ir 6 stratēģiskie mērķi ar ID formātā `goal.m1`–`goal.m6`. Sistēmas ir ar ID `sys.kultura.01` vai `sys.valoda.01`. Attiecības ietver `has_system`, `depends_on`, `owns`. Ir 2 apakšdomēni: kultūra un valoda." --- ### 2.3 `search` — meklēšana pēc atslēgvārdiem **Nolūks:** Meklēt jebkādu arhitektūras entītiju vai dokumenta fragmentu pēc atslēgvārdiem. Atbalsta gan latviešu, gan angļu valodas vaicājumus. **Parametri:** - `query` (obligāts) — meklēšanas frāze, piemēram, "valodu tehnoloģijas", "KISC", "digitālais mantojums", "AI risks" - `kind` (neobligāts) — filtrēt pēc tipa: goal, org, sys, svc, ir, func, principle u.c. - `subdomain` (neobligāts) — filtrēt pēc apakšdomēna: "kultura" vai "valoda" - `limit` (neobligāts) — rezultātu skaits (noklusējums 25) **Atgriež:** Sakārtots saraksts ar atrastajām entītijām, katrai norādot ID, piemērotības novērtējumu (score), tipu un pilnus datus. **Kad lietot:** Kad zināms aptuvens jautājums, bet nav precīzs entītijas ID. **Piemēri:** ``` search(query="mašīntulkošana") → atrod svc.valoda.04, sys.valoda.03 search(query="LNB", kind="org") → atrod org.lnb search(query="risks", kind="risk") → atrod visus riskus search(query="korpuss", subdomain="valoda") → atrod ir.valoda.01, ir.valoda.02 ``` --- ### 2.4 `get_entity` — konkrētas entītijas izgūšana **Nolūks:** Atgriež pilnu informāciju par vienu konkrētu entītiju pēc tās ID. **Parametri:** - `id` (obligāts) — entītijas ID, piemēram: `goal.m4`, `org.kisc`, `sys.valoda.02`, `risk.001` **Atgriež:** Visu entītijas informāciju — nosaukums, apraksts, statuss, izmaiņu apraksts, VIRSIS ID atsauces un avota faila ceļš. **Kad lietot:** Kad precīzi zināms, kuru entītiju vajag apskatīt. **Piemēri:** ``` get_entity(id="goal.m4") → "Latviešu valoda digitālajā laikmetā" — pilns apraksts get_entity(id="sys.valoda.02") → "Lielais latviešu valodas modelis (LVM-LV)" — statuss, resursi get_entity(id="org.kisc") → KISC organizācijas pilna informācija ``` --- ### 2.5 `list_entities` — entītiju saraksts pēc tipa **Nolūks:** Atgriež visu entītiju ID sarakstu, iespējams filtrētu pēc tipa un/vai apakšdomēna. Ļauj ātri uzzināt, kas pastāv. **Parametri:** - `type` (neobligāts) — entītiju tipa filtrs: "goal", "org", "sys", "svc", "ir", "func", "principle", "rm", "risk", "doc", "int" - `subdomain` (neobligāts) — "kultura" vai "valoda" **Atgriež:** ID saraksts ar katras entītijas pamata informāciju (nosaukums, tips). **Kad lietot:** Kad vajag pārskatu par visām noteikta tipa entītijām. **Piemēri:** ``` list_entities(type="goal") → 6 mērķi (goal.m1–goal.m6) list_entities(type="sys", subdomain="valoda") → 11 valodu tehnoloģiju sistēmas list_entities(type="risk") → visi identificētie riski list_entities() → pilns visu entītiju saraksts ``` --- ### 2.6 `list_relations` — attiecību meklēšana **Nolūks:** Atrast visas attiecības (šķautnes), kas saistītas ar konkrētu entītiju — ienākošās, izejošās vai abas. **Parametri:** - `id` (obligāts) — entītijas ID, piemēram: `domain.kultura-valoda`, `goal.m4` - `direction` (neobligāts) — "in" (ienākošās), "out" (izejošās), "both" (abas, noklusējums) **Atgriež:** Saraksts ar šķautnēm, katrai norādot `from`, `type`, `to` un kopējo skaitu. **Kad lietot:** Ietekmes analīzē ("kuri pakalpojumi ir saistīti ar mērķi M4?"), atkarību kartēšanā, audita nolūkos. **Piemērs:** ``` list_relations(id="domain.kultura-valoda", direction="out") → 95 šķautnes: has_goal→goal.m1..m6, has_system→sys.kultura.01..sys.valoda.11, u.c. ``` > **Piezīme:** Pašreizējā versijā visas šķautnes iziet no `domain.kultura-valoda`. Lai atrastu, piemēram, visas valodu apakšjomas sistēmas, meklējiet `list_relations(id="domain.kultura-valoda")` un filtrējiet pēc tipa `has_system` un `to` prefiksa `sys.valoda.*`. --- ### 2.7 `subgraph` — apakšgrafa izgūšana **Nolūks:** Sākot no vienas vai vairākām sēklas entītijām, apstaigāt attiecību grafu un atgriezt visas saistītās entītijas līdz noteiktam dziļumam. **Parametri:** - `seed_ids` (obligāts) — sākuma entītiju ID masīvs, piemēram: `["goal.m4"]` vai `["org.kisc", "org.lumii"]` - `depth` (neobligāts) — apstaigāšanas dziļums (noklusējums 1, maks. 3) **Atgriež:** Pilns mezglu un šķautņu saraksts — katra mezgla pilna informācija un visas savienojošās šķautnes. **Kad lietot:** Lai iegūtu "apkārtnes karti" — visas entītijas, kas saistītas ar noteiktu komponentu. **Piemērs:** ``` subgraph(seed_ids=["domain.kultura-valoda"], depth=1) → 96 mezgli, 95 šķautnes — viss domēna saturs ``` --- ### 2.8 `get_view` — dokumenta skata izgūšana **Nolūks:** Atgriež viena konkrēta dokumenta skata saturu Markdown formātā. Skati ir cilvēklasāmas dokumenta nodaļas. **Parametri:** - `view_id` (obligāts) — skata identifikators. Iespējamās vērtības: - `01-ievads` — Ievads - `02-esosas-arhitekturas-novertejums` — Esošās arhitektūras novērtējums - `03-merki-un-principi` — Mērķi un principi - `04-merk-arhitektura` — Mērķarhitektūra - `05-cela-karte` — Ceļa karte - `06-pielikums-komponentu-katalogs` — Komponentu katalogs **Atgriež:** Markdown saturs ar virsrakstiem, tekstiem un atsaucēm uz reģistriem. **Kad lietot:** Lai izlasītu noteiktu dokumenta nodaļu bez pilna dokumenta ģenerēšanas. **Piemērs:** ``` get_view(view_id="03-merki-un-principi") → Markdown ar M1–M6 mērķu aprakstiem un arhitektūras principiem ``` --- ### 2.9 `generate_document` — pilna dokumenta ģenerēšana **Nolūks:** Reģenerēt pilnu cilvēklasāmo arhitektūras dokumentu no YAML reģistriem. Apvieno visus skatus ar inline reģistru paplašinājumiem vienotā Markdown vai JSON dokumentā. **Parametri:** - `format` (neobligāts) — "markdown" (noklusējums) vai "json" - `sections` (neobligāts) — konkrētu sadaļu saraksts. Ja nav norādīts, ģenerē pilnu dokumentu. - Pieejamās vērtības: `ievads`, `esosa`, `merki`, `arhitektura`, `celakarte`, `katalogs` **Atgriež:** Pilns Markdown vai JSON dokuments, kas satur visas vai izvēlētās sadaļas ar iekļautiem reģistru datiem. **Kad lietot:** - Lai iegūtu aktuālu, pilnu mērķarhitektūras dokumentu - Lai sagatavotu materiālu prezentācijai vai pārskatam - Lai pārbaudītu, ka visi reģistri ir korekti un savstarpēji saskanīgi **Piemēri:** ``` generate_document() → Pilns dokuments Markdown formātā (~50+ lappuses) generate_document(format="json") → Strukturēts JSON ar katras sadaļas datiem generate_document(sections=["merki", "arhitektura"]) → Tikai mērķi/principi un mērķarhitektūras sadaļas ``` --- ## 3) Tipisko jautājumu un atbilžu piemēri Šajā sadaļā parādīts, kādus jautājumus var uzdot AI aģentam un kādus rīkus tas izmantos, lai atbildētu. ### 3.1 Vispārīgs pārskats **Jautājums:** "Pastāsti par šo arhitektūru — kas tajā ir un kā tā ir organizēta?" **AI aģenta darbība:** Izsauc `describe_model`, pēc tam `list_entities` vispārīgam pārskatam. **Sagaidāmā atbilde:** Skaidrojums, ka tā ir Latvijas kultūras un valodu tehnoloģiju jomas mērķarhitektūra ar 2 apakšdomēniem, 6 mērķiem, ~30 pakalpojumiem, ~30 sistēmām u.c. --- ### 3.2 Konkrēta mērķa izpēte **Jautājums:** "Kas ir M4 mērķis un kā tas attiecas uz latviešu valodas AI?" **AI aģenta darbība:** Izsauc `get_entity(id="goal.m4")`. **Sagaidāmā atbilde:** M4 ir "Latviešu valoda digitālajā laikmetā" — mērķis nodrošināt latviešu valodas klātbūtni MI risinājumos, attīstot valodas resursus, modeļus un pakalpojumus. --- ### 3.3 Sistēmu saraksts valodu jomā **Jautājums:** "Kādas informācijas sistēmas ir valodu tehnoloģiju apakšjomā?" **AI aģenta darbība:** Izsauc `list_entities(type="sys", subdomain="valoda")`. **Sagaidāmā atbilde:** 11 sistēmu saraksts — valodu tehnoloģiju platforma, LVM-LV, mašīntulkošana, runas atpazīšana, runas sintēze, virtuālie asistenti, semantiskā meklēšana, teksta ģenerēšana, vieglās valodas rīki, valodu resursu pārvaldība, jaunu tehnoloģiju izmitināšanas vide. --- ### 3.4 Konkrētas sistēmas detaļas **Jautājums:** "Pastāsti par Lielo latviešu valodas modeli — kas tas ir, kāds ir tā statuss?" **AI aģenta darbība:** Izsauc `search(query="latviešu valodas modelis")` vai `get_entity(id="sys.valoda.02")`. **Sagaidāmā atbilde:** sys.valoda.02 — "Lielais latviešu valodas modelis (LVM-LV)", statuss "Jauns", tiks izveidots un uzturēts kā valsts mēroga valodas infrastruktūras pamatelements. --- ### 3.5 Ietekmes analīze **Jautājums:** "Kuras sistēmas un pakalpojumi ir saistīti ar kultūras domēnu?" **AI aģenta darbība:** Izsauc `list_relations(id="domain.kultura-valoda", direction="out")`, filtrē pēc `has_system` un `has_service`. **Sagaidāmā atbilde:** 21 kultūras sistēma un 16 kultūras pakalpojumi, katrs ar savu ID un saiti uz domēnu. --- ### 3.6 Risku analīze **Jautājums:** "Kādi riski ir identificēti šajā arhitektūrā?" **AI aģenta darbība:** Izsauc `list_entities(type="risk")`, pēc tam `get_entity` katram riskam. **Sagaidāmā atbilde:** Risku saraksts ar aprakstiem, iespējamību, ietekmi un mazināšanas pasākumiem. --- ### 3.7 Pilna dokumenta ģenerēšana **Jautājums:** "Saģenerē pilnu mērķarhitektūras dokumentu." **AI aģenta darbība:** Izsauc `generate_document(format="markdown")`. **Sagaidāmā atbilde:** Pilns Markdown dokuments ar visām 6 sadaļām — ievads, esošā situācija, mērķi un principi, mērķarhitektūra, ceļa karte, komponentu katalogs. --- ### 3.8 Organizāciju meklēšana **Jautājums:** "Kas ir KISC un kāda ir tā loma?" **AI aģenta darbība:** Izsauc `search(query="KISC", kind="org")` vai `get_entity(id="org.kisc")`. **Sagaidāmā atbilde:** Kultūras informācijas sistēmu centrs — domēna īstenotājs, atbildīgs par kultūras IS uzturēšanu un attīstību. --- ### 3.9 Ceļa kartes izpēte **Jautājums:** "Kādi ir plānotie pasākumi un to laika grafiks?" **AI aģenta darbība:** Izsauc `get_view(view_id="05-cela-karte")` vai `list_entities(type="rm")`. **Sagaidāmā atbilde:** Ceļa kartes sadaļa ar pasākumu sarakstu, termiņiem un atbildīgajām organizācijām. --- ### 3.10 Servera uzticamības pārbaude **Jautājums:** "Vai šis serveris ir uzticams? Kas to pārvalda?" **AI aģenta darbība:** Izsauc `identify`. **Sagaidāmā atbilde:** Serveris pieder KISC (Latvijas valsts iestāde), ir verificēts ar VeriTrust akreditāciju, DID identitāte ir `did:web:llm.kis.gov.lv`, atbilst MCPF Layer 1. --- ## 4) Kā AI aģents saprot arhitektūras kontekstu Kad AI aģents (piemēram, Claude) pieslēdzas šim MCP serverim, tas **automātiski saņem** šādu konteksta informāciju: 1. **Servera apraksts:** "MCP server for Latvian cultural heritage and language technology architecture documentation" — tas uzreiz norāda, ka dati ir par Latvijas kultūras un valodu tehnoloģiju jomu. 2. **Rīku apraksti:** Katrs rīks satur detalizētu `description` lauku, kas palīdz AI aģentam saprast, kad un kā to lietot. Piemēram, `search` rīka aprakstā ir minēts: "Search KISC architecture documentation for Latvian government cultural digitalization. Contains: strategic goals (M1-M6), organizations (KISC, LNB, LUMII, ministries, museums)..." — tas dod aģentam bagātu kontekstu. 3. **Entītiju ID shēmas:** Rīku parametru aprakstos ir norādīti piemēri (`goal.m4`, `org.kisc`, `sys.valoda.01`), kas aģentam palīdz konstruēt pareizus vaicājumus. 4. **Uzticamības metadati:** Inicializācijas laikā serveris atgriež MCPF metadatus ar DID, akreditācijas un verifikācijas URL — AI aģents var novērtēt datu avota uzticamību. Tādējādi AI aģentam **nav nepieciešama ārēja apmācība** — konteksts tiek saņemts tieši no servera, un aģents var sākt atbildēt uz jautājumiem par arhitektūru nekavējoties. --- ## 5) Dokumenta ģenerēšanas detalizēta procedūra ### 5.1 Ģenerēšanas mehānisms Dokumenta ģenerēšana apvieno divus avotus: ``` views/ (Markdown struktūra) + registers/ (YAML dati) → Pilns dokuments ``` Process: 1. Tiek nolasīts katrs skats (`01-ievads.md`, `02-esosas-...md`, ..., `06-pielikums-...md`) 2. Skatā atrastās reģistru atsauces (backtick formātā) tiek aizstātas ar attiecīgo YAML reģistru saturu, formatētu kā tabulas vai saraksti 3. Rezultāts tiek apvienots vienotā dokumentā ### 5.2 Ģenerēšana caur komandrindu ```bash cd mcp REPO_ROOT="$(pwd)/.." \ DOMAIN_DIR="domains/kultura-valoda" \ OUT_FILE="KISC-merkarhitektura-apraksts.md" \ npm run gen:doc ``` ### 5.3 Ģenerēšana caur MCP (AI aģents) ``` # Pilns dokuments (visas sadaļas) generate_document(format="markdown") # Tikai ievads un mērķi generate_document(format="markdown", sections=["ievads", "merki"]) # JSON formāts mašīnapstrādei generate_document(format="json") # Tikai mērķarhitektūra un katalogs generate_document(format="markdown", sections=["arhitektura", "katalogs"]) ``` ### 5.4 Sadaļu identifikatori | Sadaļas ID | Skata fails | Saturs | |---|---|---| | `ievads` | `01-ievads.md` | Ievads, tvērums, termini, saīsinājumi | | `esosa` | `02-esosas-arhitekturas-novertejums.md` | Esošās situācijas novērtējums | | `merki` | `03-merki-un-principi.md` | Mērķi M1–M6 un 4 arhitektūras principi | | `arhitektura` | `04-merk-arhitektura.md` | Funkcijas, pakalpojumi, IR, sistēmas | | `celakarte` | `05-cela-karte.md` | Ceļa karte, riski, mijiedarbības | | `katalogs` | `06-pielikums-komponentu-katalogs.md` | Pilns komponentu katalogs | ### 5.5 Ģenerētā dokumenta struktūra Pilns dokuments satur aptuveni šādu struktūru: ``` 1. Ievads 1.1 Dokumenta nolūks un mērķauditorija 1.2 Domēna arhitektūras tvērums 1.3 Termini un saīsinājumi 1.4 Saistītie dokumenti 2. Esošās arhitektūras novērtējums 2.1 Kultūras apakšjomas esošā situācija 2.2 Valodu tehnoloģiju esošā situācija 2.3 Esošo sistēmu novērtējums 3. Mērķi un principi 3.1 Stratēģiskie mērķi (M1–M6) 3.2 Arhitektūras principi (P1–P4) 4. Mērķarhitektūra 4.1 Funkcijas (6 gab.) 4.2 Pakalpojumi (30 gab. — kultūra + valoda) 4.3 Informācijas resursi (23 gab.) 4.4 Sistēmas (32 gab.) 5. Ceļa karte 5.1 Pasākumu plāns 5.2 Attiecības un atkarības 5.3 Riski 5.4 Mijiedarbības ar citām jomām 6. Pielikums — komponentu katalogs 6.1 Pilns sistēmu saraksts 6.2 Pilns pakalpojumu saraksts 6.3 Pilns IR saraksts ``` --- ## 6) MCPF uzticamības ietvars Serveris implementē **MCPF (MCP Trust Framework) Layer 1** — uzticamības atklāšanu sesijas līmenī. ### 6.1 Inicializācijas metadati Katras MCP sesijas sākumā serveris atgriež šādus metadatus: ```json { "_meta": { "identity": { "id": "did:web:llm.kis.gov.lv", "service": { "mcp": "https://llm.kis.gov.lv/mcp" }, "keys": { "jwks_uri": "https://llm.kis.gov.lv/.well-known/jwks.json" } }, "mcpf": { "version": "0.1", "entrypoint": { "type": "manifest", "url": "https://llm.kis.gov.lv/.well-known/mcp/manifest.json" } }, "trust": { "verifications": [{ "verifier": "did:web:veritrust.vc", "type": ["VerifiableCredential", "MCPServerVerification"], "covers": "did:web:llm.kis.gov.lv" }] } } } ``` ### 6.2 Verifikācijas galapunkti | URL | Saturs | |---|---| | `https://llm.kis.gov.lv/.well-known/jwks.json` | Publiskā atslēga JWT verifikācijai | | `https://llm.kis.gov.lv/.well-known/did.json` | DID dokuments | | `https://llm.kis.gov.lv/.well-known/mcp/manifest.json` | MCP manifests | | `https://llm.kis.gov.lv/.well-known/mcp-trust-registry.json` | Uzticamības reģistrs | | `https://veritrust.vc/portal/mcp/credentials/...` | VeriTrust akreditācija | --- ## 7) Tehniskā informācija ### 7.1 Servera versija un konfigurācija | Parametrs | Vērtība | |---|---| | Versija | 0.3.0 | | Protokols | MCP 2024-11-05 | | Transports | Streamable HTTP (`/mcp`) | | Iespējas (capabilities) | `tools`, `resources` | | Rīku skaits | 9 | | Vide | Docker (Node.js 20, TypeScript) | ### 7.2 Palaišana lokāli (izstrādei) ```bash cd mcp npm install npm run dev ``` Serveris būs pieejams: `http://localhost:8787/mcp` ### 7.3 Palaišana ar Docker ```bash cd mcp docker compose up -d ``` Vai no POC izvietojuma: ```bash cd /opt/kisc-llm/poc/deploy docker compose build --no-cache arch-mcp ./scripts/start.sh ``` ### 7.4 Veselības pārbaude ```bash curl https://llm.kis.gov.lv/health # → {"status":"ok"} ``` ### 7.5 MCP inicializācijas tests ```bash curl -sS https://llm.kis.gov.lv/mcp \ -H "content-type: application/json" \ -H "accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{ "protocolVersion":"2024-11-05", "capabilities":{}, "clientInfo":{"name":"test","version":"1.0"} }}' ``` Sagaidāmā atbilde: servera informācija ar versiju 0.3.0, 9 rīkiem un MCPF metadatiem.