Zugang im eigenen Netz
Der einfachere der beiden Wege: Das Programm auf dem Arbeitsplatz sendet den API-Schlüssel mit, und der Zugang steht. Es ist nichts weiter einzurichten — der Schlüssel entsteht beim ersten Start.
Wann dieser Weg passt
- Der Assistent läuft auf einem Rechner im Firmennetz.
- Es soll nichts von außen erreichbar sein.
Für den ersten Versuch ist das der richtige Weg: kein Webserver davor, keine Freigabe nach außen, jederzeit abschaltbar. Wenn dabei klar wird, dass der Zugang taugt, kann man ihn danach nach außen öffnen.
Was einzutragen ist
Im Assistenten wird hinterlegt:
| Angabe | Wert |
|---|---|
| Adresse | die in den Einstellungen angezeigte lokale Adresse, endet auf /mcp |
| Kopfzeile | x-api-key mit dem API-Schlüssel aus den Einstellungen |
Statt x-api-key geht auch Authorization: Bearer mit demselben Wert. Wie das Feld im
jeweiligen Programm heißt, ist unterschiedlich — verwendet wird immer der unveränderte
Schlüssel.
Leerzeichen am Anfang oder Ende sind der Klassiker. Den Schlüssel über das Kopiersymbol übernehmen, nicht abschreiben.
Siehe Einstellungen.
Beispiel: Claude Desktop
Claude Desktop bindet Zugänge im eigenen Netz über eine Konfigurationsdatei ein, nicht über
die Konnektoren in den Einstellungen — die sind für Adressen aus dem Internet gedacht. Die
Verbindung stellt dabei das kleine Hilfsprogramm mcp-remote her: Claude Desktop startet es
auf dem Arbeitsplatz, und es reicht die Anfragen mit dem API-Schlüssel an FINN.ghost weiter.
Dafür muss auf dem Arbeitsplatz Node.js installiert sein. mcp-remote selbst wird beim ersten Start automatisch aus dem Internet geladen, eine eigene Installation ist nicht nötig.
Die Konfigurationsdatei
Die Datei liegt unter:
%APPDATA%\Claude\claude_desktop_config.json
Am einfachsten öffnet man sie aus Claude Desktop heraus, über Einstellungen → Entwickler →
Konfiguration bearbeiten (englisch Settings → Developer → Edit Config). Darin wird der
Abschnitt mcpServers ergänzt:
{
"mcpServers": {
"finn": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://<server>:3000/mcp",
"--header", "X-API-Key:${FINN_TOKEN}"
],
"env": {
"FINN_TOKEN": "<API-Schlüssel>"
}
}
}
}
| Stelle | Einzutragen |
|---|---|
finn |
ein frei wählbarer Name, unter dem der Zugang in Claude erscheint |
https://<server>:3000/mcp |
die Adresse aus den Einstellungen von FINN.ghost, unverändert übernommen |
<API-Schlüssel> |
der API-Schlüssel aus den Einstellungen |
Steht in der Datei schon etwas, etwa ein Abschnitt preferences, wird mcpServers daneben eingefügt — durch ein Komma getrennt, innerhalb der äußeren geschweiften Klammern. Gibt es mcpServers schon, kommt nur der Eintrag finn dazu. Eine fehlerhafte Datei verwirft Claude Desktop beim Start.
Der Schlüssel steht in env und wird über ${FINN_TOKEN} in die Kopfzeile eingesetzt. Nach
dem Doppelpunkt kommt kein Leerzeichen — genau so wie im Beispiel.
Der API-Schlüssel steht in dieser Datei im Klartext. Sie gehört nur auf den eigenen Arbeitsplatz, nicht in ein Netzlaufwerk und nicht in eine Vorlage, die an andere Rechner verteilt wird.
Danach neu starten
Claude Desktop vollständig beenden — auch das Symbol im Infobereich der Taskleiste — und neu starten. Erst dann liest es die Datei neu ein. Unter Einstellungen → Entwickler ist danach zu sehen, ob der Zugang läuft oder mit welchem Fehler er nicht starten konnte.
Wenn das Zertifikat nicht zum Servernamen passt
Mit https prüft mcp-remote das Zertifikat. Ist es auf einen anderen Namen ausgestellt als
den, unter dem der Server im eigenen Netz angesprochen wird — etwa auf die öffentliche Domain
aus Let's Encrypt, während intern der Rechnername verwendet wird —, kommt keine Verbindung
zustande.
Am saubersten ist es, in der Adresse den Namen aus dem Zertifikat zu verwenden, sofern er im
eigenen Netz aufgelöst wird. Geht das nicht, lässt sich die Prüfung in env abschalten:
"env": {
"FINN_TOKEN": "<API-Schlüssel>",
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
}
Damit ist die Verbindung weiterhin verschlüsselt, aber nicht mehr geprüft: Ein anderer Rechner im Netz, der sich als FINN.ghost ausgibt, bekäme den Schlüssel. Das ist nur im eigenen, vertrauenswürdigen Netz vertretbar — und auch dort eine Notlösung.
Claude Code
Claude Code spricht die Adresse direkt an und braucht mcp-remote nicht. Eingerichtet wird
der Zugang einmal auf der Kommandozeile:
claude mcp add --transport http --scope user finn https://<server>:3000/mcp --header "X-API-Key: <API-Schlüssel>"
Mit --scope user gilt er für alle Projekte auf diesem Arbeitsplatz. Angezeigt und neu
verbunden wird er in Claude Code über /mcp.
Erkennbar im Protokoll
Jeder Aufruf steht im Protokoll von FINN.ghost, und daran hängt der Name des Programms, das
sich verbunden hat — etwa claude-code. Diesen Namen meldet der Assistent beim Verbinden
selbst.
Erkennbar ist damit das Programm, nicht die Person und nicht der Arbeitsplatz. Wo mehrere Personen mit demselben Schlüssel arbeiten, ist nicht unterscheidbar, wer eine Abfrage ausgelöst hat.