Skip to main content
POST
Dynamically register an MCP OAuth client

Body

application/json
client_name
string
Maximum string length: 120
application_type
enum<string>
Available options:
native,
web
redirect_uris
string<uri>[]

Required and non-empty when grant_types contains authorization_code; may be empty for a device-only client.

Maximum array length: 10
grant_types
enum<string>[]

Must contain authorization_code or the device-code grant. refresh_token may accompany either.

Required array length: 1 - 3 elements
Available options:
authorization_code,
refresh_token,
urn:ietf:params:oauth:grant-type:device_code
response_types
string[]

Exactly ["code"] for authorization_code clients and [] for device-only clients.

Maximum array length: 1
Allowed value: "code"
token_endpoint_auth_method
string
Allowed value: "none"
client_uri
string<uri>
logo_uri
string<uri>

Response

Registered client and one-time registration access token

client_name
string
required
Maximum string length: 120
application_type
enum<string>
required
Available options:
native,
web
redirect_uris
string<uri>[]
required

Required and non-empty when grant_types contains authorization_code; may be empty for a device-only client.

Maximum array length: 10
grant_types
enum<string>[]
required

Must contain authorization_code or the device-code grant. refresh_token may accompany either.

Required array length: 1 - 3 elements
Available options:
authorization_code,
refresh_token,
urn:ietf:params:oauth:grant-type:device_code
response_types
string[]
required

Exactly ["code"] for authorization_code clients and [] for device-only clients.

Maximum array length: 1
Allowed value: "code"
token_endpoint_auth_method
string
required
Allowed value: "none"
client_id
string
required
client_id_issued_at
integer
required
registration_client_uri
string<uri>
required
client_uri
string<uri>
logo_uri
string<uri>
registration_access_token
string

Returned only when the client is created; show and store it once.