import json, urllib.request, ssl
MCP="https://mcp.nonceprotocol.xyz/mcp"
def rpc(method, params):
    body=json.dumps({"jsonrpc":"2.0","id":1,"method":method,"params":params}).encode()
    req=urllib.request.Request(MCP,data=body,headers={"Content-Type":"application/json","Accept":"application/json, text/event-stream","User-Agent":"curl/8.7.1"})
    with urllib.request.urlopen(req,timeout=40) as r:
        raw=r.read().decode()
    try:
        p=json.loads(raw)
    except Exception:
        # SSE
        for line in raw.splitlines():
            if line.startswith("data:"):
                p=json.loads(line[5:].strip()); break
    return p
p=rpc("tools/call",{"name":"protocol_info","arguments":{}})
print(json.dumps(p)[:3000])
try:
    print("PARSED:", json.loads(p["result"]["content"][0]["text"]))
except Exception as e:
    print("parse err", e)
