API og MCP

MCP-server

Diaforms MCP-server forbinder din AI-agent med din feedback. Når den er forbundet, kan du stille agenten spørgsmål som »Hvad klagede kunderne over i denne måned?«, og så henter den samtalerne, opsummeringerne og rapporterne.

MCP (Model Context Protocol) er standarden for at forbinde AI-agenter med eksterne værktøjer. Serveren giver adgang til de samme data som REST API'et, er skrivebeskyttet og bruger den samme API-nøgle.

Før du starter#

Du skal bruge en Pro-, Business- eller Enterprise-plan og en API-nøgle. Ejere og admins opretter nøgler under Indstillinger → Generelt → API-nøgler. Se API-overblik.

IndstillingVærdi
Serverens URLhttps://diaform.io/api/mcp
TransportStreamable HTTP
GodkendelseHeaderen Authorization: Bearer dia_org_live_...

En nøgle giver agenten læseadgang til alle projekter i din organisation. Opret en separat nøgle til hver agent, så du kan tilbagekalde én uden at påvirke de andre.

Forbind din agent#

Vælg din agent:

Kør dette i din terminal:

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

Kør derefter /mcp i Claude Code for at tjekke, at diaform er forbundet.

Værktøjer#

Agenten ser seks skrivebeskyttede værktøjer:

VærktøjHvad det gørArgumenter
list_projectsViser alle projekter med ID, navn og statusIngen
get_projectReturnerer ét projekt med dets spørgsmål og antal samtalerproject_id
list_conversationsViser et projekts samtaler med respondent, sentiment og AI-opsummeringproject_id og eventuelt status, sentiment, created_after, created_before, search, limit, cursor
get_conversationReturnerer én samtale med dens opsummering og hele transskriptionenconversation_id
list_reportsViser et projekts AI-rapporterproject_id og eventuelt status, limit, cursor
get_reportReturnerer én AI-rapport med dens temaer, problemer, afvigere og citaterreport_id

Hvert værktøj returnerer samme JSON som det tilsvarende REST-endpoint. Felterne er beskrevet i Projekter, Samtaler og Rapporter. status og sentiment er arrays, f.eks. ["completed"].

Lister returnerer op til 100 elementer ad gangen. Når et resultat har has_more: true, sender agenten next_cursor som cursor for at hente den næste side.

Det kan du spørge om#

  • »Vis mine Diaform-projekter, og fortæl mig, hvilket der har fået flest svar.«
  • »Læs de gennemførte samtaler fra de seneste 30 dage i onboarding-projektet, og gruppér klagerne efter tema.«
  • »Find samtaler, der nævner priser, og citér, hvad folk sagde.«
  • »Opsummér den nyeste AI-rapport, og skriv et udkast til en Slack-opdatering til produktteamet.«
  • »Hent hele transskriptionen af denne uges mest negative samtale.«

Fejl og grænser#

Hvis nøglen mangler eller er tilbagekaldt, eller planen ikke har API-adgang, fejler forbindelsen med HTTP 401 eller 403. Din klient viser det normalt som en server, der er fejlet eller ikke er godkendt.

Når et værktøjskald fejler, f.eks. på grund af et forkert ID, får agenten samme error og code som i REST API'et og kan rette sig selv. Se Fejl.

MCP-forespørgsler tæller med i samme grænse som REST API'et: 120 forespørgsler i minuttet pr. nøgle.

Tekniske detaljer#

Hvis du bygger din egen klient:

  • Send JSON-RPC 2.0-beskeder med POST https://diaform.io/api/mcp. Serveren besvarer hver forespørgsel med ét JSON-svar, ikke en hændelsesstrøm.
  • Serveren er tilstandsløs. Den udsteder ikke noget sessions-ID, og GET og DELETE returnerer 405.
  • De understøttede protokolversioner er 2025-06-18, 2025-03-26 og 2024-11-05.
  • Den implementerer initialize, ping, tools/list og tools/call. Den har ingen ressourcer eller prompts.
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
      }
    }
  }'