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 чакыруусу ишке ашпаса, маалымат алууну изилдеңиз; кийин экспорттолгон чекит аркылуу суроо ишке ашпаса, ошол өзүнчө прокси байланышын изилдеңиз.

Тектеш макалалар