Herramienta MCP
Obtener estado de facturación
sosoapi_get_billing_statusConsulta el plan de facturación del usuario, el estado del pago, las fechas del ciclo actual y el uso de cuotas (publicaciones exitosas, publicaciones programadas pendientes, cuentas conectadas). Compruébalo antes de programar grandes lotes.
Leer en MarkdownPerfiles y transportes
Perfiles: core, full · Transportes: stdio, http
Elige core o full para controlar qué herramientas ve tu cliente; no cambia sus permisos. La carga de archivos locales requiere stdio y no está disponible por HTTP. Establece SOSOAPI_OUTPUT_SCHEMAS=1 para incluir esquemas de salida en la detección. Las herramientas devuelven resultados estructurados con o sin esa opción.
Permisos y efectos secundarios
Las anotaciones ayudan a los clientes a describir una herramienta. Cada llamada sigue comprobando la autenticación, el rol, el acceso al recurso y los permisos de capacidades del usuario.
{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
}- /identity-api/billing/status: agent:operate · synchronous_http_response
Campos de entrada
Obligatorio significa obligatorio dentro del objeto principal y la rama elegida. Un campo secundario obligatorio no convierte en obligatorio un objeto principal opcional. Las reglas y nombres de campos siguientes se copian del contrato.
| Campo / rama | Tipo / obligatorio | Restricciones |
|---|---|---|
$ | objectObligatorio en el objeto principal |
|
JSON Schema completo
{
"type": "object",
"properties": {},
"additionalProperties": false
}Salida estructurada
Este esquema describe structuredContent en un resultado exitoso de herramienta. La respuesta MCP también incluye content y puede establecer isError si falla una llamada. Para publicación, consulta el resultado final de la publicación en vez de considerar una solicitud aceptada o una respuesta de texto como confirmación. La operación API enlazada explica los permisos y las reglas de reintento.
Obligatorio significa obligatorio dentro del objeto principal y la rama elegida. Un campo secundario obligatorio no convierte en obligatorio un objeto principal opcional. Las reglas y nombres de campos siguientes se copian del contrato.
| Campo / rama | Tipo / obligatorio | Restricciones |
|---|---|---|
$ | objectObligatorio en el objeto principal |
|
billing_account_id | stringObligatorio en el objeto principal |
|
plan_key | stringObligatorio en el objeto principal |
|
plan_version | integerObligatorio en el objeto principal |
|
payment_state | stringObligatorio en el objeto principal |
|
entitlement_source | stringObligatorio en el objeto principal |
|
has_stripe_customer | booleanObligatorio en el objeto principal | — |
checkout_enabled | booleanObligatorio en el objeto principal | — |
cycle | objectObligatorio en el objeto principal |
|
cycle.period_start | stringObligatorio en el objeto principal |
|
cycle.period_end | stringObligatorio en el objeto principal |
|
cycle.reset_at | stringObligatorio en el objeto principal |
|
quota | objectObligatorio en el objeto principal |
|
quota.successful_destination_publishes | objectObligatorio en el objeto principal |
|
quota.successful_destination_publishes.limit | integerObligatorio en el objeto principal |
|
quota.successful_destination_publishes.reserved | integerObligatorio en el objeto principal |
|
quota.successful_destination_publishes.consumed | integerObligatorio en el objeto principal |
|
quota.successful_destination_publishes.remaining | integerObligatorio en el objeto principal |
|
quota.pending_scheduled_posts | objectObligatorio en el objeto principal |
|
quota.pending_scheduled_posts.limit | integerObligatorio en el objeto principal |
|
quota.pending_scheduled_posts.active | integerObligatorio en el objeto principal |
|
quota.pending_scheduled_posts.remaining | integerObligatorio en el objeto principal |
|
quota.connected_social_accounts | objectObligatorio en el objeto principal |
|
quota.connected_social_accounts.limit | integerObligatorio en el objeto principal |
|
quota.connected_social_accounts.active | integerObligatorio en el objeto principal |
|
quota.connected_social_accounts.remaining | integerObligatorio en el objeto principal |
|
history_days | integerObligatorio en el objeto principal |
|
capabilities | objectObligatorio en el objeto principal |
|
capabilities.* | any JSON valueOpcional / elemento | — |
JSON Schema completo
{
"type": "object",
"properties": {
"billing_account_id": {
"type": "string",
"format": "uuid"
},
"plan_key": {
"type": "string",
"enum": [
"free",
"founding_pro"
]
},
"plan_version": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"payment_state": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"entitlement_source": {
"type": "string",
"enum": [
"default",
"stripe",
"internal_test",
"reconciliation",
"manual"
]
},
"has_stripe_customer": {
"type": "boolean"
},
"checkout_enabled": {
"type": "boolean"
},
"cycle": {
"type": "object",
"properties": {
"period_start": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"period_end": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"reset_at": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
}
},
"required": [
"period_start",
"period_end",
"reset_at"
],
"additionalProperties": false
},
"quota": {
"type": "object",
"properties": {
"successful_destination_publishes": {
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"reserved": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"consumed": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"remaining": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"limit",
"reserved",
"consumed",
"remaining"
],
"additionalProperties": false
},
"pending_scheduled_posts": {
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"active": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"remaining": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"limit",
"active",
"remaining"
],
"additionalProperties": false
},
"connected_social_accounts": {
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"active": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"remaining": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"limit",
"active",
"remaining"
],
"additionalProperties": false
}
},
"required": [
"successful_destination_publishes",
"pending_scheduled_posts",
"connected_social_accounts"
],
"additionalProperties": false
},
"history_days": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"capabilities": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"billing_account_id",
"plan_key",
"plan_version",
"payment_state",
"entitlement_source",
"has_stripe_customer",
"checkout_enabled",
"cycle",
"quota",
"history_days",
"capabilities"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Ejemplo de llamada a herramienta
Estos ejemplos usan valores ficticios comprobados con los esquemas. Sustituye los IDs por otros autorizados, los archivos multimedia por recursos listos y las fechas por tu hora de publicación confirmada. Comprueba la elegibilidad de la cuenta antes de enviar una escritura. Esta página no envía solicitudes API.
{
"name": "sosoapi_get_billing_status",
"arguments": {}
}structuredContent
{
"billing_account_id": "11111111-1111-4111-8111-111111111111",
"plan_key": "free",
"plan_version": 1,
"payment_state": "example",
"entitlement_source": "default",
"has_stripe_customer": false,
"checkout_enabled": false,
"cycle": {
"period_start": "2099-01-15T09:00:00Z",
"period_end": "2099-01-15T09:00:00Z",
"reset_at": "2099-01-15T09:00:00Z"
},
"quota": {
"successful_destination_publishes": {
"limit": 0,
"reserved": 0,
"consumed": 0,
"remaining": 0
},
"pending_scheduled_posts": {
"limit": 0,
"active": 0,
"remaining": 0
},
"connected_social_accounts": {
"limit": 0,
"active": 0,
"remaining": 0
}
},
"history_days": 1,
"capabilities": {}
}