MCP und mobile Proxys: Schritt-für-Schritt-Anleitung zur Verbindung mit AI-Tools
Inhalt des Artikels
- Einführung
- Vorbereitung
- Was ist mcp (model context protocol)
- Warum ai-tools mobile proxys benötigen
- Schritt 1: strategie planen und zugang zu mobilem proxy erhalten
- Schritt 2: mcp-client installieren und umgebung vorbereiten
- Verbindung des mobilen proxys mit dem mcp-client
- Beispiel auf basis des mcp-servers mobileproxy.space
- Schritt 4: feineinstellungen für client und server
- Schritt 5: diagnose und logging
- Überprüfung des ergebnisses
- Häufige fehler
- Zusätzliche möglichkeiten
- Faq
- Schlussfolgerung
Einführung
In diesem praktischen Handbuch werden Sie Schritt für Schritt die Verbindung eines mobilen Proxys mit dem MCP-Client einrichten, damit Ihre AI-Tools stabil und zuverlässig mit externen Datenquellen und APIs arbeiten. Wir beginnen mit einer kurzen Erklärung, warum mobile Proxys überhaupt benötigt werden und wie MCP (Model Context Protocol) funktioniert. Danach bereiten wir die Umgebung vor, verbinden den Proxy, schauen uns ein konkretes Beispiel auf Basis des MCP-Servers mobileproxy.space an, führen einige Tests durch, analysieren typische Fehler und schließen mit erweiterten Möglichkeiten ab. Das Ergebnis: Sie haben eine funktionierende Konfiguration, die Sie in Ihr Team oder in die Produktion übertragen können.
Dieses Handbuch richtet sich an Entwickler, Datenanalysten und Integrationsingenieure, die ein reproduzierbares Netzwerkverhalten für AI-Tools erreichen und die Instabilität beim Zugriff auf externe Websites und APIs reduzieren möchten. Selbst wenn Sie MCP zum ersten Mal verwenden, werden Sie alle Schritte problemlos durchlaufen können. Fortgeschrittene Benutzer finden vordefinierte Codebeispiele und Optimierungstipps.
Vor Beginn ist es hilfreich, grundlegende Dinge zu verstehen: wie man ein Terminal öffnet, Node.js installiert, die JSON-Konfigurationsdatei bearbeitet und Protokolle liest. Ein tiefes Verständnis von Netzwerken ist nicht erforderlich. Wir werden alles Notwendige unterwegs erklären.
Benötigte Zeit: 60 bis 90 Minuten, je nachdem, ob Sie bereits die notwendigen Tools haben und über die erforderlichen Mobilproxy-Zugangsdaten verfügen. Wenn Sie den MCP-Client zum ersten Mal einrichten, planen Sie 90 Minuten ein, um alle Überprüfungen und Diagnosen sorgfältig durchzugehen.
Tipp: Wenn Sie diese Konfiguration in einer Teamumgebung umsetzen, vereinbaren Sie im Voraus einen gemeinsamen Aufbewahrungsort für Konfigurationen und Geheimnisse, um Passwörter zu den Proxys nicht über persönliche Dateien der Entwickler zu verstreuen.
Überprüfung: Am Ende des Abschnitts "Ergebnisüberprüfung" erhalten Sie eine Checkliste, mit der Sie sicherstellen können, dass der Proxy tatsächlich verwendet wird und die Tools erfolgreich über das mobile Netzwerk ins Internet gehen.
Vorbereitung
Um eine korrekte und schnelle Einrichtung zu gewährleisten, sammeln Sie zuvor alle benötigten Tools und Zugänge. Dies spart Zeit und hilft, Fehler im Verlauf zu vermeiden.
Benötigte Tools, Programme und Zugänge
- Betriebssystem: Windows 10/11, macOS 12+ oder Linux mit Installationsrechten.
- Node.js LTS 20+ (inklusive npm) zum Ausführen der MCP-Server in JavaScript/TypeScript.
- Code-Editor: VS Code, JetBrains oder einen anderen Ihrer Wahl.
- Zugangsdaten für den mobilen Proxy: Host, Port, Benutzername, Passwort. Idealerweise auch die URL zur IP-Rotation und Parameter für "sticky" Sessions.
- MCP-Client: z.B. Claude Desktop oder Cline (VS Code Erweiterung), die die Verbindung zu externen MCP-Servern unterstützen.
- Grundlegende Netzwerkdiagnosetools: curl oder ähnliche Programme, um die Internetverbindung über den Proxy zu überprüfen.
Systemanforderungen
- Stabiles Internet auf Ihrer Arbeitsmaschine.
- Offener ausgehender Zugang zu den Ports des mobilen Proxys (häufig 3128, 8000, 8080 oder ein anderer, der vom Anbieter angegeben wird).
- Speicher: mindestens 200 MB für Node.js-Pakete und Protokolle.
Was heruntergeladen, installiert und konfiguriert werden muss
- Installieren Sie Node.js LTS 20+ von der offiziellen Distribution Ihres Betriebssystems.
- Bereiten Sie einen Arbeitsprojektordner vor, z.B. mcp-mobileproxy, in dem der Code und die Konfigurationen gespeichert werden.
- Überprüfen Sie, ob Ihr MCP-Client installiert ist: Starten Sie Claude Desktop oder öffnen Sie VS Code mit installiertem Cline.
- Bereiten Sie die Zugangsdaten für den mobilen Proxy (Host, Port, Benutzer, Passwort) vor, sowie die URL oder den Befehl zur IP-Rotation und Parameter für "sticky" Sessions, sofern diese von Ihrem Tarif vorgesehen sind.
Backups erstellen
Wenn Sie die Konfiguration des MCP-Clients (z.B. die JSON-Datei) bearbeiten, erstellen Sie vor Änderungen ein Backup der ursprünglichen Datei. Kopieren Sie sie neben die ursprüngliche Datei und fügen Sie die Endung .bak hinzu. Wenn etwas schiefgeht, können Sie schnell zu den ursprünglichen Einstellungen zurückkehren.
Achtung: Speichern Sie niemals Passwörter zu Proxys in öffentlichen Repositories. Für die Teamarbeit verwenden Sie Geheimnis-Manager oder Umgebungsvariablen, um eine Datenleakage zu vermeiden.
Überprüfung: Stellen Sie sicher, dass Node.js installiert ist (der Befehl node -v gibt die Version aus) und dass Sie wissen, wo sich die Konfigurationsdatei Ihres MCP-Clients befindet. Ihre Zugangsdaten für den mobilen Proxy sind griffbereit und der Internetzugang stabil.
Was ist MCP (Model Context Protocol)
MCP ist ein offenes Protokoll, das die Interaktion von AI-Clients (wie Desktop-Anwendungen und IDE-Plugins) mit externen Möglichkeiten, die von MCP-Servern bereitgestellt werden, standardisiert. Die Idee ist einfach: Der Client zeigt im Interface „Tools“ und „Ressourcen“ an, der Server implementiert deren Logik. Dadurch kann derselbe Server mit verschiedenen Clients verbunden werden, und die Tools sehen gleich aus und funktionieren gleich.
Wichtige Begriffe einfach erklärt
- MCP-Client – Anwendung, in der Sie mit dem Modell kommunizieren und auswählen, welche Tools ihm zur Verfügung stehen. Beispiele: Claude Desktop, Cline.
- MCP-Server – Drittanbieterprogramm, das "Tools" (tools), "Ressourcen" (resources), "Prompts" (prompts) implementiert. Der Server stellt Beschreibungen der Möglichkeiten bereit und verarbeitet Anfragen vom Client.
- Tools – Aktionen, die das Modell ausführen kann: Abfrage einer Web-API, Lesen von Dateien, Parsen von HTML, HTTP-Anfrage über einen Proxy usw.
- Transport – Methode der Verbindung zwischen Client und Server (in der Regel stdio oder Webverbindung). Für Sie ist das transparent: Sie geben den Startbefehl für den Server und die Parameter an.
Wesentliche Funktionsprinzipien
Der Client initiiert eine Sitzung mit dem MCP-Server und erhält von ihm eine deklarative Beschreibung der Möglichkeiten: welche Tools verfügbar sind, welche Parameter sie akzeptieren und was sie zurückgeben. Wenn Sie, während Sie mit dem Modell interagieren, anfordern, dass eine Aktion ausgeführt wird, ruft der Client das entsprechende Tool beim Server auf. Der Server erledigt die ganze „schmutzige“ Arbeit – geht ins Internet, fragt Datenbanken ab, parst Dateien – und gibt das Ergebnis an den Client zurück. In diesem Szenario ist uns wichtig, dass die Netzwerkzugriffe des Servers über den mobilen Proxy und nicht direkt erfolgen. So werden alle Anfragen der AI-Tools vorhersehbar geroutet: stabile IPs, Rotationen, „sticky“ Sessions, Regionalität usw.
Was vor dem Start wichtig zu verstehen ist
- Wo genau Sie den Proxy aktivieren werden: global über Umgebungsvariablen oder lokal im Code des MCP-Servers. Beide Varianten sind gültig, aber jede hat ihre Vorteile.
- Wie Sie bestätigen werden, dass die Anfrage tatsächlich über den Proxy geht: zum Beispiel durch eine Abfrage Ihrer externen IP, Protokollen des Proxy-Anbieters oder Markierungen in den Headern.
- Welche IP-Rotationsstrategie Sie benötigen: manuelles Rotieren per Knopfdruck, automatisch nach N Anfragen oder „sticky“ Sessions für die Dauer der Aufgabe.
Tipp: Überlegen Sie sich die Rotationsstrategie im Detail, bevor Sie starten. Häufige Rotationen sind nicht immer vorteilhaft: Viele Websites bevorzugen eine stabile „sticky“ Session im Rahmen einer Datenakquise oder API-Tests.
Überprüfung: Sie verstehen, dass MCP eine „Brücke“ zwischen dem Client und externen Tools ist, während der mobile Proxy einen kontrollierten Pfad für die Netzwerkaufrufe dieser Tools bereitstellt. Ziel ist es, dass alle Netzwerkschritte über den festgelegten Proxy-Anbieter gehen.
Warum AI-Tools mobile Proxys benötigen
Mobile Proxys bieten wichtige Vorteile, wenn AI-Tools mit externen Ressourcen und APIs arbeiten:
- Stabilität des Zugangs: Einige Dienste sind empfindlich gegenüber der Art der IP und der Aktivität von ihr. Mobile IPs haben häufig eine andere Filterheuristik, was die Vorhersehbarkeit erhöht.
- Flexible Rotation: Sie können IPs auf Knopfdruck, nach Zeit oder nach Anzahl der Anfragen rotieren, um die Ansammlung von „Rauschen“ und unnötigen Sperrungen auf einer Adresse zu vermeiden.
- Sessions: „Sticky“ Sessions erlauben es, dieselbe IP während der Ausführung der Agentenaufgabe (z.B. für 10–30 Minuten) beizubehalten, um den kontinuierlichen Austausch nicht zu unterbrechen.
- Regionalität: Die Wahl des geografischen Standorts, wenn es vom Tarif angeboten wird, hilft, das Verhalten der Dienste für verschiedene Länder zu testen.
Im Kontext von MCP bedeutet das, dass jedes Tool, das auf der Serverseite implementiert ist, genau den Netzwerkpfad verwendet, den Sie festgelegt haben, was Reproduzierbarkeit sicherstellt und Chaos bei der Debugging verringert.
Achtung: Verwenden Sie mobile Proxys unbedingt im Einklang mit geltendem Recht und den Nutzungsbedingungen der Ziel-Dienste. Die Konfiguration des Proxys in dieser Anleitung soll Stabilität und Reproduzierbarkeit der Arbeit von AI-Tools gewährleisten, nicht jedoch das Umgehen von Einschränkungen.
Tipp: Wenn Ihr Fall die Integration des Agenten mit mehreren Quellen umfasst, teilen Sie diese in Sessions auf: einige Tools – in „sticky“ Sessions, andere – mit schnell rotierenden IPs. Dies reduziert Überschneidungen und Artefakte.
Überprüfung: Formulieren Sie Ihr Szenario: Warum benötigen Sie einen mobilen Proxy (Stabilität, Sessions, Regionalität), wie werden Sie den Erfolg messen (weniger Verbindungsfehler, stabile IPs in Logs, keine unerwarteten Sperrungen).
Schritt 1: Strategie planen und Zugang zu mobilem Proxy erhalten
Ziel des Schrittes
Bestimmen Sie die Parameter der Verwendung des mobilen Proxys (Art der Sessions, Rotation, Regionalität) und erhalten Sie funktionierende Zugangsdaten für die weitere Integration mit dem MCP-Client und Server.
Schritt-für-Schritt-Anleitung
- Bestimmen Sie, ob Sie eine „sticky“ Session benötigen. Wenn der Agent den Kontext während der gesamten Aufgabe beibehalten muss, wählen Sie den „sticky“ Modus für 10–30 Minuten.
- Wählen Sie die Rotationsstrategie: manuell per Knopfdruck/URL, nach Zeitplan oder nach Anzahl der Anfragen. Für den Anfang ist manuelles Rotieren ausreichend.
- Erhalten Sie von Ihrem Anbieter die Zugangsdaten: Host, Port, Benutzer, Passwort. Gegebenenfalls – die URL zur IP-Rotation und das Login-Muster für „sticky“ Sessions.
- Überprüfen Sie, ob Whitelist-IP-Listen erforderlich sind. Wenn Ihr Anbieter die Bindung Ihrer ausgehenden IP fordert, fügen Sie diese im Voraus im persönlichen Bereich des Anbieters hinzu.
- Führen Sie einen Test mit curl durch. Befehl: curl -x http://user:password@host:port https://api.ipify.org. Ihr externes IP sollte über den Proxy zurückgegeben werden.
- Speichern Sie die Zugangsdaten in Umgebungsvariablen: zum Beispiel PROXY_HOST, PROXY_PORT, PROXY_USER, PROXY_PASS. Das ist sicherer, als sie direkt im Code zu speichern.
Achtung: Versenden Sie niemals die Proxy-Daten über ungesicherte Kanäle. Wenn Sie sie Kollegen weitergeben, verwenden Sie verschlüsselte Austauschmethoden und rotiert regelmäßig die Passwörter gemäß den Vorgaben.
Tipp: Wenn der Anbieter die Generierung eines separaten Logins mit Beschränkungen (Lebensdauer, Geografie) unterstützt, erstellen Sie separate Zugangsdaten für Entwicklung, Test und Produktion. So vermeiden Sie versehentliche Tarifüberlastungen.
Erwartetes Ergebnis
Sie haben Host, Port, Benutzernamen und Passwort für den mobilen Proxy, optional die URL zur Rotation und eine Anleitung für die „sticky“ Session. Der Test mit curl bestätigt, dass der Datenverkehr tatsächlich über den Proxy geht.
Mögliche Probleme und Lösungen
- Fehler 407 Proxy-Authentifizierung erforderlich → Ungültiger Benutzername/Passwort. Überprüfen Sie die Zugangsdaten. Stellen Sie sicher, dass Sonderzeichen korrekt codiert sind, wenn Sie sie in der URL verwenden.
- Timeout → Port ist durch die Firewall blockiert. Erlauben Sie ausgehende Verbindungen zum Port des Anbieters oder erkundigen Sie sich nach einem alternativen Port.
- Externe IP ändert sich nicht → Datenverkehr geht am Proxy vorbei. Überprüfen Sie die Syntax des Schlüssels -x und die Authentifizierung.
Überprüfung: Der curl-Befehl gibt die externe IP zurück, die sich von Ihrer üblichen unterscheidet und die mit der übereinstimmt, die im persönlichen Bereich des Proxy-Anbieters angezeigt wird.
Schritt 2: MCP-Client installieren und Umgebung vorbereiten
Ziel des Schrittes
Die Infrastruktur vorbereiten: MCP-Client (z.B. Claude Desktop) installieren oder überprüfen, ein Projekt für den MCP-Server erstellen und Abhängigkeiten für die Arbeit über den Proxy einrichten.
Schritt-für-Schritt-Anleitung
- Überprüfen Sie, ob Node.js installiert ist: Führen Sie im Terminal den Befehl node -v aus. Wenn die Version unter 20 liegt, installieren Sie die aktuelle LTS-Version.
- Erstellen Sie einen Projektordner: mkdir mcp-mobileproxy && cd mcp-mobileproxy.
- Initialisieren Sie das Projekt: npm init -y. Das erstellt die package.json.
- Installieren Sie die MCP-Abhängigkeiten: npm install @modelcontextprotocol/sdk axios https-proxy-agent.
- Erstellen Sie die Datei index.js, in der wir den Beispielcode für den MCP-Server unterbringen.
- Öffnen Sie den MCP-Client. Für Claude Desktop suchen Sie die Konfigurationsdatei. Unter Windows wird sie normalerweise im Benutzerprofil im Anwendungsdatenverzeichnis gespeichert, unter macOS im Library/Application Support-Verzeichnis. Machen Sie eine Sicherung der Einstellungsdatei, bevor Sie Änderungen vornehmen.
- Wenn Sie Cline (VS Code) verwenden, öffnen Sie die Erweiterungseinstellungen und suchen Sie den Abschnitt zum Hinzufügen benutzerdefinierter MCP-Server (in der Regel der Punkt mit der Konfiguration „mcp servers“). Bereiten Sie sich darauf vor, das Serverskript aus Ihrem Projekt hinzuzufügen.
Tipp: Halten Sie den Pfad zum MCP-Serverprojekt ohne Leerzeichen und ungenutzte Sonderzeichen. Das vereinfacht die Konfiguration und verringert das Risiko von Fehlern mit Anführungszeichen.
Erwartetes Ergebnis
Der Projektordner für den MCP-Server mit installierten Abhängigkeiten ist fertig. Sie wissen, wo und wie Sie in Ihrem MCP-Client den neuen Server hinzufügen und wo die Konfigurationsdatei des Clients gespeichert ist.
Mögliche Probleme und Lösungen
- npm nicht gefunden → Node.js ist ohne npm installiert oder nicht im PATH. Installieren Sie Node.js mit npm erneut und starten Sie das Terminal neu.
- Kein Zugriff auf das Verzeichnis → Führen Sie das Terminal mit einem Benutzer mit Schreibberechtigungen aus oder verwenden Sie einen Ordner in Ihrem Profil.
- Konfigurationsdatei des Clients nicht gefunden → Öffnen Sie die Hilfe zu Ihrem MCP-Client oder die lokale Dokumentation auf der Seite mcp.html, um den Pfad zu klären.
Überprüfung: Führen Sie npm list im Projektordner aus und stellen Sie sicher, dass die Pakete @modelcontextprotocol/sdk, axios und https-proxy-agent installiert sind. Die Konfigurationsdatei des MCP-Clients wurde gefunden und die Sicherung des ursprünglichen Zustands ist gespeichert.
Verbindung des mobilen Proxys mit dem MCP-Client
Ziel des Schrittes
Stellen Sie sicher, dass alle Netzwerkaufrufe der von MCP-Server ausgeführten Tools über den mobilen Proxy geleitet werden. Wir betrachten zwei Ansätze: globale Umgebungsvariablen und Proxy auf Codeebene.
Schritt-für-Schritt-Anleitung (über Umgebungsvariablen des Clients)
- Öffnen Sie die Konfiguration des MCP-Clients und suchen Sie den Abschnitt zum Hinzufügen benutzerdefinierter Server (z.B. mcpServers).
- Fügen Sie einen neuen Server hinzu und geben Sie den Node.js-Startbefehl und den Pfad zu Ihrer index.js an. Beispielstruktur: Servername, Feld command: node, args: ["Pfad/zur/index.js"].
- In der env-Sektion geben Sie die Variablen an: HTTP_PROXY und HTTPS_PROXY mit dem Wert http://user:password@host:port. Wenn Sie einen nicht autorisierten Proxy verwenden, geben Sie nur host:port an.
- Gegebenenfalls fügen Sie NO_PROXY für interne Adressen hinzu, die nicht über den Proxy gehen sollen (z.B. localhost, 127.0.0.1).
- Fügen Sie Variablen für die Rotation hinzu, wenn Sie diese vom Server aus aufrufen möchten: z.B. MOBILEPROXY_ROTATE_URL und MOBILEPROXY_API_KEY, wenn der Anbieter einen Schlüssel verlangt.
- Speichern Sie die Konfiguration und starten Sie den MCP-Client neu, damit er den neuen Eintrag liest und Ihren Server mit den erforderlichen Umgebungsvariablen startet.
Schritt-für-Schritt-Anleitung (über Proxy auf Codeebene)
- Öffnen Sie index.js und fügen Sie https-proxy-agent oder axios-Proxy-Konfiguration hinzu.
- Erstellen Sie den Agenten mit den Daten aus process.env: host, port, user, password.
- Übergeben Sie den Agenten in jede HTTP-Anfrage innerhalb der Tools des MCP-Servers.
- Für Flexibilität fügen Sie die Möglichkeit hinzu, auszuwählen: wenn keine Umgebungsvariablen gesetzt sind, verwenden Sie eine direkte Verbindung; wenn sie gesetzt sind – verwenden Sie den Proxy.
Tipp: Beginnen Sie mit den Umgebungsvariablen auf Client-Ebene: Das ist schneller und einfacher für den ersten Start. Fügen Sie dann nach Bedarf eine Feinsteuerung im Code hinzu.
Erwartetes Ergebnis
Der MCP-Client startet Ihren Server mit den festgelegten Umgebungsvariablen, und alle ausgehenden HTTP-Anfragen der Server-Tools erfolgen über den mobilen Proxy.
Mögliche Probleme und Lösungen
- Server startet nicht → Ungültiger Pfad zum Skript in args oder keine Berechtigung zum Starten. Überprüfen Sie den Pfad und verwenden Sie bei Bedarf absolute Pfade.
- Proxy wird ignoriert → Der Client hat die env nicht an den Server übergeben. Stellen Sie sicher, dass Sie env genau in der Konfiguration des spezifischen MCP-Servers angeben und nicht global oder in einem anderen Abschnitt.
- Proxy-Authentifizierung schlägt fehl → Überprüfen Sie, ob der Benutzername/Passwort keine Zeichen @ und : ohne URL-Codierung enthält. Gegebenenfalls geben Sie sie als separate Variablen (PROXY_USER, PROXY_PASS) an und erstellen Sie die URI im Code.
Überprüfung: Starten Sie ein Tool, das eine HTTP-Anfrage ausführt, und vergleichen Sie die externe IP vor und nach Aktivierung des Proxys. Sie sollte mit der IP Ihres mobilen Proxys übereinstimmen.
Beispiel auf Basis des MCP-Servers mobileproxy.space
Ziel des Schrittes
Erstellen Sie einen minimalen MCP-Server, der: 1) in der Lage ist, die externe IP über den mobilen Proxy zu erhalten, 2) die IP-Rotation aufruft, 3) beliebige HTTP-Anfragen über den mobilen Proxy ausführt. Wir verwenden das Paket @modelcontextprotocol/sdk und axios, und der Anbieter ist der MCP-Server mobileproxy.space als Beispiel für die Integration mit einem mobilen Proxy-Anbieter.
Code des MCP-Servers (index.js)
Im Folgenden ein Beispiel in JavaScript. Es registriert drei Tools: get_external_ip, rotate_ip und fetch_url. Die Tools verwenden den Proxy, die Parameter stammen aus den Umgebungsvariablen. Für die URL der externen IP verwenden wir den Standard-Endpunkt ipify, und die Rotation erfolgt über MOBILEPROXY_ROTATE_URL.
Beispielcode:
Speichern Sie als index.js
const { Server } = require('@modelcontextprotocol/sdk'); const axios = require('axios'); const { HttpsProxyAgent } = require('https-proxy-agent'); function buildProxyAgent() { const host = process.env.PROXY_HOST; const port = process.env.PROXY_PORT; const user = process.env.PROXY_USER; const pass = process.env.PROXY_PASS; if (!host || !port) return null; let auth = ''; if (user && pass) {auth = encodeURIComponent(user) + ':' + encodeURIComponent(pass) + '@'; } const proxyUrl = 'http://' + auth + host + ':' + port; return new HttpsProxyAgent(proxyUrl); } async function axiosViaProxy(url, opts = {}) { const agent = buildProxyAgent(); const cfg = { url, method: opts.method || 'GET', headers: opts.headers || {}, data: opts.data, timeout: 20000 }; if (agent) {cfg.httpsAgent = agent;cfg.httpAgent = agent;cfg.proxy = false; } return axios(cfg); } const server = new Server({ name: 'mcp-mobileproxy-space', version: '1.0.0' }); server.tool('get_external_ip', { description: 'Gibt die externe IP über den mobilen Proxy zurück', inputSchema: { type: 'object', properties: {}, additionalProperties: false } }, async () => { const res = await axiosViaProxy('https://api.ipify.org?format=json'); return { content: [{ type: 'text', text: JSON.stringify(res.data) }] }; }); server.tool('rotate_ip', { description: 'Führt die IP-Rotation bei dem mobilen Proxy-Anbieter aus', inputSchema: { type: 'object', properties: {}, additionalProperties: false } }, async () => { const rotateUrl = process.env.MOBILEPROXY_ROTATE_URL; if (!rotateUrl) {return { content: [{ type: 'text', text: 'MOBILEPROXY_ROTATE_URL ist nicht festgelegt' }] }; } const res = await axiosViaProxy(rotateUrl); return { content: [{ type: 'text', text: 'Rotation beantragt: ' + res.status }] }; }); server.tool('fetch_url', { description: 'HTTP-Anfrage über den mobilen Proxy', inputSchema: { type: 'object', properties: { url: { type: 'string' }, method: { type: 'string', enum: ['GET','POST','PUT','DELETE'], default: 'GET' }, headers: { type: 'object', additionalProperties: { type: 'string' } }, body: { type: 'string' } }, required: ['url'], additionalProperties: false } }, async (input) => { const cfg = { method: input.method || 'GET', headers: input.headers || {}, data: input.body }; const res = await axiosViaProxy(input.url, cfg); const out = { status: res.status, headers: res.headers, snippet: typeof res.data === 'string' ? res.data.slice(0, 500) : JSON.stringify(res.data).slice(0, 500) }; return { content: [{ type: 'text', text: JSON.stringify(out) }] }; }); server.start();
Einrichten der Umgebungsvariablen
- In der Konfiguration des MCP-Clients, neben dem Eintrag Ihres Servers, fügen Sie env: PROXY_HOST, PROXY_PORT, PROXY_USER, PROXY_PASS hinzu.
- Fügen Sie MOBILEPROXY_ROTATE_URL hinzu, die vom mobilen Anbieter bereitgestellt wird. Dies kann eine gesicherte URL sein, die bei GET-Anfrage die IP-Wechsel initiiert.
- Starten Sie den MCP-Client neu, um die Variablen anzuwenden.
Tipp: Wenn Ihr Anbieter mobileproxy.space "sticky" Sessions über die Modifikation des Benutzernamens oder der Anfrageparameter unterstützt, erstellen Sie separate Variablen, wie PROXY_SESSION oder PROXY_ZONE, und bilden Sie auf deren Basis PROXY_USER dynamisch.
Überprüfung der Funktionsweise der Tools
- Im Interface des MCP-Clients finden Sie die Liste der Server-Tools mcp-mobileproxy-space: get_external_ip, rotate_ip, fetch_url.
- Rufen Sie get_external_ip auf und stellen Sie sicher, dass ein JSON mit Ihrer externen IP über den Proxy zurückgegeben wird.
- Rufen Sie rotate_ip auf und warten Sie auf die Bestätigung des Status 200 oder einem anderen Erfolgs-Code, falls der Anbieter so antwortet.
- Rufen Sie fetch_url mit dem Parameter url: https://example.org auf und überprüfen Sie, dass ein HTML-Ausschnitt und der Code 200 in der Antwort enthalten sind.
Überprüfung: Nach dem Aufruf von get_external_ip entspricht die externe IP, die Sie in der Antwort sehen, der IP, die in Ihrem persönlichen Bereich mobileproxy.space angezeigt wird. Nach rotate_ip ändert sich die IP in eine neue (entsprechend den Regeln Ihres Tarifs und Anbieters).
Mögliche Probleme und Lösungen
- Tools werden nicht angezeigt → Server ist nicht gestartet. Überprüfen Sie die Logs des Clients und den Pfad zur index.js. Starten Sie den Server separat: node index.js, um mögliche Fehler zu sehen.
- rotate_ip gibt einen Fehler zurück → Überprüfen Sie den Wert von MOBILEPROXY_ROTATE_URL und den Zugang aus Ihrem Netzwerk. Stellen Sie sicher, dass die URL korrekt ist und keine separate Authentifizierung erforderlich ist.
- fetch_url gibt unerwartete Header zurück → Einige Websites sind von User-Agent und Accept-Language abhängig. Übergeben Sie diese in den Headers, um einen normalen Browser zu simulieren.
Tipp: Um die Stabilität der Anfragen zu gewährleisten, fügen Sie die Header User-Agent, Accept, Accept-Language hinzu. Dies ist besonders nützlich beim Parsen von HTML und Interaktionen mit APIs, die einen Client mit einer bestimmten Signatur erwarten.
Schritt 4: Feineinstellungen für Client und Server
Ziel des Schrittes
Die Konfiguration debuggen und stabilisieren: Logging, Timeouts, "sticky" Sessions, Serverneustart bei Fehlern, Anfrageratenbegrenzung und passende Rotationsstrategie.
Detaillierte Schritt-für-Schritt-Anleitung
- Erweitertes Logging hinzufügen. Wickeln Sie die Aufrufe von axiosViaProxy in index.js in try/catch, protokollieren Sie Antwortcodes, Verzögerungen und Fehler mit Zeitstempeln.
- Timeouts konfigurieren. Reduzieren Sie die Timeouts für instabile Ressourcen und aktivieren Sie Wiederholungen mit exponentieller Verzögerung (backoff), wenn es angebracht ist.
- Aktivieren Sie "sticky" Sessions für Aufgaben, die eine Reihenfolge erfordern: speichern Sie session_id in env oder im Serverzustand und bilden Sie PROXY_USER dynamisch.
- Limitieren Sie die Häufigkeit der Aufrufe von fetch_url: Fügen Sie einen Zähler für Anfragen hinzu und einen Wartezeitintervall zwischen Anfragen an dieselbe Domain. Dies reduziert das Risiko temporärer Sperrungen auf den Zielressourcen.
- Richten Sie den Serverneustart ein. Wenn er aufgrund von Netzwerkfehlern abstürzt, verwenden Sie einen Prozessmanager (z.B. node mit dem Flag – oder alternative Tools, die in Ihrer Umgebung anwendbar sind), damit der Server automatisch neu startet.
- Ihre IP-Rotationsvorgaben im Code reflektieren: z.B. nach N erfolgreichen Anfragen oder nach einem Timer alle M Minuten, wenn dies von den Bedingungen des Anbieters erlaubt ist.
Tipp: Fügen Sie einen Statusbefehl server_status hinzu, der den aktuellen Zustand zurückgibt: aktiver session_id, Anfragerate, Zeit bis zur nächsten Rotation. Dies erleichtert die Wartung und Kontrolle.
Erwartetes Ergebnis
Ihr MCP-Server ist robust gegenüber unerwarteten Ausfällen, verwendet korrekt "sticky" Sessions und Rotation, protokolliert wichtige Ereignisse, und die Anfragerate kann ohne Codeänderungen des Clients reguliert werden.
Mögliche Probleme und Lösungen
- Übermäßige Logs → Führen Sie Logging-Level (info, warn, error) ein und steuern Sie diese durch die Umgebungsvariable LOG_LEVEL.
- Langsame Verarbeitung → Überprüfen Sie, ob Sie zu aggressive Verzögerungen eingestellt haben oder ob die IP-Rotation zu häufig aufgerufen wird.
- Zufällige Verbindungsabbrüche → Aktivieren Sie Keep-Alive für die Agenten und reduzieren Sie die Anzahl an gleichzeitigen Verbindungen zu einem Host.
Überprüfung: Es ist in den Logs zu sehen, dass die Anfragen stabil ausgeführt werden, und dass bei Auslösung der Rotation die neue IP schnell durch den Aufruf von get_external_ip bestätigt wird. Fehler werden ohne Serverabstürze verarbeitet.
Schritt 5: Diagnose und Logging
Ziel des Schrittes
Erlernen Sie, Netzwerkprobleme schnell zu identifizieren und zu beheben: Proxy-Authentifizierung, Timeouts, falsche Header, Routingfehler und Konflikte in den Umgebungsvariablen.
Schritt-für-Schritt-Anleitung
- Überprüfen Sie die Umgebungsvariablen vor dem Start: Geben Sie process.env.PROXY_HOST und andere wichtige Variablen im Log beim Start des Servers aus (ohne Passwörter).
- Führen Sie eine separate Testanfrage aus dem Code (z.B. an ipify) durch und geben Sie das gesamte Antwortobjekt aus: Code, Header, erste Bytes des Körpers.
- Erfassen Sie die minimalen Metriken: DNS-Zeit, TLS-Verbindungszeit, Gesamtantwortzeit. Dies hilft zu verstehen, wo der „engste Punkt“ ist.
- Überprüfen Sie die Header, die Sie senden: User-Agent, Accept, Content-Type. Stellen Sie sicher, dass sie den Erwartungen der Ziel-API oder Website entsprechen.
- Führen Sie einen Test mit curl zum Vergleich durch. Wenn curl über denselben Proxy stabil funktioniert, der Server jedoch nicht, suchen Sie das Problem im Code (Agent, Timeout, proxy=false für axios).
Tipp: Speichern Sie maskierte Authentifizierungslogs: Ersetzen Sie Teile des Benutzernamens und Passworts durch Sterne, wenn Sie das Log ausgeben. Dies beschleunigt die Analyse von Vorfällen, ohne das Risiko von Geheimnissen zu gefährden.
Erwartetes Ergebnis
Sie sind in der Lage, Probleme schnell zu lokalisieren: unterscheiden Sie zwischen Netzwerk-Timeouts und Authentifizierungsfehlern oder falschen Headern, sehen Sie, wo und warum Anfragen verzögert oder abgelehnt werden.
Mögliche Probleme und Lösungen
- HTTP 403 oder 429 → Zu häufige Anfragen oder verdächtige Client-Signaturen. Verringern Sie die Häufigkeit, konfigurieren Sie die Header, verwenden Sie "sticky" Sessions für die Aufgabe.
- Gelegentlich auftretende Verbindungsfehler → Erhöhen Sie die Timeouts und aktivieren Sie Wiederholungen mit schrittweiser Verzögerung. Überprüfen Sie die Stabilität des mobilen Kanals beim Anbieter.
- Datenunterschiede → Vergleichen Sie Antworten über und ohne Proxy in einer Testumgebung. Überprüfen Sie die Kodierung und übergeben Sie die benötigten Header Accept-Charset.
Überprüfung: Nach den Testergebnissen haben Sie eine Übersicht über die Probleme: Sie wissen, wie lange jeder Schritt der Anfrage dauert und können die Konfiguration gezielt optimieren.
Überprüfung des Ergebnisses
Checkliste
- Die MCP-Server-Tools werden im Client angezeigt.
- Der Aufruf von get_external_ip gibt die IP des mobilen Proxys zurück.
- Die IP-Rotation wird ausgeführt und durch eine IP-Änderung bestätigt.
- Beliebige fetch_url-Anfragen werden erfolgreich an mehrere Domains weitergeleitet.
- Logs sind verständlich: Antwortcodes, Timings und minimal diagnostische Nachrichten sind sichtbar.
Wie zu testen
- Führen Sie drei aufeinanderfolgende Anfragen an get_external_ip durch und zeichnen Sie die IP auf. Rufen Sie dann rotate_ip auf und wiederholen Sie get_external_ip. Stellen Sie sicher, dass sich die IP entsprechend den Regeln Ihres Tarifs geändert hat.
- Führen Sie fetch_url an zwei verschiedenen Domains aus. Vergleichen Sie die Codes und Header. Stellen Sie sicher, dass es keine systematischen Fehler gibt.
- Nutzen Sie die "sticky" Session (falls vorgesehen) und überprüfen Sie, dass die IP während der Sessionzeit konstant bleibt.
Ergebnisse der erfolgreichen Durchführung
- Stabiler Prozentsatz erfolgreicher Anfragen (200 OK) an Ihre Zielressourcen.
- Vorhersehbare Rotation ohne unerwartete IP-Sprünge während der "sticky" Session.
- Niedrige Anzahl an Timeouts bei korrekten Timeouts und Retries.
Tipp: Integrieren Sie einen automatischen "Checkpoint"-Test in Ihr CI: führen Sie get_external_ip und einen fetch_url vor dem Deployment aus. Dies ermöglicht es Ihnen, Probleme beim Anbieter oder in der Konfiguration frühzeitig zu erkennen.
Häufige Fehler
Problem → Ursache → Lösung
- Proxy wird nicht angewendet → Umgebungsvariablen werden nicht an den Serverprozess übergeben → Geben Sie env auf der Ebene des MCP-Server-Eintrags in der Clientkonfiguration an und starten Sie den Client neu.
- Proxy-Authentifizierung schlägt fehl → Sonderzeichen im Benutzernamen/Passwort machen die URI ungültig → Setzen Sie Benutzername/Passwort als separate Variablen und erstellen Sie proxyUrl mit encodeURIComponent.
- HTTP 429 Too Many Requests → Zu häufige Rotation oder hoher RPS → Beschränken Sie die Anfragehäufigkeit, verwenden Sie eine Warteschlange, nutzen Sie "sticky" Sessions für aufeinanderfolgende Operationen.
- Zufällige 5xx bei den Ziel-Diensten → Aggressive Retries „zerstören“ instabile Ressourcen → Führen Sie einen Jitter in den Backoff ein und reduzieren Sie die Anzahl der Wiederholungen.
- Keine Tools im Dashboard → MCP-Server ist beim Start abgestürzt → Starten Sie den Server im Terminal direkt, lesen Sie den Stacktrace und beheben Sie Syntaxfehler, und verbinden Sie ihn anschließend erneut.
- IP ändert sich nicht nach der Rotation → Rotation wurde nicht abgeschlossen oder der Pfad wurde cache → Warten Sie den vom Anbieter angegebenen Zeitraum oder beantragen Sie eine Bestätigung des Rotationsstatuses über deren API.
- Konflikte mit lokalen Diensten → Der Proxy wurde auf alles angewendet, einschließlich localhost → Verwenden Sie NO_PROXY=localhost,127.0.0.1, damit lokale Aufrufe direkt gehen.
Überprüfung: Wiederholen Sie das problematische Szenario nach den Änderungen. Stellen Sie sicher, dass das Symptom verschwunden ist: Proxy wird angewendet, Authentifizierung funktioniert, Antwortcodes sind wie erwartet.
Zusätzliche Möglichkeiten
Erweiterte Konfigurationen
- Geheimnisse und Schlüssel: Lagern Sie alle Passwörter und Schlüssel in Umgebungsvariablen oder Geheimnis-Managern aus. Vernähen Sie diese nicht im Code.
- Geotargeting: Wenn mobileproxy.space die Auswahl des Landes/der Region ermöglicht, gestalten Sie ein Tool set_region und wechseln Sie die Geografie ohne Serverneustart.
- Proxy-Pools: Verwenden Sie für hohe Lasten einen Pool aus mehreren mobilen Proxys und Regeln zur Verteilung (Round-Robin, nach Domain, nach Aufgabe).
- Kontrolle der Anfragehäufigkeit: Fügen Sie einen globalen Rate Limiter in den Server ein, um nicht von der Disziplin der Agenten abhängig zu sein.
Optimierung
- Caching: Cachen Sie Antworten von unveränderbaren Ressourcen für kurze Zeit. Dies reduziert den Traffik und beschleunigt die Antworten.
- Parallelität: Beschränken Sie die gleichzeitigen Anfragen an einen Host, erlauben Sie jedoch Parallelität über Hosts, um kein „Flaschenhals“ zu schaffen.
- Profiling: Erfassen Sie Metriken nach Domains und Anfragearten. So verstehen Sie, wo die Optimierung den größten Effekt hat.
Was kann noch gemacht werden
- Fügen Sie ein Tool zur Verfügbarkeitstest (healthcheck_url) mit einem Bericht hinzu.
- Integrieren Sie den Export von Protokollen in einen zentralen Speicher, z.B. das Ereignisprotokoll Ihrer Infrastruktur.
- Bereiten Sie Anleitungen für das Team vor und veröffentlichen Sie diese auf der internen Seite mcp.html zusammen mit Konfigurationsvorlagen.
- Studieren Sie das detaillierte Material zur Auswahl und Konfiguration von Proxys für Agenten auf der internen Seite Material über Proxys für AI-Agenten.
Tipp: Formalisieren Sie die „Verbindungsprofile“ – dev, stage, prod – mit unterschiedlichen Limits und Protokollierungsstufen. Dies vereinfacht die Wartung und Übersicht.
FAQ
1. Wie lange lebt eine "sticky" Session des mobilen Proxys?
Das hängt vom Tarif des Anbieters ab. In der Regel bieten Anbieter Intervalle von 10–30 Minuten an. Überprüfen Sie im persönlichen Bereich von mobileproxy.space und stellen Sie das Intervall in Ihrem MCP-Server ein.
2. Wie erkenne ich, dass die Anfrage tatsächlich über den mobilen Proxy geht?
Vergleichen Sie die externe IP vor und nach der Aktivierung des Proxys durch get_external_ip. Führen Sie zusätzlich Logs auf Serverseite und, wenn verfügbar, vergleichen Sie diese mit den Daten des persönlichen Bereichs beim Anbieter.
3. Kann ich verschiedene Proxys für unterschiedliche Tools festlegen?
Ja. Auf Codeebene erstellen Sie mehrere Proxy-Agenten und wählen diese je nach Toolnamen oder Domain aus. Auf Client-Ebene - starten Sie mehrere Server mit unterschiedlichen env.
4. Was tun, wenn die Zielseite spezielle Header erfordert?
Übergeben Sie die benötigten Header über den Parameter headers des Tools fetch_url. Häufig helfen User-Agent, Accept, Accept-Language und Referer.
5. Wie vermeide ich Leaks von Geheimnissen in Logs?
Maskieren Sie sensible Strings und loggen Sie keine vollständigen URLs mit Passwörtern. Lagern Sie Geheimnisse nur in Umgebungsvariablen und nutzen Sie Passwortrotation.
6. Kann ich Proxys nur für bestimmte Domains verwenden?
Ja. Wenden Sie bei Bedarf den Proxy-Agenten nur auf die gewünschten Domains an. Senden Sie alle anderen Anfragen direkt. Oder erstellen Sie zwei Tools: fetch_proxy und fetch_direct.
7. Was tun, wenn die Rotation keine IP ändert?
Warten Sie die Zeit ab, die der Anbieter angibt, und überprüfen Sie den Rotationsstatus. Stellen Sie sicher, dass Sie sich nicht in einer „sticky“ Session befinden, wenn Sie eine sofortige IP-Änderung erwarten.
8. Wie skaliere ich unter hoher Last?
Verwenden Sie einen Pool von mobilen Punkten, beschränken Sie die Parallelität nach Domain, fügen Sie Warteschlangen für Anfragen hinzu und gestalten Sie ein intelligentes Backoff. Bei der Agentenarbeit – verteilen Sie die Aufgaben nach Profilen.
9. Wo halte ich die Dokumentation des Teams?
Die interne Seite mcp.html eignet sich zur Speicherung von Anleitungen, Konfigurationsvorlagen und Rotationsprotokollen. Aktualisieren Sie diese regelmäßig, während sich der Inhalt entwickelt.
10. Kann ich mobileproxy.space als fertigen MCP-Server anbinden?
Ja, wenn Sie über den entsprechenden Server oder Adapter verfügen, der Werkzeuge zur Rotation und Anfragen über deren Infrastruktur bereitstellt. Im obigen Beispiel wird demonstriert, wie Sie einen solchen Server selbst mit dem SDK aufbauen.
Tipp: Führen Sie einen internen „Pass“ des Servers ein: Name, Version, Liste der Tools, Kontaktperson. Dies beschleunigt die Unterstützung und erleichtert das Training neuer Kollegen.
Schlussfolgerung
Sie haben alle Phasen erfolgreich durchlaufen: Sie haben verstanden, was MCP ist und warum mobile Proxys für die stabile Arbeit von AI-Tools wichtig sind; Sie haben die Umgebung vorbereitet; den mobilen Proxy mit dem MCP-Client verbunden; ein funktionierendes Beispiel für den MCP-Server mit den Tools get_external_ip, rotate_ip und fetch_url auf Basis von mobileproxy.space implementiert; die Konfiguration, das Logging und die Diagnose verfeinert; Tests durchgeführt; häufige Fehler und erweiterte Möglichkeiten behandelt. Jetzt haben Sie eine reproduzierbare Architektur: Der MCP-Client verwaltet die Werkzeuge, der MCP-Server führt Netzwerkaktionen aus, und der mobile Proxy stellt einen vorhersagbaren und anpassbaren Netzwerkpfad bereit.
Als nächstes können Sie: 1) Den Server in Module für verschiedene Aufgaben unterteilen; 2) Entwicklungs-/Test-/Produktionsumgebungen hinzufügen; 3) Einen Proxy-Pool und dynamische Routenauswahl integren; 4) Die Feinheiten auf der internen Seite mcp.html dokumentieren und auf das erweiterte Material über Proxys für AI-Agenten verweisen.
Entwickeln Sie in Richtung Automatisierung: Integrieren Sie Metriken, Alerts bei Degression, automatisierte Tests und kontrollierte IP-Rotation nach Zeitplan oder Last. Je formalisierter Ihr Netzwerk ist, desto einfacher ist es, Agenten zu skalieren und die Servicequalität aufrechtzuerhalten.
Tipp: Überprüfen Sie regelmäßig die Limits und Tarife des Anbieters mobileproxy.space, um nicht in Spitzenzeiten auf Quoten zu stoßen. Planen Sie die Kapazitäten und halten Sie eine Backup-Konfiguration für den Fall der Unzugänglichkeit eines Punktes bereit.