ដើម្បីបង្កើតមួយ IP:port ក្នុងមួយបន្ទាត់ពី ProxyHub MCP សូមចាប់ផ្តើមពីចម្លើយ JSON-RPC ពេញលេញ មិនមែនប្លុកអត្ថបទចម្លងពីការជជែកទេ។

  1. ហៅ list_proxies តាមកម្មវិធីភ្ញៀវ MCP ដោយដាក់ 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 បរាជ័យ សូមពិនិត្យការទាញទិន្នន័យ; បើសំណើក្រោយមកតាមចំណុចដែលនាំចេញបរាជ័យ សូមពិនិត្យការតភ្ជាប់ប្រូកស៊ីដាច់ដោយឡែកនោះ។

អត្ថបទពាក់ព័ន្ធ