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 дуудлага бүтэлгүйтвэл өгөгдөл авах үйл явцыг шалга; экспортолсон цэгээр хийсэн хожуу хүсэлт бүтэлгүйтвэл тэр тусдаа прокси холболтыг шалга.

Холбоотой нийтлэлүүд