API i MCP

MCP poslužitelj

Diaform MCP poslužitelj povezuje vašeg AI agenta s vašim povratnim informacijama. Nakon povezivanja agentu možete postavljati pitanja poput „Na što su se korisnici žalili ovaj mjesec?“, a on dohvaća razgovore, sažetke i izvještaje.

MCP (Model Context Protocol) standardni je način na koji se AI agenti povezuju s vanjskim alatima. Poslužitelj daje iste podatke kao REST API, služi samo za čitanje i koristi isti API ključ.

Prije početka#

Potrebni su vam paket Pro, Business ili Enterprise i API ključ. Vlasnici i administratori izrađuju ključeve pod Postavke → Općenito → API ključevi. Pogledajte Pregled API-ja.

PostavkaVrijednost
URL poslužiteljahttps://diaform.io/api/mcp
TransportStreamable HTTP
AutentifikacijaZaglavlje Authorization: Bearer dia_org_live_...

Ključ agentu daje pristup za čitanje svih projekata u vašoj organizaciji. Za svakog agenta izradite zaseban ključ kako biste jedan mogli opozvati bez utjecaja na ostale.

Povežite svojeg agenta#

Odaberite svojeg agenta:

Pokrenite ovo u terminalu:

Shell
claude mcp add --transport http diaform https://diaform.io/api/mcp \
  --header "Authorization: Bearer $DIAFORM_API_KEY"

Zatim u alatu Claude Code pokrenite /mcp da biste provjerili je li diaform povezan.

Alati#

Agent vidi šest alata samo za čitanje:

AlatŠto radiArgumenti
list_projectsNavodi sve projekte s njihovim ID-jem, nazivom i statusomNema
get_projectVraća jedan projekt s pitanjima i brojem razgovoraproject_id
list_conversationsNavodi razgovore projekta s ispitanikom, sentimentom i AI sažetkomproject_id te neobavezno status, sentiment, created_after, created_before, search, limit, cursor
get_conversationVraća jedan razgovor sa sažetkom i cijelim transkriptomconversation_id
list_reportsNavodi AI izvještaje projektaproject_id te neobavezno status, limit, cursor
get_reportVraća jedan AI izvještaj s temama, problemima, izdvojenim zapažanjima i citatimareport_id

Svaki alat vraća isti JSON kao njegova REST krajnja točka. Polja su opisana na stranicama Projekti, Razgovori i Izvještaji. status i sentiment su nizovi vrijednosti, npr. ["completed"].

Popisi vraćaju najviše 100 stavki odjednom. Kad rezultat ima has_more: true, agent prosljeđuje next_cursor kao cursor da bi dohvatio sljedeću stranicu.

Što možete pitati#

  • „Navedi moje projekte u alatu Diaform i reci mi koji je dobio najviše odgovora.“
  • „Pročitaj dovršene razgovore iz zadnjih 30 dana u projektu o onboardingu i grupiraj pritužbe po temama.“
  • „Pronađi razgovore u kojima se spominju cijene i citiraj što su ljudi rekli.“
  • „Sažmi najnoviji AI izvještaj i sastavi nacrt obavijesti za Slack za produktni tim.“
  • „Dohvati cijeli transkript najnegativnijeg razgovora ovog tjedna.“

Pogreške i ograničenja#

Ako ključ nedostaje ili je opozvan, ili paket nema pristup API-ju, povezivanje ne uspijeva uz HTTP 401 ili 403. Vaš klijent to obično prikazuje kao poslužitelj s neuspjelim povezivanjem ili bez autorizacije.

Kad poziv alata ne uspije, na primjer zbog pogrešnog ID-ja, agent dobiva isti error i code kao u REST API-ju i može se sam ispraviti. Pogledajte Pogreške.

MCP zahtjevi ubrajaju se u isto ograničenje kao i REST API: 120 zahtjeva u minuti po ključu.

Tehničke pojedinosti#

Ako izrađujete vlastiti klijent:

  • Poruke JSON-RPC 2.0 šaljite putem POST https://diaform.io/api/mcp. Poslužitelj na svaki zahtjev odgovara jednim JSON odgovorom, a ne tokom događaja.
  • Poslužitelj ne čuva stanje. Ne izdaje ID sesije, a GET i DELETE vraćaju 405.
  • Podržane verzije protokola su 2025-06-18, 2025-03-26 i 2024-11-05.
  • Implementira initialize, ping, tools/list i tools/call. Nema resursa ni promptova.
Shell
curl -X POST "https://diaform.io/api/mcp" \
  -H "Authorization: Bearer $DIAFORM_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "list_conversations",
      "arguments": {
        "project_id": "b8acb3ab-1f3d-4a7e-a846-b7f493f86b6d",
        "status": ["completed"],
        "limit": 10
      }
    }
  }'