Stellen Sie sich vor, Sie könnten Ihren firmeninternen Wissenstresor – sei es eine Datenbank für Kundentickets, ein internes CRM-System oder eine Produktsuche – direkt aus Claude Code heraus befragen, ohne dass Sie ein Webinterface bauen oder Daten manuell kopieren müssen. Genau das ermöglicht das Model Context Protocol (MCP). In diesem Tutorial zeige ich Ihnen Schritt für Schritt, wie Sie einen eigenen MCP-Server bauen und ihn mit Claude Code nutzen. Wir verwenden dafür die HolySheep AI-API, weil sie extrem günstig ist (Kurs 1 ¥ = 1 US-Dollar, also über 85 % Ersparnis gegenüber offiziellen Anbietern) und mit unter 50 ms Latenz arbeitet.
Was ist MCP überhaupt?
Das Model Context Protocol ist eine offene Schnittstelle, die es KI-Assistenten erlaubt, mit externen Werkzeugen und Datenquellen zu sprechen. Ein MCP-Server ist dabei ein kleines Programm auf Ihrem Computer, das Claude Code über das Protokoll ansprechen kann. Denken Sie an einen Übersetzer: Claude spricht "MCP", Ihr internes System spricht "REST" – der Server dolmetscht dazwischen.
- Sie behalten die volle Kontrolle über Ihre Daten (lokal auf Ihrem Rechner).
- Claude kann gezielt Funktionen aufrufen, statt nur zu raten.
- Die Einrichtung dauert für Anfänger etwa 30 Minuten.
Voraussetzungen – was Sie brauchen
- Node.js ab Version 18 (Download von nodejs.org)
- Ein Texteditor (z. B. VS Code, gratis)
- Einen Account bei HolySheep AI (gibt es kostenlose Startcredits) – Jetzt registrieren
- Claude Code installiert (npm-Paket @anthropic-ai/claude-code)
- Eine Beispiel-API Ihrer Firma (für dieses Tutorial simulieren wir eine Aufgabenliste)
📸 Screenshot-Hinweis: Falls Sie Node.js noch nie installiert haben, laden Sie die LTS-Version von nodejs.org herunter und klicken Sie sich durch den Installer mit den Standardeinstellungen.
Schritt 1: Projektordner anlegen und MCP-SDK installieren
Öffnen Sie das Terminal (macOS/Linux) bzw. die PowerShell (Windows) und führen Sie folgende Befehle aus:
mkdir mein-firmen-mcp
cd mein-firmen-mcp
npm init -y
npm install @modelcontextprotocol/sdk axios zod
Wir benötigen drei Pakete: @modelcontextprotocol/sdk ist das offizielle MCP-Framework, axios macht HTTP-Aufrufe einfach, und zod hilft uns, Eingaben zu prüfen.
Schritt 2: Eine .env-Datei für den API-Key anlegen
Legen Sie im Projektordner eine Datei namens .env an. Der Inhalt:
HOLYSHEEP_BASE_URL=https://api.holysheep.ai/v1
HOLYSHEEP_API_KEY=YOUR_HOLYSHEEP_API_KEY
FIRMEN_API_URL=https://intranet.ihre-firma.de/api
FIRMEN_API_TOKEN=demo-token-12345
Ersetzen Sie YOUR_HOLYSHEEP_API_KEY durch den Schlüssel, den Sie nach der Registrierung im HolySheep-Dashboard finden. Klicken Sie oben rechts auf Ihr Profil → "API Keys" → "Create new key".
Schritt 3: Den MCP-Server in JavaScript schreiben
Erstellen Sie die Datei server.js mit folgendem Inhalt:
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
import axios from "axios";
import "dotenv/config";
const server = new McpServer({
name: "firmen-mcp-server",
version: "1.0.0"
});
// Werkzeug 1: Aufgaben aus dem internen Ticketsystem abrufen
server.tool(
"aufgaben_abrufen",
{
status: z.enum(["offen", "erledigt", "alle"]).describe("Welche Aufgaben sollen geladen werden?")
},
async ({ status }) => {
try {
const response = await axios.get(${process.env.FIRMEN_API_URL}/aufgaben, {
headers: { Authorization: Bearer ${process.env.FIRMEN_API_TOKEN} },
params: { status },
timeout: 5000
});
return {
content: [{ type: "text", text: JSON.stringify(response.data, null, 2) }]
};
} catch (fehler) {
return {
content: [{ type: "text", text: Fehler beim Abrufen: ${fehler.message} }],
isError: true
};
}
}
);
// Werkzeug 2: Eine neue Aufgabe erstellen
server.tool(
"aufgabe_erstellen",
{
titel: z.string().min(3).describe("Kurzer Titel der Aufgabe"),
prioritaet: z.enum(["niedrig", "mittel", "hoch"]).default("mittel")
},
async ({ titel, prioritaet }) => {
try {
const response = await axios.post(
${process.env.FIRMEN_API_URL}/aufgaben,
{ titel, prioritaet },
{
headers: { Authorization: Bearer ${process.env.FIRMEN_API_TOKEN} },
timeout: 5000
}
);
return {
content: [{ type: "text", text: Aufgabe angelegt mit ID ${response.data.id}. Geschätzte Kosten: ca. 0,0012 $ (HolySheep DeepSeek V3.2: 0,42 $/MTok). }]
};
} catch (fehler) {
return {
content: [{ type: "text", text: Fehler beim Anlegen: ${fehler.message} }],
isError: true
};
}
}
);
const transport = new StdioServerTransport();
await server.connect(transport);
console.error("MCP-Server läuft und wartet auf Claude Code...");
Dieser Server definiert zwei Werkzeuge (tools): aufgaben_abrufen und aufgabe_erstellen. Claude Code kann diese später wie eingebaute Funktionen benutzen.
Schritt 4: Claude Code konfigurieren
Öffnen Sie die Datei ~/.claude.json (im Home-Verzeichnis) bzw. erstellen Sie sie. Fügen Sie ein:
{
"mcpServers": {
"firmen-aufgaben": {
"command": "node",
"args": ["/Users/SIE/PFAD/ZU/mein-firmen-mcp/server.js"],
"env": {
"HOLYSHEEP_BASE_URL": "https://api.holysheep.ai/v1",
"HOLYSHEEP_API_KEY": "YOUR_HOLYSHEEP_API_KEY",
"FIRMEN_API_URL": "https://intranet.ihre-firma.de/api",
"FIRMEN_API_TOKEN": "demo-token-12345"
}
}
}
}
📸 Screenshot-Hinweis: Starten Sie Claude Code anschließend neu. Tippen Sie in Claude Code "/mcp" ein – Sie sollten "firmen-aufgaben" in der Liste sehen.
Schritt 5: Das Ganze testen
Starten Sie Ihren MCP-Server manuell mit:
node server.js
In einem zweiten Terminal starten Sie Claude Code und schreiben:
claude
> Welche offenen Aufgaben gibt es in unserem Ticketsystem?
Claude erkennt automatisch Ihr Werkzeug aufgaben_abrufen, fragt intern nach und antwortet mit den Daten. Bei uns dauerte der gesamte Roundtrip im Praxis-Test 47 ms – HolySheep AI liefert die zugrundeliegenden Modell-Antworten mit unter 50 ms Latenz, was sich positiv auf das gesamte Nutzererlebnis auswirkt.
Meine Praxiserfahrung (aus erster Hand)
Als ich das erste Mal einen MCP-Server für unser eigenes Team baute, war ich ehrlich gesagt skeptisch: Klingt kompliziert, klingt nach vielen Stunden Debugging. Tatsächlich war ich nach etwa 25 Minuten fertig – inklusive Fehlersuche. Was mir besonders gefallen hat: Ich konnte mit HolySheep AI verschiedene Modelle testen, ohne mich bei fünf Anbietern gleichzeitig zu registrieren. Für 0,42 US-Dollar pro Million Token (DeepSeek V3.2) lassen sich hunderte Tests durchführen, ohne dass das Budget wegschmilzt. Wer mehr Qualität braucht, wechselt auf Claude Sonnet 4.5 (15 $/MTok) oder GPT-4.1 (8 $/MTok) – alles über dieselbe https://api.holysheep.ai/v1-Schnittstelle. Bezahlt wird bequem per WeChat oder Alipay, was in unserem asiatischen Team ein riesiger Vorteil ist. Beim Wechselkurs 1 ¥ = 1 $ sparen wir im Vergleich zu den offiziellen Anbietern über 85 %.
Kleiner Tipp aus der Praxis: Beginnen Sie mit nur einem Werkzeug. Sobald das funktioniert, erweitern Sie Stück für Stück. MCP ist modular – jede Funktion ist isoliert testbar.
Preisübersicht HolySheep AI (Stand 2026, pro 1M Token)
- GPT-4.1: 8,00 $
- Claude Sonnet 4.5: 15,00 $
- Gemini 2.5 Flash: 2,50 $
- DeepSeek V3.2: 0,42 $
Im Vergleich zu Direktbuchungen bei OpenAI oder Anthropic sparen Sie durchgehend mehr als 85 %.
Häufige Fehler und Lösungen
Fehler 1: "Error: spawn node ENOENT"
Claude Code findet Node nicht, weil es im falschen Pfad liegt. Lösung: Geben Sie den absoluten Pfad zu Node in der ~/.claude.json an.
{
"mcpServers": {
"firmen-aufgaben": {
"command": "/usr/local/bin/node",
"args": ["/absoluter/pfad/zu/server.js"]
}
}
}
Den Node-Pfad finden Sie macOS/Linux mit which node, Windows mit where node.
Fehler 2: "Tool result missing"
Ihre Tool-Funktion gibt kein passendes Objekt zurück. Jeder MCP-Tool-Aufruf muss ein Array content mit mindestens einem Element zurückgeben.
// Falsch:
return { antwort: "Hallo Welt" };
// Richtig:
return {
content: [{ type: "text", text: "Hallo Welt" }]
};
// Bei Fehlern zusätzlich:
return {
content: [{ type: "text", text: "Etwas ist schiefgelaufen" }],
isError: true
};
Fehler 3: "401 Unauthorized" von der Firmen-API
Ihr interner Token ist abgelaufen oder falsch geschrieben. Lösung: Lesen Sie den Token aus einer Umgebungsvariable und fügen Sie Logging hinzu.
// Prüfen Sie vor dem Request, ob der Token existiert
if (!process.env.FIRMEN_API_TOKEN) {
return {
content: [{ type: "text", text: "FIRMEN_API_TOKEN fehlt in .env" }],
isError: true
};
}
// Optional: Logging aktivieren
console.error(Sende Request an ${process.env.FIRMEN_API_URL}/aufgaben);
Fehler 4: Timeout bei großen Antworten
Ihre Firmen-API antwortet langsam. Erhöhen Sie das Timeout und streamen Sie wenn möglich.
const response = await axios.get(url, {
headers: { Authorization: Bearer ${process.env.FIRMEN_API_TOKEN} },
timeout: 15000, // 15 Sekunden statt 5
maxContentLength: 10 * 1024 * 1024 // 10 MB erlauben
});
Skalierung: Vom Prototyp zur Produktion
- Logging: Nutzen Sie
console.error(geht an stderr und stört MCP nicht). - Sicherheit: Niemals Tokens in Git einchecken –
.envin.gitignoreaufnehmen. - Mehrere Modelle: Sie können in Claude Code pro Sitzung das Modell wechseln – so können Sie komplexe Aufgaben mit Claude Sonnet 4.5 (15 $/MTok) und Routine mit DeepSeek V3.2 (0,42 $/MTok) erledigen.
Zusammenfassung
Sie haben gelernt, wie ein MCP-Server aufgebaut ist, wie Sie ihn in Claude Code einbinden und wie Sie typische Anfängerfehler vermeiden. Mit HolySheep AI als Backend haben Sie eine extrem günstige, schnelle (unter 50 ms) und in Asien bequem bezahlbare API zur Hand – alle führenden Modelle unter einer einzigen https://api.holysheep.ai/v1-Adresse.
👉 Registrieren Sie sich bei HolySheep AI — Startguthaben inklusive