Ruani rezultatet e ProxyHub MCP si skedar IP:Port
Lexoni përgjigjen JSON të list_proxies, trajtoni gabimet dhe ruani një skedar të pastër proxy-sh HTTP, duke ndarë të dhënat nga kontrollet e drejtpërdrejta.
Për të prodhuar një IP:port në çdo rresht nga ProxyHub MCP, nisuni nga përgjigjja e plotë JSON-RPC, jo nga një bllok teksti i kopjuar nga biseda.
- Thirrni
list_proxiespërmes klientit MCP metypetë vendosur nëhttp. - Ruajeni përgjigjen e plotë si
mcp-response.json. - Ruajeni konvertuesin më poshtë, që përdor bibliotekën standarde, si
mcp-to-file.pypranë përgjigjes.
import json
from ipaddress import IPv4Address
from pathlib import Path
reply = json.loads(
Path("mcp-response.json").read_text(encoding="utf-8")
)
if "error" in reply:
raise RuntimeError("MCP returned a JSON-RPC error")
result = reply["result"]
if result.get("isError"):
raise RuntimeError("The proxy tool reported an error")
data = result["structuredContent"]
endpoints = []
seen = set()
for row in data["proxies"]:
if row["type"] != "http":
continue
host = str(IPv4Address(row["ip"]))
port = row["port"]
if type(port) is not int or not 1 <= port <= 65535:
raise ValueError("Invalid proxy port")
endpoint = f"{host}:{port}"
if endpoint not in seen:
seen.add(endpoint)
endpoints.append(endpoint)
text = "\n".join(endpoints)
Path("http-proxies.txt").write_text(
text + ("\n" if text else ""),
encoding="utf-8",
)
print(f"Saved {len(endpoints)} HTTP endpoints")
Ekzekutojeni në atë dosje:
uv run --no-project python mcp-to-file.py
Kontrolloni numrin e afishuar dhe http-proxies.txt. Përgjigjja origjinale ruhet. Gabimet JSON-RPC dhe përgjigjet isError në nivel mjeti shkaktojnë gabime; një përgjigje e suksesshme pa përputhje shkruan skedar bosh dhe raporton zero. Kufiri i mjetit është deri në 100 hyrje për thirrje, kështu që dalja është përzgjedhja e kthyer, jo domosdoshmërisht e gjithë lista e proxy-ve HTTP.
Konvertuesi pranon vetëm rreshta të raportuar si http dhe kontrollon sintaksën IPv4 e intervalin e portës, në përputhje me formatin IPv4 të mbledhësit aktual. Për protokoll tjetër, ruajeni këtë informacion ose përdorni skedar të veçantë; një skedar i thjeshtë IP:port i përzier nuk i tregon klientit marrës cilin negocim të përdorë.
Një rresht i eksportuar mbetet e dhënë. updated_at shënon kohën e përditësimit të të dhënave të ruajtura, jo një kërkesë të drejtpërdrejtë nga rrjeti juaj. Provoni pikat e zgjedhura me një kërkesë të kufizuar përmes proxy-t HTTP drejt destinacionit të nevojshëm. Nëse thirrja MCP dështoi, shqyrtoni marrjen e të dhënave; nëse më vonë dështon kërkesa përmes një pike të eksportuar, shqyrtoni atë lidhje të veçantë proxy.