Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
BWB03 avatar

Catalog Cli Pro

  • 12 repo stars
  • Updated July 20, 2026
  • BWB03/amazon-catalog-cli

Catalog CLI Pro is an MCP server that runs 13 Amazon listing quality checks through your agent via Catalog CLI Pro’s API.

About

Catalog CLI Pro is a Model Context Protocol server that exposes Amazon catalog auditing to Claude Code, Cursor, Codex, and similar agents. sellers who list on Amazon can trigger structured reviews from the terminal or chat instead of manually spot-checking titles, bullets, images, and attributes in Seller Central. The server ships as an npm package with stdio transport and authenticates with a Catalog CLI Pro API key you obtain at catalogcli.com. Its headline capability is a fixed suite of 13 quality checks aimed at catching listing defects before they hurt buy-box performance or ad spend. Use it during listing refreshes, before big promos, or when an agent is helping you bulk-fix ASIN families. It is an integration layer to Catalog CLI Pro’s hosted auditing API, not a replacement for Amazon’s own listing editor or SP-API automation stacks.

  • MCP stdio server `@bwb03/catalog-cli-pro` (npm v1.0.0) wired for agent-driven catalog workflows
  • 13 built-in quality checks against Amazon listing data
  • Requires `CATALOG_API_KEY` (secret) from catalogcli.com/signup
  • GitHub source: BWB03/amazon-catalog-cli
  • Comparison: MCP catalog auditor, not a generic web scraper skill

Catalog Cli Pro by the numbers

  • Data as of Jul 21, 2026 (Skillselion catalog sync)
terminal
claude mcp add --env CATALOG_API_KEY=YOUR_CATALOG_API_KEY catalog-cli-pro -- npx -y @bwb03/catalog-cli-pro

Add your badge

Show developers this MCP server is listed on Skillselion. Paste this into your README.

Listed on Skillselion
repo stars12
Package@bwb03/catalog-cli-pro
TransportSTDIO
AuthRequired
Last updatedJuly 20, 2026
RepositoryBWB03/amazon-catalog-cli

What it does

Run Amazon listing audits from your coding agent without switching to Seller Central spreadsheets.

Who is it for?

Amazon sellers and small brands who already use AI coding agents and want repeatable listing QA before campaigns or seasonal updates.

Skip if: Skip if you do not sell on Amazon, need full SP-API inventory sync, or want a free offline-only linter with no API key.

What you get

After you add the server and `CATALOG_API_KEY`, your agent can request catalog audits and you get actionable fix lists aligned to the 13 checks.

  • Agent-callable Amazon catalog audit results from 13 quality checks
  • Repeatable listing QA workflow without manual Seller Central checklists
  • Stdio MCP wiring documented via server.schema.json packages block

By the numbers

  • 13 listing quality checks
  • Server version 1.0.0
  • npm identifier @bwb03/catalog-cli-pro
README.md

Catalog CLI

PyPI version License: MIT

Agent-native Amazon catalog auditing tool

The first AI-agent-friendly Amazon catalog analysis tool. Query your CLRs with structured input, integrate via MCP server, and automate catalog audits.

Hosted API available at api.catalogcli.com — persistent storage, unlimited scans, and API access for $9.99/mo. Learn more

What's New in v2.2

  • Amazon title readiness - New mobile-title-readiness check flags titles over 75 characters for Amazon's mobile title update
  • Rewrite-ready output - Returns first-75-character title segments, overflow text, significant terms, item highlight status, and recommended next actions
  • Agent workflow friendly - Aliases title-75 and amazon-title-75 make it easy to call from Claude, MCP clients, and automation workflows
  • 14 built-in checks - Adds a new title triage workflow while keeping the classic 200-character long-titles check unchanged

v2.0 Agent Foundations

  • Shared core architecture - Business logic separated into catalog/core/, powering both CLI and MCP
  • MCP server - catalog mcp launches a stdio MCP server with 4 tools, ready for Claude Desktop and any MCP client
  • JSON input - --json and --stdin flags for structured agent input
  • Schema introspection - catalog schema --format json returns full request/response schemas
  • Field masks - --fields sku,severity,details to reduce output size
  • Pagination - --limit and --offset for controlling result size
  • NDJSON streaming - --format ndjson for line-by-line streaming of large results
  • Input hardening - Pydantic validation rejects path traversal, injection, and malformed input
  • Environment variables - CATALOG_CLI_DEFAULT_FORMAT=json for headless/CI use
  • Backward compatible - All v1.x commands work unchanged

Features

  • Agent-Native - CLI + MCP server as equal citizens, JSON/NDJSON output, schema introspection
  • Fast - Query 1000+ SKU catalogs in seconds
  • Extensible - Plugin system for custom queries
  • Comprehensive - 14 built-in catalog health checks
  • Intent Optimized - COSMO-inspired shopper intent coverage for bullets

Installation

pip install amazon-catalog-cli

Or install from source:

git clone https://github.com/BWB03/amazon-catalog-cli.git
cd amazon-catalog-cli
pip install -e .

Quick Start

For Humans

# Run all catalog checks
catalog scan my-catalog.xlsx

# Detailed results
catalog scan my-catalog.xlsx --show-details

# Run specific check
catalog check intent-bullets my-catalog.xlsx

# Audit titles for Amazon's 75-character mobile title update
catalog check mobile-title-readiness my-catalog.xlsx

# List available queries
catalog list-queries

For AI Agents

# JSON output with field mask and limit
catalog scan my-catalog.xlsx --format json --fields sku,severity,details --limit 20

# Title rewrite triage for agents
catalog check mobile-title-readiness my-catalog.xlsx --format json \
  --fields sku,details,title_char_count,mobile_visible_title,overflow_title,all_significant_terms

# Structured JSON input
catalog scan --json '{"file": "my-catalog.xlsx", "queries": ["missing-attributes"], "limit": 10}'

# Piped input
echo '{"file": "my-catalog.xlsx"}' | catalog scan --stdin --format json

# NDJSON streaming for large results
catalog scan my-catalog.xlsx --format ndjson

# Schema introspection (discover queries, params, response shapes)
catalog schema --format json

MCP Server (for Claude Desktop, CLR Pro, etc.)

# Start MCP server
catalog mcp

Add to Claude Desktop config:

{
  "mcpServers": {
    "catalog": {
      "command": "catalog",
      "args": ["mcp"]
    }
  }
}

MCP tools: catalog_scan, catalog_check, catalog_list_queries, catalog_schema

Available Queries

Attribute Audits

  • missing-attributes - Find mandatory attributes missing from listings
  • missing-any-attributes - Find all missing attributes (required + conditional)
  • new-attributes - Find unused template fields that might add value

Content Quality

  • intent-bullets - Score bullet points against shopper intent coverage
  • bullet-prohibited-content - Find bullet points with prohibited chars, emojis, claims, or placeholders
  • bullet-formatting - Check bullet formatting (capitalization, length, punctuation)
  • bullet-awareness - Soft violations in bullets (excessive caps, problematic chars)
  • mobile-title-readiness - Find titles over 75 characters and prepare rewrite inputs
  • long-titles - Find titles exceeding 200 characters
  • title-prohibited-chars - Find titles with prohibited characters
  • prohibited-chars - Find prohibited characters in title/brand

Catalog Structure

  • product-type-mismatch - Find mismatched product types and item keywords
  • missing-variations - Find products that should be variations but aren't

CLI Commands

catalog scan

Run all queries on a CLR file.

catalog scan <clr-file> [OPTIONS]

Options:
  --format [terminal|json|csv|ndjson]  Output format (default: terminal)
  --output PATH                        Output file path
  --show-details / --no-details        Show detailed results
  --include-fbm-duplicates             Include FBM/MFN duplicates
  --json TEXT                          JSON request body
  --stdin                              Read JSON request from stdin
  --queries TEXT                       Comma-separated query names
  --fields TEXT                        Comma-separated field mask
  --limit INTEGER                      Max issues to return
  --offset INTEGER                     Skip first N issues

catalog check

Run a specific query.

catalog check <query-name> <clr-file> [OPTIONS]

Options:
  --format [terminal|json|csv|ndjson]  Output format (default: terminal)
  --output PATH                        Output file path
  --show-details / --no-details        Show detailed results
  --json TEXT                          JSON request body
  --stdin                              Read JSON request from stdin
  --fields TEXT                        Comma-separated field mask
  --limit INTEGER                      Max issues to return
  --offset INTEGER                     Skip first N issues

catalog schema

Show schema for queries, params, and response shapes.

catalog schema [query-name] [OPTIONS]

Options:
  --format [terminal|json]  Output format

catalog list-queries

List available queries.

catalog list-queries [OPTIONS]

Options:
  --format [terminal|json]  Output format

catalog mcp

Start the MCP server (stdio transport).

catalog mcp

catalog setup-claude

Configure Claude Code to use Catalog CLI as an MCP tool server.

# Free (local) — data stays on your machine
catalog setup-claude

# Pro (hosted API) — persistent storage, unlimited scans
catalog setup-claude --pro --api-key YOUR_KEY

# Per-project instead of global
catalog setup-claude --project

After setup, restart Claude Code and try: "Scan my-catalog.xlsx and tell me the biggest issues"

Example JSON Output

{
  "timestamp": "2026-03-05T10:30:00Z",
  "marketplace": "US",
  "is_us_marketplace": true,
  "total_queries": 14,
  "total_issues": 47,
  "total_affected_skus": 23,
  "results": [
    {
      "query_name": "missing-attributes",
      "description": "Find mandatory attributes missing from listings",
      "total_issues": 12,
      "affected_skus": 8,
      "issues": [
        {
          "row": 7,
          "sku": "ABC-123",
          "field": "brand",
          "severity": "required",
          "details": "Missing required field: brand",
          "product_type": "HAIR_STYLING_AGENT",
          "extra": {}
        }
      ]
    }
  ]
}

Agent Integration

Via CLI (subprocess)

import subprocess, json

result = subprocess.run(
    ['catalog', 'scan', 'my-catalog.xlsx', '--format', 'json',
     '--fields', 'sku,severity,details', '--limit', '20'],
    capture_output=True, text=True
)
data = json.loads(result.stdout)

Via Python (direct import)

from catalog.core import execute_scan, ScanRequest

request = ScanRequest(
    file="my-catalog.xlsx",
    queries=["missing-attributes", "intent-bullets"],
    fields=["sku", "severity", "details"],
    limit=20,
)
response = execute_scan(request)

Via MCP

Add the MCP server to any MCP client (Claude Desktop, CLR Pro, etc.) and call catalog_scan, catalog_check, catalog_list_queries, or catalog_schema.

Intent-Based Bullet Optimization

The intent-bullets query evaluates bullet points against COSMO-inspired shopper intent coverage:

  • Audience / need fit: Who it is for, preferences, or problem state
  • Function / use case: The job, activity, event, or use flow
  • Context / compatibility: Where, when, or what it works with
  • Decision evidence: Specs, attributes, trust signals, or differentiators
  • All bullets: Checked for intent coverage, length, vague marketing, ALL CAPS

Scores 1-5 with actionable suggestions. The old rufus-bullets query name still works as a deprecated compatibility alias.

Extending with Custom Queries

from catalog.query_engine import QueryPlugin

class MyCustomQuery(QueryPlugin):
    name = "my-custom-check"
    description = "My custom catalog check"

    def execute(self, listings, clr_parser):
        issues = []
        for listing in listings:
            if some_condition:
                issues.append({
                    'row': listing.row_number,
                    'sku': listing.sku,
                    'field': 'FieldName',
                    'severity': 'warning',
                    'details': 'Issue description',
                    'product_type': listing.product_type
                })
        return issues

Requirements

  • Python 3.10+
  • openpyxl
  • click
  • rich
  • pydantic
  • mcp

How to Get Your CLR

  1. Go to Amazon Seller Central > Catalog > Category Listing Report
  2. Click Generate Report
  3. Download the .xlsm or .xlsx file
  4. Run catalog CLI on it

Free vs Pro

Open Source CLI Free API Pro API ($9.99/mo)
14 quality audits Yes Yes Yes
Scans Unlimited (local) 2 lifetime Unlimited
Catalogs stored 1 Unlimited
Results persistence 7 days Permanent
API access Yes Yes
Rate limit 10 req/min 100 req/min
Claude Code integration Local MCP Hosted MCP
Variation Creator Coming soon

Get started at catalogcli.com | API Docs

Contributing

This is an open-source project. Contributions welcome!

  • Add new query plugins
  • Improve parsing logic
  • Enhance output formats
  • Build integrations

License

MIT License - Free to use, modify, and distribute.

Author

Built by Brett Bohannon (@BWB03)

Related Projects


Agent-native Amazon catalog tool. Built for the future of catalog management.

Recommended MCP Servers

How it compares

Hosted Amazon catalog auditing MCP integration, not a general-purpose copywriting skill.

FAQ

Who is Catalog CLI Pro for?

It is for Amazon sellers and operators who want their AI agent to audit listings using Catalog CLI Pro’s 13 quality checks.

When should I use Catalog CLI Pro?

Use it when refreshing listings, prepping for promos, or batch-reviewing catalog health before you scale ads or expand variants.

How do I add Catalog CLI Pro to my agent?

Install `@bwb03/catalog-cli-pro` from npm, set stdio MCP config, and export `CATALOG_API_KEY` from catalogcli.com/signup.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.