Register a Google Cloud project, enable the YouTube Data API v3, and create OAuth 2.0 credentials with the https://www.googleapis.com/auth/youtube.channel-memberships.creator scope
Redirect the channel owner through the OAuth consent flow and exchange the authorization code for an access token and refresh token
Call GET https://www.googleapis.com/youtube/v3/membershipsLevels?part=snippet to retrieve membership tier names, pricing, and level IDs (quota cost: 1 unit)
Call GET https://www.googleapis.com/youtube/v3/members?part=snippet with optional filterByMemberChannelId, hasAccessToLevel, or mode parameters to list current members (quota cost: 2 units per call)
Paginate through results using the nextPageToken field until no token is returned to ensure all members are retrieved
Known gotchas
Both endpoints require the channel owner's own OAuth token — there is no way to query another channel's membership data even with elevated credentials
The YouTube Data API v3 has a daily quota of 10,000 units by default; member list calls at 2 units each can exhaust quotas quickly for large channels, requiring a quota increase request
Channel memberships must be enabled on the channel before these endpoints return data; calling them on a channel without memberships returns an empty items array, not an error
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp