RYSE · Authentication Profile
Ryse Authentication
Authentication
RYSE declares 3 security scheme(s) across its OpenAPI definitions.
Smart HomeInternet of ThingsConsumer ElectronicsHome AutomationWindow CoveringsAgentic CommerceMCPUniversal Commerce ProtocolE-CommerceShopify
Methods:
Schemes: 3
OAuth flows:
API key in:
Security Schemes
none
agent-identity
oauth2
· flows:
Source
Authentication Profile
generated: '2026-08-26'
method: probed
source: >-
https://account.helloryse.com/.well-known/oauth-authorization-server,
https://account.helloryse.com/.well-known/oauth-protected-resource,
https://www.helloryse.com/.well-known/openid-configuration, plus live anonymous and unauthenticated
JSON-RPC probes of all three RYSE MCP endpoints on 2026-08-26
summary: >-
RYSE publishes no API keys and no developer credentials. Its two commerce MCP surfaces on
www.helloryse.com are ANONYMOUS for discovery and for read/cart/checkout construction; the only
authenticated surface is the customer-account MCP on account.helloryse.com, which is protected by
RYSE's own OAuth 2.0 / OpenID Connect authorization server (Shopify-operated, merchant-scoped to
shop 51479806112) and advertises itself per RFC 9728.
schemes:
- id: anonymous
type: none
applies_to:
- https://www.helloryse.com/api/ucp/mcp
- https://www.helloryse.com/api/mcp
description: >-
tools/list, initialize, prompts/list and resources/list require no credential of any kind. Both
endpoints returned HTTP 200 to an unauthenticated POST.
evidence:
probe: 'POST {"jsonrpc":"2.0","id":1,"method":"tools/list"}'
http_status: 200
date: '2026-08-26'
- id: ucp-agent-profile
type: agent-identity
applies_to:
- https://www.helloryse.com/api/ucp/mcp
description: >-
Not authentication in the credential sense, but the UCP server's admission control for
tools/call: every request must carry meta["ucp-agent"].profile, a fetchable URI identifying the
calling agent. The server dereferences it; a missing or unfetchable profile is rejected before
the tool runs. This is the identity RYSE's commerce surface actually checks.
required: true
parameter: meta.ucp-agent.profile
parameter_format: uri
evidence:
probe: 'POST tools/call and prompts/list without meta["ucp-agent"].profile'
http_status: 422
body: >-
{"error":{"code":-32001,"message":"UCP discovery failed",
"data":{"code":"invalid_profile_url","content":"Unable to fetch agent profile: Missing profile uri"}}}
date: '2026-08-26'
- id: customer-oauth
type: oauth2
applies_to:
- https://account.helloryse.com/customer/api/mcp
description: >-
The customer-account MCP acts on a logged-in RYSE customer. tools/list is anonymous, but every
tools/call requires a bearer access token issued by RYSE's customer authorization server.
bearer_methods_supported:
- header
flows:
authorization_code:
authorization_url: https://account.helloryse.com/authentication/oauth/authorize
token_url: https://account.helloryse.com/authentication/oauth/token
pkce: required
code_challenge_methods_supported:
- S256
issuer: https://shopify.com/authentication/51479806112
jwks_uri: https://account.helloryse.com/authentication/.well-known/jwks.json
end_session_endpoint: https://account.helloryse.com/authentication/logout
grant_types_supported:
- authorization_code
- refresh_token
- urn:ietf:params:oauth:grant-type:jwt-bearer
token_endpoint_auth_methods_supported:
- client_secret_basic
- client_secret_post
response_types_supported:
- code
id_token_signing_alg_values_supported:
- RS256
scopes_file: ../scopes/ryse-scopes.yml
evidence:
probe: 'POST tools/call get_most_recent_order_status with no Authorization header'
http_status: 401
body: '{"errors":[{"message":"Unauthorized"}]}'
www_authenticate: https://account.helloryse.com/authentication/.well-known/openid-configuration
date: '2026-08-26'
openid_connect:
supported: true
discovery_document: https://account.helloryse.com/.well-known/openid-configuration
file: ../well-known/ryse-openid-configuration.json
subject_types_supported:
- public
claims_supported: [iss, sub, aud, exp, iat, nonce, sid, email, email_verified]
protected_resource_metadata:
supported: true
standard: RFC 9728 OAuth 2.0 Protected Resource Metadata
document: https://account.helloryse.com/.well-known/oauth-protected-resource
file: ../well-known/ryse-oauth-protected-resource.json
resource: https://account.helloryse.com
authorization_servers:
- https://account.helloryse.com
- https://shopify.com/authentication/51479806112
notes:
- >-
No API key, no client credentials grant, and no machine-to-machine credential is published anywhere
on RYSE's own surface. An agent cannot obtain a RYSE-issued key.
- >-
RYSE's robots.txt and agents.md impose an out-of-band authorization rule that no credential
satisfies: "Checkouts are for humans. Do NOT complete checkout, payment, or order placement
automatically ... without an explicit, contemporaneous human approval step." Treat human approval
as a required authorization factor on complete_checkout.
- >-
The device/hardware side of RYSE (SmartShade, SmartCurtain, SmartBridge) has no published
authentication surface at all — there is no cloud or local device API documented for developers.
Work with this as data
Every security artifact here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for security posture
4 MCP tools reach this
find_securityBrowse and filter every security artifact in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/ryse-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.