שפּײַכערן ProxyHub MCP־רעזולטאַטן ווי אַן IP:Port־טעקע
לייענט דעם JSON־ענטפֿער פֿון list_proxies, באַהאַנדלט פֿעלערן און שפּײַכערט אַ ריינע HTTP־פּראָקסי־טעקע, מיט אַ קלאָרן חילוק צווישן דאַטן און לעבעדיקע טעסטן.
כּדי צו מאַכן איין IP:port אויף יעדער שורה פֿון ProxyHub MCP, הייבט אָן מיטן גאַנצן JSON-RPC־ענטפֿער, נישט מיט אַ טעקסטבלאָק קאָפּירט פֿונעם טשאַט.
- רופֿט
list_proxiesדורך אײַער MCP־קליענט מיטtypeבאַשטימט וויhttp. - שפּײַכערט דעם גאַנצן ענטפֿער ווי
mcp-response.json. - שפּײַכערט דעם ווײַטערדיקן קאָנווערטער, וואָס ניצט די סטאַנדאַרט־ביבליאָטעק, ווי
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־רוף איז דורכגעפֿאַלן, פֿאָרשט דאָס באַקומען די דאַטן; אויב אַ שפּעטערדיקע בקשה דורך אַן עקספּאָרטירטן ענדפּונקט פֿאַלט דורך, פֿאָרשט יענע באַזונדערע פּראָקסי־פֿאַרבינדונג.