Subscriptions
Platform subscription plans and billing state.
7 endpoints. Every request needs an Authorization: Bearer mtro_... header, and responses follow the envelope described in Errors and conventions.
POST /subscriptions/cancel
Cancel the current subscription. This changes billing state and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_cancel
Request body
Field names are taken from the Core handler, which reads exactly these. Types and which of them are required are not yet documented.
| Field | Type | Required | Description |
|---|---|---|---|
note | any | no | |
subscriptionId | any | no |
Example
curl -X POST 'https://core.mtro.app/subscriptions/cancel' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
POST /subscriptions/cancel-pending
Cancel a pending subscription change. This changes billing state and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_cancel_pending
Request body
Field names are taken from the Core handler, which reads exactly these. Types and which of them are required are not yet documented.
| Field | Type | Required | Description |
|---|---|---|---|
subscriptionId | any | no |
Example
curl -X POST 'https://core.mtro.app/subscriptions/cancel-pending' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
POST /subscriptions/checkout
Create a subscription checkout session. This starts billing flow and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_checkout
Request body
Field names are taken from the Core handler, which reads exactly these. Types and which of them are required are not yet documented.
| Field | Type | Required | Description |
|---|---|---|---|
billingInterval | any | no | |
coHostingSuiteOptIn | any | no | |
planId | any | no | |
promoCode | any | no | |
subscriptionId | any | no |
Example
curl -X POST 'https://core.mtro.app/subscriptions/checkout' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
GET /subscriptions/my
Get the current entity subscription.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_my
Example
curl -X GET 'https://core.mtro.app/subscriptions/my' \
-H 'Authorization: Bearer mtro_your_api_key'
Response
| Field | Type |
|---|---|
subscription | any |
plan | any |
pendingSubscription | any |
hasActiveSubscription | boolean |
coHostingSuiteFirstInvoiceCreditAvailable | boolean |
promoCodes | any[] |
error | boolean |
GET /subscriptions/payments
Get subscription payment history.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_payments
Example
curl -X GET 'https://core.mtro.app/subscriptions/payments' \
-H 'Authorization: Bearer mtro_your_api_key'
Response
| Field | Type |
|---|---|
payments | any[] |
error | boolean |
GET /subscriptions/plans
List public subscription plans available to the current owner.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_plans
Example
curl -X GET 'https://core.mtro.app/subscriptions/plans' \
-H 'Authorization: Bearer mtro_your_api_key'
Response
| Field | Type |
|---|---|
plans | object[] |
error | boolean |
Fields of plans[]
| Field | Type |
|---|---|
_id | string |
key | string |
__v | integer |
createdAt | integer |
currency | string |
description | string |
features | object[] |
isActive | boolean |
isCanonical | boolean |
isCustomPricing | boolean |
isDefault | boolean |
listingCount | string |
monthlyPrice | integer |
name | string |
priceLabel | string |
sortOrder | integer |
updatedAt | integer |
userSeats | string |
yearlyPrice | integer |
GET /subscriptions/plans/all
List all subscription plans. Usually admin-only.
Required scope: any valid API key for the entity.
MCP tool: subscriptions_plans_all
Example
curl -X GET 'https://core.mtro.app/subscriptions/plans/all' \
-H 'Authorization: Bearer mtro_your_api_key'