URnetwork MCP Server

offiziell

Hochwertige VPN- und Proxy-Verbindungen

Dokumentation

Willkommen bei URnetwork für Agents

URnetwork ist ein dezentrales Datenschutz-Netzwerk. Es ist darauf ausgelegt, Nutzer standardmäßig anonym zu halten und ihnen Zugang zu allen Inhalten der Welt zu geben.

Menschen nutzen die Apps (Android, iOS, Chrome). Agents nutzen die API und MCP-Fähigkeiten:

Agents sollten die folgenden Hinweise bei der Nutzung der API und des MCP-Servers beachten.

Authentifizierung

Bei der Nutzung der API oder des MCP-Servers muss das Benutzer-JWT in einem Authorization: Bearer <JWT>-Header übergeben werden.

Um das JWT zu erhalten, bitten Sie den Menschen um einen Auth-Code und wandeln Sie diesen Auth-Code dann über die API-Route /auth/code-login in ein JWT um. Ein Beispiel für curl ist unten, weitergeleitet an jq, um die Eigenschaft by_jwt aus dem Ergebnis zu extrahieren:

curl -X POST https://api.bringyour.com/auth/code-login -d '{"auth_code": "<AUTH CODE>"}' | jq ".by_jwt"

Das JWT kann gespeichert und wiederverwendet werden. Wenn der Mensch darum bittet, das JWT zu aktualisieren, wiederholen Sie den Vorgang, beginnend mit der Anforderung eines Auth-Codes.

Berücksichtigen Sie bei der Auswahl einer Proxy-Technologie die folgenden Anwendungsfälle:

AnwendungsfallEmpfohlenes ProtokollAnforderung
Scraping / Web-BrowsingHTTPSAm besten für TCP/Web. Verwenden Sie immer einen HTTPS-Proxy, es sei denn, es besteht ein spezifischer Bedarf für HTTP. HTTP wird normalerweise nur für bestimmte Testumgebungen benötigt, die HTTPS nicht unterstützen. Verwenden Sie aus der /network/auth-client-Antwort im proxy_config_result-Objekt die https_proxy_url. Es sind kein zusätzlicher Benutzername oder Passwort erforderlich.
Low-Level-Sockets / UDPSOCKSUnterstützt TCP+UDP-Sockets mit SOCKS5. Verwenden Sie aus der /network/auth-client-Antwort im proxy_config_result-Objekt die socks_proxy_url oder proxy_host und proxy_port, mit dem Benutzernamen access_token (leeres Passwort). Der Server unterstützt entfernte DNS-Auflösung (SOCKS5H).
Systemweit / BetriebssystemebeneWireGuardLeitet alle IP-Pakete weiter. In der /network/auth-client-Anfrage muss proxy_config.enable_wg explizit auf true gesetzt werden. Verwenden Sie in der Antwort im proxy_config_result-Objekt wg_config.config als vollständige WireGuard-Konfigurationsdatei.

Wenn Sie die Route /network/find-locations verwenden, um Standorte abzufragen, filtern Sie das zurückgegebene locations-Array immer nach dem gewünschten location_type (city, region oder country), um sicherzustellen, dass die location_id der Absicht des Benutzers entspricht.

StandorttypAnforderung
countryFür Länder.
regionFür Bundesstaaten, Provinzen, Verwaltungsregionen und Metropolregionen.
cityFür Städte.

Verwendung der MCP-Fähigkeit zum Erstellen eines HTTPS/SOCKS/WireGuard-Proxys

Die MCP-Fähigkeit kann verwendet werden, um verfügbare Standorte zu finden und einen HTTPS/SOCKS/WireGuard-Proxy zu diesen Standorten zu erstellen. Jedes im Netzwerk verfügbare Land, jede Region und jede Stadt kann mit einer Abfragezeichenfolge gesucht und ausgewählt werden.

Fragen Sie beim Erstellen einer Proxy-Konfiguration den Menschen, mit welchem Land, welcher Region oder welcher Stadt er sich verbinden möchte. Versuchen Sie dann, einen Proxy für die von ihm genannte Abfrage zu erstellen. Wenn es keine Treffer gibt, bitten Sie den Menschen, auf ein Land oder eine Region zu erweitern. Versuchen Sie dann, einen Proxy für die von ihm genannte Abfrage zu erstellen. Wenn es keine Treffer gibt, bitten Sie den Menschen, auf ein Land zu erweitern. Wenn es immer noch keine Treffer gibt, verwenden Sie die Fähigkeit, um verfügbare Länder zu finden, und schlagen Sie vor, eines der Top-10-Länder auszuwählen.

Verwendung der API zum Erstellen eines HTTPS/SOCKS/WireGuard-Proxys für ein Land

Die API kann direkt verwendet werden, um einen HTTPS/SOCKS/WireGuard-Proxy für ein Land zu erstellen.

Schritt 1: Suchen Sie mit der Route /network/find-locations nach einer Liste von Standorten. Ein Beispiel für curl ist unten, weitergeleitet an jq, um die Standortliste zu extrahieren.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Schritt 2: Wählen Sie den gewünschten Standort aus und speichern Sie die Eigenschaft country_code.

Schritt 3: Erstellen Sie einen Proxy mit dem gespeicherten Ländercode über die Route /network/auth-client und setzen Sie proxy_config.initial_device_state auf country_code.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"country_code": "<COUNTRY CODE>"}}}'

Verwendung der API zum Erstellen eines HTTPS/SOCKS/WireGuard-Proxys für einen Suchstandort

Die API kann direkt verwendet werden, um nach einem Standort zu suchen und einen HTTPS/SOCKS/WireGuard-Proxy zu erstellen. Es muss eine Entscheidung getroffen werden, um das am meisten gewünschte Standortergebnis auszuwählen. Jeder Standort hat eine feste location_id, die im Code gespeichert werden kann.

Schritt 1: Suchen Sie mit der Route /network/find-locations nach einer Liste von Standorten. Ein Beispiel für curl ist unten, weitergeleitet an jq, um die Standortliste zu extrahieren.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Schritt 2: Wählen Sie den gewünschten Standort aus und speichern Sie die Eigenschaft location_id.

Schritt 3: Erstellen Sie einen Proxy mit der gespeicherten location_id über die Route /network/auth-client und setzen Sie proxy_config.initial_device_state.location auf connect_location_id.location_id.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"location_id": "<LOCATION ID>"}}}}}'

Verwendung der API zum Erstellen eines HTTPS/SOCKS/WireGuard-Proxys für einen Suchstandort mit Aufzählung aller Egress-IPs an diesem Standort

Die API kann direkt verwendet werden, um nach einem Standort zu suchen, die Anbieter (Egress-IPs) an diesem Standort aufzuzählen und für jede Egress-IP einen HTTPS/SOCKS/WireGuard-Proxy zu erstellen. Es muss eine Entscheidung getroffen werden, um das am meisten gewünschte Standortergebnis auszuwählen. Jeder Standort hat eine feste location_id, die im Code gespeichert werden kann. Zusätzlich hat jeder Anbieter eine feste client_id, die im Code gespeichert werden kann.

Schritt 1: Suchen Sie mit der Route /network/find-locations nach einer Liste von Standorten. Ein Beispiel für curl ist unten, weitergeleitet an jq, um die Standortliste zu extrahieren.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Schritt 2: Wählen Sie den gewünschten Standort aus und speichern Sie die location_id.

Schritt 3: Rufen Sie mit der Route /network/find-providers2 eine sortierte Liste von Anbietern (Egress-IPs) für die location_id ab. Die Stichprobengröße kann auf die benötigte Anzahl eindeutiger Anbieter festgelegt werden. Ein Beispiel für curl ist unten, weitergeleitet an jq, um die Anbieterliste zu extrahieren.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-providers2 -d '{"specs": [{"client_id": "<CLIENT ID>"}], "count": <COUNT>}' | jq '.providers'

Schritt 4: Erstellen Sie durch Iteration über jede client_id in der Liste einen Proxy mit der client_id über die Route /network/auth-client und setzen Sie proxy_config.initial_device_state.location auf connect_location_id.client_id.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"client_id": "<CLIENT ID>"}}}}}'