Salvesta ProxyHub MCP tulemused IP:Port-faili
Loe list_proxies JSON-vastust, käsitle vigu ja salvesta puhas HTTP-proksifail, eristades andmeid reaalajas kontrollidest.
Et saada ProxyHub MCP-st igale reale üks IP:port, alusta täielikust JSON-RPC vastusest, mitte vestlusest kopeeritud tekstiplokist.
- Kutsu MCP-kliendis
list_proxiesja määratypeväärtusekshttp. - Salvesta kogu vastus nimega
mcp-response.json. - Salvesta järgnev standardteeki kasutav teisendaja vastuse kõrvale nimega
mcp-to-file.py.
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")
Käivita samas kaustas:
uv run --no-project python mcp-to-file.py
Kontrolli väljastatud arvu ja http-proxies.txt faili. Algne vastus säilib. JSON-RPC vead ja tööriistataseme isError vastused tekitavad vea; edukas vastus ilma vasteteta kirjutab tühja faili ning teatab nullist. Tööriista piir on kuni 100 kirjet kutse kohta, seega väljund on tagastatud valik, mitte tingimata kogu HTTP-proksiloend.
Teisendaja võtab vastu ainult http tüübiga ridu ning kontrollib IPv4 süntaksit ja pordivahemikku, kooskõlas praeguse koguja IPv4 vorminguga. Muu protokolli puhul säilita see info või kasuta eraldi faili; lihtne segatud IP:port-fail ei ütle vastuvõtvale kliendile, millist kätlust kasutada.
Eksporditud rida on endiselt andmed. updated_at salvestab säilitatud andmete uuendusaja, mitte reaalajas päringut sinu võrgust. Katseta valitud otspunkte piiratud HTTP-proksipäringuga vajaliku sihtkoha vastu. Kui MCP-kutse nurjus, uuri andmete toomist; kui hilisem päring eksporditud otspunkti kaudu nurjub, uuri seda eraldi proksiühendust.