Listano Docs
AI IntegrationListano Control MCP

Errors

Common Listano Control MCP errors and recovery guidance.

Listano Control MCP tools may return errors from authentication, permissions, validation, readiness checks, or backend fetch failures.

The safest recovery pattern is:

  1. inspect the error
  2. call whoami if permissions are unclear
  3. call get-offering if the current draft state is unclear
  4. fix only the specific invalid or missing data
  5. call check-offering-publish-readiness again before publishing

Permission errors

A permission error means the authenticated integration does not have the required scope.

OperationRequired scope
list/read/checkcatalog:read
create/update/translate/discardcatalog:write
publish/discontinuecatalog:publish

Recovery:

  • call whoami
  • confirm granted scopes
  • ask for the missing scope to be granted

Not found errors

An offering may not be found when:

  • the offeringId is wrong
  • the offering belongs to another company
  • the integration is authenticated for a different company

Recovery:

  • call list-offerings with a title, SKU, or other known identifier
  • confirm the selected offering before mutating it

Validation errors

Validation errors usually mean the input shape or field value is invalid.

Common causes:

CauseFix
category_id without category_labelProvide both fields.
Invalid language codeUse get-supported-languages.
Main language included in translationsRemove the main language from the translation payload.
Invalid unit codeUse a valid 3-character unit code.
Attribute has unit but non-number valueUse a numeric value.
Attribute has valueLabel but non-string valueUse a string value.
Attempt to change kind or languageDiscard the draft and create a new offering.

Publish readiness errors

check-offering-publish-readiness returns:

{
  offeringId: string
  publishable: boolean
  errors: unknown[]
}

When publishable is false, do not call publish-offering.

Common readiness problems:

  • missing main-language title, description, or measure unit
  • missing translations for supported non-main languages
  • missing translated category labels
  • missing attribute translations
  • invalid attribute value/unit combination
  • missing translated attribute descriptions or value labels

Recovery:

  1. fix the returned errors
  2. call check-offering-publish-readiness again
  3. publish only when publishable is true

Draft lifecycle errors

If kind or language is wrong, do not try to patch it.

These fields are immutable. The correct recovery is to discard the draft with discard-offering-draft and create a new offering.

If an offering already has a published current version, discarding the draft does not remove the live version.

Publishing errors

publish-offering may fail if the draft is incomplete or invalid.

Recovery:

  • call check-offering-publish-readiness
  • fix the returned errors
  • try publishing only after readiness passes

Backend fetch failures

A tool may return a fetch failure when the backend request fails before a valid response is returned.

Recovery:

  • retry the same read-only operation if appropriate
  • avoid repeating mutation calls unless the current state has been checked with get-offering
  • report the error message if the failure persists