# Create listings (https://sellersheetai.com/docs/mcp-api/workflows/listings-create)

> List new products on Amazon from the product type's own schema — find the type, fill the required attributes, validate, then submit.



<Callout title="In short">
  Your agent finds the product type, reads its schema, fills the attributes with you, checks them with Amazon's validation preview and only then creates the listing.
</Callout>

## Step by step [#step-by-step]

<Steps>
  <Step>
    ### Find the product type [#find-the-product-type]

    "I'm listing a new yoga mat." `productTypeDefinitions_searchDefinitionsProductTypes` finds the matching Amazon product types by keyword.
  </Step>

  <Step>
    ### Read what Amazon requires [#read-what-amazon-requires]

    `productTypeDefinitions_getDefinitionsProductType` returns the full schema for that type — every attribute, which ones are required, and their allowed values.
  </Step>

  <Step>
    ### Validate before you publish [#validate-before-you-publish]

    `listings_validate_rows` runs Amazon's validation preview on your rows and returns the issues it would raise — nothing goes live.
  </Step>

  <Step>
    ### Create or change the listing [#create-or-change-the-listing]

    `listings_putListingsItem` creates a listing (or fully replaces one); `listings_patchListingsItem` changes only the attributes you name on an existing listing. For many SKUs at once, use the Publish Queue — see [Attributes & Publish Queue](/docs/mcp-api/workflows/listings-attributes).
  </Step>
</Steps>

## Try asking [#try-asking]

> "Create a listing for a new yoga mat in the Sports category — check it with Amazon's validation first."

> "Show me the required attributes for the product type SPORTING_GOODS."

## The schema lookup, both ways [#the-schema-lookup-both-ways]

The same tool and the same arguments — through your AI client, or from your own code.

**MCP** — you describe the product; your agent calls `productTypeDefinitions_searchDefinitionsProductTypes`, suggests the best match, and asks before going on.

<ToolCall tool="productTypeDefinitions_searchDefinitionsProductTypes" args="{ keywords: &#x22;yoga mat&#x22; }" />

<Callout type="warn" title="Write access required">
  Creating, replacing or patching a listing changes your seller account, so the store needs write access (see [Stay in control](/docs/mcp-api/control)). Searching product types and reading schemas work with read access.
</Callout>

## Tools on this page [#tools-on-this-page]

Pulled from the catalog at build time, each with its own access label.

<ToolList tools="[&#x22;productTypeDefinitions_searchDefinitionsProductTypes&#x22;, &#x22;productTypeDefinitions_getDefinitionsProductType&#x22;, &#x22;listings_validate_rows&#x22;, &#x22;listings_putListingsItem&#x22;, &#x22;listings_patchListingsItem&#x22;, &#x22;listings_deleteListingsItem&#x22;]" />

## FAQ [#faq]

### Can I list many products at once? [#can-i-list-many-products-at-once]

Yes — prepare a Publish Queue sheet for the product type and submit it as one feed. See [Attributes & Publish Queue](/docs/mcp-api/workflows/listings-attributes).

### Is replacing a listing safe? [#is-replacing-a-listing-safe]

`listings_putListingsItem` replaces the whole listing with what you send, so your agent fetches the current attributes first ([View & search listings](/docs/mcp-api/workflows/listings-view)). To change one field, patch it instead.
