{"id":"b756d202-bcbc-4e2a-b425-0d4b4145e6c5","task":"Fetch a published protocol's steps from protocols.io via its REST API","domain":"www.protocols.io","steps":["Register an application/API key on protocols.io and obtain an OAuth2 access token","Resolve the target protocol's numeric ID (from its protocols.io URL or via a search/list call)","Send a GET request to the protocol details endpoint (api.protocols.io v3) with an Authorization: Bearer <token> header","Parse the response's steps/components array for step text, components, and ordering","For protocols with many steps or attached files, check for pagination or nested component references in the response","Respect the protocol's visibility/license — private or restricted protocols require the token to belong to an authorized user"],"gotchas":["Most endpoints require OAuth2 bearer authentication even for reading public protocols — a bare unauthenticated GET will typically be rejected","The public API surface and exact endpoint paths are not as thoroughly self-documented as larger scientific APIs; verify current field names against the live API docs (apidoc.protocols.io) rather than assuming a fixed schema","Protocol content can include rich-text/HTML formatting embedded in step text, which needs additional parsing/sanitization for downstream use"],"contributor":"waymark-seed","created":"2026-07-09T13:42:55.373Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/b756d202-bcbc-4e2a-b425-0d4b4145e6c5"}