generated: '2026-08-22' method: probed source: https://shop.hero.co/.well-known/oauth-authorization-server docs: https://shopify.dev/docs/agents/get-started/authentication note: >- Hero Bread publishes no OpenAPI, so this profile is built from live probes of the discovery documents and MCP endpoint on shop.hero.co rather than from securitySchemes. Two distinct auth postures are in play: the MCP commerce surface (anonymous discovery, JWT-bearing agent calls) and Shopify customer accounts (OAuth 2.0 / OIDC). summary: types: [none, http, oauth2, openIdConnect] api_key_in: [] oauth2_flows: [authorizationCode] schemes: - name: mcp-anonymous-discovery type: none applies_to: - 'POST https://shop.hero.co/api/ucp/mcp — initialize' - 'POST https://shop.hero.co/api/ucp/mcp — tools/list' - 'POST https://shop.hero.co/api/mcp — tools/list' evidence: 'probed 2026-08-22: HTTP 200 with no Authorization header, 13 tools returned' - name: ucp-agent-profile type: http scheme: none in: request-body parameter: meta.ucp-agent.profile required: true description: >- Every tools/call must carry a resolvable UCP agent profile URI in meta.ucp-agent.profile. A missing or unreachable profile fails discovery before authentication is even evaluated. evidence: 'probed 2026-08-22: omitting it returns -32001 UCP discovery failed / invalid_profile_url' - name: shopify-agent-jwt type: http scheme: bearer bearerFormat: JWT description: >- Transactional MCP tool calls require a Shopify-issued agent JWT. The server names the instructions in the error payload itself. docs: https://shopify.dev/docs/agents/get-started/authentication evidence: >- probed 2026-08-22: tools/call without a token returns -32000 "AuthenticationRequired" — "Unauthorized: A valid JWT is required to call ." - name: shopify-customer-accounts-oauth2 type: oauth2 flows: - flow: authorizationCode authorizationUrl: https://shopify.com/authentication/56010965185/oauth/authorize tokenUrl: https://shopify.com/authentication/56010965185/oauth/token scopes: openid: OpenID Connect authentication email: Buyer email address customer-account-api:full: Full access to the customer account API customer-account-mcp-api:full: Full access to the customer account MCP API pkce: S256 grant_types: [authorization_code, refresh_token, 'urn:ietf:params:oauth:grant-type:jwt-bearer'] token_endpoint_auth_methods: [client_secret_basic, client_secret_post] discovery: well-known/hero-bread-oauth-authorization-server.json source: https://shop.hero.co/.well-known/oauth-authorization-server - name: shopify-customer-accounts-oidc type: openIdConnect openIdConnectUrl: https://shop.hero.co/.well-known/openid-configuration issuer: https://shopify.com/authentication/56010965185 jwks_uri: https://shopify.com/authentication/56010965185/.well-known/jwks.json id_token_signing_alg_values_supported: [RS256] discovery: well-known/hero-bread-openid-configuration.json protected_resource: resource: https://shop.hero.co authorization_servers: [https://shopify.com/authentication/56010965185] bearer_methods_supported: [header] source: https://shop.hero.co/.well-known/oauth-protected-resource