Tillbaks till resurser

Teknisk utforskning: Test av modellkontextprotokollet för AI-integrationer

VÀlkommen till Tech Exploration, dÀr Ketryon testar banbrytande verktyg för att driva moderna lösningar. I den hÀr utgÄvan dyker vi in i Model Context Protocol (MCP).

Teknisk utforskning: Test av modellkontextprotokollet för AI-integrationer

Bildkredit: Bild av @theshubhamdhage frÄn Unsplash

AIMachine LearningIntegrationProtocol
Av Kenny TranPublicerades den 4/1/2025Uppdaterades senast den 4/5/2025

Inledning

PÄ Ketryon Àr vi alltid pÄ jakt efter teknik som effektiviserar utvecklingen och levererar vÀrde till företag. Model Context Protocol (MCP), som lanserades av Anthropic i november 2024, fÄngade vÄr uppmÀrksamhet för sitt löfte att standardisera hur AI-modeller ansluter till externa data och verktyg. Som utvecklare Àr vi glada över att utforska MCP:s potential att förbÀttra AI-drivna applikationer. I denna Tech Exploration testar vi MCP genom att bygga en Todo-app med stöd för naturligt sprÄk och berÀttar vad vi lÀrt oss och hur MCP kan stÀrka globala och svenska företag. LÄt oss dyka ner i varför MCP Àr en game-changer för AI-integrationer!

Vad Àr modellkontextprotokollet?

MCP Àr ett protokoll med öppen kÀllkod som standardiserar hur AI-applikationer, som Claude eller anpassade agenter, ansluter till externa datakÀllor (t.ex. databaser, GitHub) och verktyg (t.ex. Slack, Notion). TÀnk pÄ det som en USB-C-port för AI: precis som USB-C förenar enhetsanslutningar ger MCP ett enda grÀnssnitt för AI för att komma Ät olika system, vilket ersÀtter anpassade integrationer.

Till skillnad frÄn traditionella API:er, dÀr varje tjÀnst krÀver en unik kod, anvÀnder MCP en klient-server-arkitektur:

  • MCP Host: AI-appen (t.ex. Claude Desktop) initierar förfrĂ„gningar.
  • MCP Client: Hanterar sĂ€kra anslutningar till servrar inom vĂ€rden.
  • MCP Server: Exponerar verktyg, resurser eller prompts (t.ex. en GitHub-server som hĂ€mtar issues).

MCP anvÀnder JSON-RPC 2.0 för kommunikation, vilket möjliggör dynamisk verktygsupptÀckt och kontextuppdateringar i realtid. Den Àr utformad för flexibilitet, sÀkerhet och skalbarhet, vilket gör den idealisk för komplexa AI-arbetsflöden.

Varför det Àr relevant

MCP tar itu med en viktig AI-utmaning: isolering frÄn realtidsdata. LLM:er förlitar sig ofta pÄ statiska trÀningsdata, vilket krÀver manuella inmatningar för aktuell information. MCP bryter dessa silor och gör det möjligt för AI att hÀmta live-data - tÀnk Slack-meddelanden eller GitHub PR - sömlöst.

  1. For Företag: MCP effektiviserar arbetsflöden. SÀljteam kan till exempel anvÀnda AI för att automatiskt logga CRM-anteckningar (t.ex. Salesforce) eller skriva utkast till e-postmeddelanden baserat pÄ Slack-diskussioner, vilket sparar upp till 72% av administrationstiden. I Sverige, dÀr efterlevnad av GDPR Àr avgörande, sÀkerstÀller MCP:s detaljerade behörigheter sÀker dataÄtkomst.
  2. For Utvecklare: MCP minskar komplexiteten i integrationen. IstÀllet för att skriva anpassade API-omslag bygger eller anvÀnder utvecklare förbyggda MCP-servrar, som kan ÄteranvÀndas mellan olika LLM:er. Det finns över 1 000 community-byggda servrar, frÄn Google Drive till Postgres.
  3. Branschtrender: MCP lanserades i november 2024 och fick en kraftig ökning av GitHub-stjÀrnor i början av 2025, med anvÀndare som Block och IntelliJ IDEA som integrerar det. Upwork-jobb nÀmner allt oftare MCP för AI-drivna IDE:er eller arbetsflöden, vilket signalerar dess uppgÄng.

VÄr provkörning

För att utforska MCP byggde vi en TypeScript-baserad Todo-app som lĂ„ter Claude Desktop hantera uppgifter med hjĂ€lp av uppmaningar pĂ„ naturligt sprĂ„k, till exempel ”LĂ€gg till en uppgift för att köpa matvaror i morgon.” Vi anvĂ€nde Node.js och MCP TypeScript SDK för att skapa en MCP-server.

UppsÀttning

Vi följde Anthropics dokument nÀr vi konfigurerade Node.js-projektet med TypeScript:

npm init -y
npm install @mcp/core typescript ts-node @types/node
npx tsc --init

Vi skapade en Todo-appserver (todo-server.ts) för att hantera uppgifter som lagras i en minnesmatris (simulerar en databas för enkelhetens skull):

import { Server } from '@mcp/core';
import { stdioServer } from '@mcp/server';

interface Task {
  id: number;
  text: string;
  dueDate?: string;
}

const tasks: Task[] = [];
const app = new Server('todo-server');

app.callTool('add_task', async (params: { text: string; dueDate?: string }) => {
  const task: Task = { id: tasks.length + 1, text: params.text, dueDate: params.dueDate };
  tasks.push(task);
  return { success: true, task };
});

app.callTool('list_tasks', async () => {
  return { tasks };
});

async function main() {
  const streams = await stdioServer();
  await app.run(streams[0], streams[1], app.createInitializationOptions());
}

main().catch(console.error);

Vi kompilerade och körde servern:

npx tsc
node dist/todo-server.js

Anslutning till Claude

Vi konfigurerade Claude Desktops claude_desktop_config.json för att anvÀnda vÄr server:

{
  "mcpServers": {
    "todo": {
      "command": "node",
      "args": ["dist/todo-server.js"]
    }
  }
}

Efter att ha startat om Claude, frĂ„gade vi: ”LĂ€gg till en uppgift att handla mat i morgon.” Claude skickade begĂ€ran via MCP, och vĂ„r server svarade och lade till uppgiften. Vi frĂ„gade sedan: ”Lista alla uppgifter” och Claude svarade:

Tasks:
1. Buy groceries (Due: Tomorrow)

LĂ€rdomar

MCP:s verktygsupptÀckt var sömlös - Claude kÀnde igen vÄra verktyg add_task och list_tasks direkt. TypeScript SDK:s typsÀkerhet hjÀlpte oss att upptÀcka parameterfel tidigt, vilket förstÀrkte vÄr kÀrlek till typad JavaScript. Servern var lÀtt och snabb, och integrationen med Claude kÀndes intuitiv, vilket antyder MCP:s potential för AI-appar i den verkliga vÀrlden.

Referenser

  1. https://modelcontextprotocol.io/introduction
  2. https://www.anthropic.com/news/model-context-protocol
  3. https://github.com/modelcontextprotocol/typescript-sdk