OpenDIMS
APIArtikel

MCP: Sådan bruger du Model Context Protocol sammen med OpenDIMS

Af OpenDIMS30. september 20263 min. læsning
MCP: Sådan bruger du Model Context Protocol sammen med OpenDIMS

Hvad er Model Context Protocol (MCP)?

Model Context Protocol - forkortet MCP - er en åben standard fra Anthropic, der beskriver, hvordan en AI-assistent kobles sammen med eksterne systemer: databaser, filer, API'er og forretningsapplikationer som OpenDIMS. Før MCP skulle hver integration mellem en AI-model og et system bygges fra bunden - én integration til hvert system, ofte med sin egen kode og sit eget vedligeholdelsesansvar. MCP løser det ved at definere ét fælles "sprog", som både AI-værktøjer og systemer kan tale - lidt ligesom en USB-C-forbindelse gør det muligt for vidt forskellige enheder at koble sig til den samme port.

Resultatet er, at en AI-assistent, der forstår MCP, kan koble sig til ethvert system, der udstiller en MCP-server - uden at nogen skal bygge en skræddersyet integration for hver kombination af AI-værktøj og system.

Sådan er MCP bygget op

MCP arbejder med tre roller:

  • Host: Selve AI-applikationen brugeren sidder i - fx Claude Desktop, Claude Code eller et andet MCP-kompatibelt værktøj.
  • Client: En forbindelse hosten opretter til én bestemt MCP-server. Der oprettes én client pr. server, så flere systemer kan være tilkoblet samtidig.
  • Server: Selve systemet, der udstiller sine data og funktioner via MCP - i vores tilfælde OpenDIMS.

En MCP-server kan stille tre slags ting til rådighed for AI-assistenten:

  • Tools - konkrete handlinger AI-assistenten kan udføre, fx "søg efter emner", "opret et emne" eller "opdater et felt".
  • Resources - data AI-assistenten kan læse som kontekst, uden at det nødvendigvis udløser en handling.
  • Prompts - foruddefinerede skabeloner for hvordan bestemte opgaver bedst løses.

Kommunikationen foregår via JSON-RPC-beskeder, typisk over en lokal proces (stdio) eller HTTP - detaljer AI-assistenten og MCP-serveren håndterer indbyrdes, uden at brugeren behøver kende dem.

MCP og OpenDIMS

OpenDIMS udstiller sin egen MCP-server, der giver en tilkoblet AI-assistent adgang til de samme emnetyper og felter, I allerede kender fra admin-grænsefladen. Det betyder helt konkret, at en AI-assistent kan:

  • Slå op i jeres emnetyper og se, hvilke felter og valgmuligheder de har.
  • Søge efter og filtrere emner - fx "find alle artikler der endnu ikke er klar til eksport".
  • Oprette nye emner med korrekt udfyldte felter.
  • Opdatere eller rette enkeltfelter på et eksisterende emne, uden at røre resten af dataen.

I praksis betyder det, at opgaver der ellers kræver flere klik i admin-grænsefladen - eller som kræver, at man kender den præcise datastruktur - i stedet kan løses ved at bede en AI-assistent om det i almindeligt sprog.

Et konkret eksempel

Denne artikel er selv et eksempel på MCP i praksis: Den er skrevet og oprettet direkte i OpenDIMS af en AI-assistent (Claude) via en MCP-forbindelse til app.opendims.com - uden at nogen manuelt har udfyldt felterne i admin-grænsefladen. Samme forbindelse er også blevet brugt til at rette et defekt billedfelt på en anden artikel, blot ved at bede assistenten om det.

Sådan kommer du i gang

  1. Åbn indstillingerne for din MCP-kompatible AI-assistent (fx Claude), og find sektionen for connectors/MCP-servere.
  2. Tilføj OpenDIMS som connector, og log ind med jeres OpenDIMS-konto, når I bliver bedt om det.
  3. Godkend hvilken adgang assistenten skal have - typisk læse- og skriveadgang til jeres emnetyper.
  4. Herefter kan I bede assistenten om at slå op i, oprette eller rette jeres OpenDIMS-data direkte fra en almindelig samtale.

Vær opmærksom på adgang

Fordi en MCP-forbindelse kan give en AI-assistent reel skriveadgang til jeres data - præcis som en bruger ville have - er det værd at overveje, hvilke rettigheder assistenten reelt har brug for, og hvem i organisationen der har adgang til at oprette den slags forbindelser. Betragt en MCP-forbindelse som I ville betragte enhver anden bruger eller integration med adgang til systemet.