ProxyHub MCP నుంచి ప్రతి పంక్తిలో ఒక IP:port పొందడానికి చాట్ నుంచి కాపీ చేసిన టెక్స్ట్ కాకుండా పూర్తి JSON-RPC సమాధానంతో మొదలుపెట్టండి.

  1. మీ MCP క్లయింట్ ద్వారా list_proxies పిలిచి, typeను httpగా అమర్చండి.
  2. పూర్తి సమాధానాన్ని mcp-response.jsonగా భద్రపరచండి.
  3. క్రింద ఉన్న స్టాండర్డ్ లైబ్రరీ కన్వర్టర్‌ను సమాధానం పక్కన 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")

అదే డైరెక్టరీలో నడపండి:

uv run --no-project python mcp-to-file.py

ప్రింట్ అయిన సంఖ్య, http-proxies.txt తనిఖీ చేయండి. అసలు సమాధానం అలాగే ఉంటుంది. JSON-RPC లోపాలు, సాధన స్థాయి isError సమాధానాలు లోపాలను లేవనెత్తుతాయి; సరిపోలికలు లేని విజయవంతమైన సమాధానం ఖాళీ ఫైల్ రాసి సున్నా నివేదిస్తుంది. సాధన పరిమితి ఒక్కో కాల్‌కు గరిష్ఠంగా 100 ఎంట్రీలు, కాబట్టి అవుట్‌పుట్ ఆ తిరిగివచ్చిన ఎంపికే; మొత్తం HTTP ప్రాక్సీ జాబితా కానవసరం లేదు.

కన్వర్టర్ httpగా తెలిపిన పంక్తులనే స్వీకరించి, ప్రస్తుత సేకరణ సాధనంలోని IPv4 ఆకృతికి అనుగుణంగా IPv4 నిర్మాణం, పోర్ట్ పరిధిని తనిఖీ చేస్తుంది. మరో ప్రోటోకాల్‌కు ఆ సమాచారం ఉంచండి లేదా వేరే ఫైల్ వాడండి; సాధారణ మిశ్రమ IP:port ఫైల్ స్వీకరించే క్లయింట్‌కు ఏ హ్యాండ్‌షేక్ వాడాలో చెప్పదు.

ఎగుమతి చేసిన పంక్తి ఇంకా డేటానే. updated_at నిల్వ డేటా నవీకరణ సమయాన్ని నమోదు చేస్తుంది; మీ నెట్‌వర్క్ నుంచి ప్రత్యక్ష అభ్యర్థనను కాదు. ఎంచుకున్న ఎండ్‌పాయింట్లను కావలసిన గమ్యస్థానానికి పరిమిత HTTP ప్రాక్సీ అభ్యర్థనతో పరీక్షించండి. MCP కాల్ విఫలమైతే డేటా పొందడాన్ని పరిశీలించండి; తర్వాత ఎగుమతి చేసిన ఎండ్‌పాయింట్ ద్వారా అభ్యర్థన విఫలమైతే ఆ వేరే ప్రాక్సీ కనెక్షన్‌ను పరిశీలించండి.

సంబంధిత వ్యాసాలు