Consumer Providers

Browse and configure portal providers from the consumer side.

Consumer Providers object

Attributes

object

String

id

String

type

String

availability

Enum

has_pending_access_request

Boolean

provider_template

Object

provider

Object

deployment

Object

config_schema

ObjectNullable

auth_methods

Object
{
"object": "consumer.provider",
"type": "provider_template",
"availability": "available_now",
"provider_template": {
"object": "provider.template#preview",
"status": "active",
"metadata": {}
},
"provider": {
"object": "provider",
"id": "pro_5gHjKlMnPqRsTuVw",
"access": "public",
"status": "active",
"publisher": {
"object": "provider.publisher",
"id": "pub_9hJkLmNpQrStUvWx",
"name": "Acme Corp",
"description": "A leading provider of developer tools",
"image_url": "https://cdn.metorial.com/images/acme.png",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"current_version": {
"object": "provider.version",
"id": "prv_4dEfGhJkLmNpQrSt",
"version": "1.0.0",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"name": "Version 1.0.0",
"metadata": {},
"specification_id": "psp_9gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"oauth": {
"status": "enabled",
"auto_registration": {
"status": "supported"
}
},
"metadata": {},
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"deployment": {
"object": "provider.deployment#preview"
},
"config_schema": {
"type": "json_schema",
"schema": {}
},
"auth_methods": [
{
"object": "provider.capabilities.auth_method",
"id": "pam_2mNpQrStUvWxYzAb",
"type": "oauth",
"key": "oauth2",
"name": "OAuth 2.0",
"description": "Authenticate using OAuth 2.0",
"capabilities": {},
"input_schema": {
"type": "json_schema",
"schema": {}
},
"output_schema": {
"type": "json_schema",
"schema": {}
},
"scopes": [
{
"object": "provider.capabilities.auth_method.scope",
"id": "pams_8tUvWxYzAbCdEfGh",
"scope": "repo",
"name": "Repository Access",
"description": "Full control of private repositories"
},
{
"object": "provider.capabilities.auth_method.scope",
"id": "pams_8tUvWxYzAbCdEfGh",
"scope": "repo",
"name": "Repository Access",
"description": "Full control of private repositories"
}
],
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"provider_specification_id": "psp_9gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
{
"object": "provider.capabilities.auth_method",
"id": "pam_2mNpQrStUvWxYzAb",
"type": "oauth",
"key": "oauth2",
"name": "OAuth 2.0",
"description": "Authenticate using OAuth 2.0",
"capabilities": {},
"input_schema": {
"type": "json_schema",
"schema": {}
},
"output_schema": {
"type": "json_schema",
"schema": {}
},
"scopes": [
{
"object": "provider.capabilities.auth_method.scope",
"id": "pams_8tUvWxYzAbCdEfGh",
"scope": "repo",
"name": "Repository Access",
"description": "Full control of private repositories"
},
{
"object": "provider.capabilities.auth_method.scope",
"id": "pams_8tUvWxYzAbCdEfGh",
"scope": "repo",
"name": "Repository Access",
"description": "Full control of private repositories"
}
],
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"provider_specification_id": "psp_9gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}
]
}

List consumer providers

Returns the unified portal catalog with consumer availability.

Query Parameters

limit

NumberOptional

after

StringOptional

before

StringOptional

cursor

StringOptional

order

EnumOptional

search

StringOptional
GEThttp://api.metorial.com/consumer/providers
curl -X GET "https://api.metorial.com/consumer/providers" \
-H "Authorization: Bearer metorial_sk_..."

Get consumer provider

Returns one portal catalog item with any available setup capability data.

URL Parameters

catalog_item_id

String

The unique identifier for the catalog_item

GEThttp://api.metorial.com/consumer/providers/:catalog_item_id
curl -X GET "https://api.metorial.com/consumer/providers/cat_Rm4Mnheq2bfEPhBhP7SY" \
-H "Authorization: Bearer metorial_sk_..."

Request consumer provider access

Creates an access request for a portal catalog item.

URL Parameters

catalog_item_id

String

The unique identifier for the catalog_item

Request Body

message

StringOptional

metadata

ObjectOptional

A key-value map

POSThttp://api.metorial.com/consumer/providers/:catalog_item_id/request-access
curl -X POST "https://api.metorial.com/consumer/providers/cat_Rm4Mnheq2bfEPhBhP7SY/request-access" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer metorial_sk_..." \
-d '{
"message": "example_message",
"metadata": {}
}'

Start consumer provider setup

Starts an OAuth setup flow for a portal provider template.

URL Parameters

catalog_item_id

String

The unique identifier for the catalog_item

Request Body

provider_auth_method_id

StringOptional
POSThttp://api.metorial.com/consumer/providers/:catalog_item_id/setup
curl -X POST "https://api.metorial.com/consumer/providers/cat_Rm4Mnheq2bfEPhBhP7SY/setup" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer metorial_sk_..." \
-d '{
"provider_auth_method_id": "example_provider_auth_method_id"
}'

Get consumer provider setup

Reads the status of an OAuth setup flow for a portal provider template.

URL Parameters

catalog_item_id

String

The unique identifier for the catalog_item

provider_setup_session_id

String

The unique identifier for the provider_setup_session

GEThttp://api.metorial.com/consumer/providers/:catalog_item_id/setup/:provider_setup_session_id
curl -X GET "https://api.metorial.com/consumer/providers/cat_Rm4Mnheq2bfEPhBhP7SY/setup/pro_Rm4Mnheq2bfEPhBhP7SY" \
-H "Authorization: Bearer metorial_sk_..."

Deploy consumer provider

Creates an owned Magic MCP server from a portal provider template.

URL Parameters

catalog_item_id

String

The unique identifier for the catalog_item

Request Body

name

StringOptional

description

StringOptional

metadata

ObjectOptional

A key-value map

config

ObjectOptional

A key-value map

auth

ObjectOptional
POSThttp://api.metorial.com/consumer/providers/:catalog_item_id/deploy
curl -X POST "https://api.metorial.com/consumer/providers/cat_Rm4Mnheq2bfEPhBhP7SY/deploy" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer metorial_sk_..." \
-d '{
"name": "example_name",
"description": "example_description",
"metadata": {},
"config": {},
"auth": {
"type": "example_type",
"provider_setup_session_id": "example_provider_setup_session_id"
}
}'