Eigen MCP Server
For avancerede integrationer kan du bygge en egen MCP-server. Dette giver fuld kontrol over funktionaliteten og er ideelt til integrationer med egne systemer eller ikke-understøttede applikationer.
Hvornår en egen MCP-server?
En egen MCP-server er egnet når:
- Du vil integrere med en egen applikation eller database
- Den ønskede integration ikke er tilgængelig i Zapier
- Du har specifikke sikkerhedskrav
- Du har brug for kompleks logik i værktøjerne
Krævet viden
For at bygge en egen MCP-server har du brug for:
- Programm erfaring (TypeScript/JavaScript eller Python)
- Kendskab til REST APIs
- Grundlæggende viden om servere og hosting
Model Context Protocol
Model Context Protocol (MCP) er en åben standard udviklet af Anthropic. MCP-servere kan bruges med:
- AI School
- ChatGPT
- Claude
- Visual Studio Code med Copilot
- Andre MCP-kompatible applikationer
Hurtigstart med TypeScript
1. Projektopsætning
mkdir min-mcp-server
cd min-mcp-server
npm init -y
npm install @modelcontextprotocol/sdk
2. Server kode
import { Server } from "@modelcontextprotocol/sdk/server";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio";
const server = new Server({
name: "min-server",
version: "1.0.0",
});
// Definér dine værktøjer
server.setRequestHandler("tools/list", async () => ({
tools: [
{
name: "min_tool",
description: "Beskrivelse af hvad værktøjet gør",
inputSchema: {
type: "object",
properties: {
parameter: {
type: "string",
description: "En parameter",
},
},
required: ["parameter"],
},
},
],
}));
// Implementér værktøjet
server.setRequestHandler("tools/call", async (request) => {
if (request.params.name === "min_tool") {
const { parameter } = request.params.arguments;
// Gør noget med parameteren
return {
content: [{ type: "text", text: `Resultat: ${parameter}` }],
};
}
});
// Start serveren
const transport = new StdioServerTransport();
server.connect(transport);
3. Kør serveren
npx ts-node server.ts
HTTP Transport til AI School
AI School understøtter MCP-servere via HTTP. Din server skal tilbyde et endpoint, der accepterer MCP-beskeder:
import express from 'express';
const app = express();
app.use(express.json());
app.post('/mcp', async (req, res) => {
const { method, params } = req.body;
if (method === 'tools/list') {
res.json({ tools: [...] });
} else if (method === 'tools/call') {
// Behandl værktøjskaldet
res.json({ content: [...] });
}
});
app.listen(3000);
Hosting muligheder
Din MCP-server skal være tilgængelig via internettet:
| Mulighed | Egnet til | Omkostninger |
|---|---|---|
| Cloudflare Workers | Let integration | Gratis tier tilgængelig |
| Vercel | TypeScript-servere | Gratis tier tilgængelig |
| Railway | Fuldstændige applikationer | Fra $5/måned |
| AWS Lambda | Skalerbare løsninger | Betales per brug |
| Egen server | Fuldt kontrol | Varierer |
Forbundelse med AI School
- Udrust din server til en offentlig URL
- Gå til dashboardet i AI School
- Klik på Koblinger → Tilføj kobling
- Indtast URL’en til din MCP-server
- Konfigurer eventuel autentifikation
Autentifikation
Du kan tilføje autentifikation til din MCP-server:
API-nøgle autentifikation
app.post("/mcp", (req, res, next) => {
const apiKey = req.headers["x-api-key"];
if (apiKey !== process.env.API_KEY) {
return res.status(401).json({ error: "Unauthorized" });
}
next();
});
I AI School vælger du "API Key" som autentifikationsmetode.
OAuth 2.0
For mere kompleks autentifikation kan du implementere OAuth 2.0. AI School understøtter OAuth 2.1 til MCP-servere.
Eksempler og ressourcer
Officielle MCP-servere
- MCP Servers GitHub - Officielle eksempler
Dokumentation
- MCP Specifikation - Fuldt protokol-specifikation
- SDK Dokumentation - TypeScript SDK
Udviklingstips
- Start simpelt: Start med ét værktøj og udvid derfra
- Test lokalt: Brug MCP Inspector til fejlfinding
- Logging: Tilføj udvidet logging til fejlfinding
- Fejlbehandling: Returnér klare fejlmeddelelser
- Rate limiting: Beskyt din server mod overbelastning
Almindelige integrationer
| System | Mulige værktøjer |
|---|---|
| LVS (Magister, SomToday) | Hent karakterer, vis skemaer |
| CRM-systemer | Hent kundeoplysninger, tilføj noter |
| Databaser | Udfør forespørgsler, generer rapporter |
| Egen applikationer | Enhver API du vil gøre tilgængelig |
Relaterede artikler
- Zapier MCP Server - Enkle koblinger uden kode