Skip to main content
Glama
Suriya-Ravichandran

Amazon India Product Research MCP

Amazon India 产品研究 MCP

CI Licence: MIT PyPI Python 3.11+ MCP PRs welcome Security policy Release

一个 MCP(模型上下文协议)服务器,可将 Claude Desktop 变成亚马逊印度新手卖家的产品研究助手。它可以为产品机会打分、估算需求、评估竞争、计算真实的亚马逊印度利润、规划采购、挖掘客户投诉、研究关键词并起草完整的商品详情页。

通过 stdio 运行,可直接接入 Claude Desktop。

新手?从设置与运行指南开始 —— 包含分步安装、验证和 Claude Desktop 配置,以及故障排查章节。 如需实时数据,请参阅实时数据与抓取指南。

24 个工具。零 API 密钥即可运行 —— 离线演示模式,或基于免费来源(Google Trends、DuckDuckGo、公开的 amazon.in 页面)的真实实时数据。


项目概述

该服务器围绕一个卖家画像构建:

标准

目标

投资额

₹5,000 – ₹20,000

售价

₹199 – ₹699

重量

500 克以下

利润率

最低 30%

需求

日常使用、非季节性

退货率

低退货率

采购

印度本地采购便利

风险

无明显准入限制或品牌审批问题

每个工具都会根据这些标准为产品打分,并对那些让新手卖家翻车的因素进行扣分:品牌商品、仿冒风险、易碎品、电池、复杂电子产品、易腐品、季节性产品、服装尺码、重物以及被强势品牌主导的品类。

数据完整性优先

本项目拒绝编造市场事实。每项有意义的输出都带有 source、data_type、confidence 和 last_updated 字段,其中 data_type 为以下之一:Live(实时)、Verified(已验证)、Estimated(估算)、Historical(历史)或 Demo(演示)。

  • 演示数据始终标记为 Demo,绝不会被当作实时亚马逊数据呈现。

  • 需求量和月销量数据是建模估算值,绝非实测的亚马逊销量。

  • 亚马逊费用来自可配置的费率表;随附的费率表标记为 Estimated。

  • 绝不虚构供应商。 在没有供应商 API 的情况下,search_suppliers 返回空的供应商列表,外加你可以自行核实的真实公开采购渠道。

  • 没有任何工具会声称保证利润或保证销量。


Related MCP server: LaunchFast MCP

功能特性

  • 20 个 MCP 工具,覆盖完整的卖家工作流:选品发现、需求分析、竞争分析、财务测算、商品上架、采购和实时数据

  • 免费实时数据,无需 API 密钥:Google Trends 搜索热度、DuckDuckGo 网页搜索,以及公开的 amazon.in 页面(包括"过去一个月购买"徽章)

  • 收入和销量估算,基于 BSR 曲线或亚马逊自有的购买徽章,始终以区间形式呈现并注明估算方法

  • 新手卖家检测:识别哪些竞争对手评论数较少,以及其中哪些已经月销 300+ 件——这是判断一个页面是否值得切入的最强信号

  • 常青评分,基于最长 5 年的真实搜索热度数据,帮你避开季节性滞销库存

  • 亚马逊广告规划:盈亏平衡 ACOS、按匹配类型划分的出价阶梯、关键词匹配分配、广告结构设计和否定关键词——全部基于你自己的单位经济模型而非泛泛建议

  • 0–100 加权机会评分,以及一次最多批量筛选 15 个产品创意

  • 亚马逊印度费用计算:佣金、结算费、FBA / Easy Ship / Self Ship、费用 GST、退货准备金、盈亏平衡价和推荐售价

  • 上市规划:订货量、预算分配、广告预算、补货点、回本周期

  • 评论投诉聚类分析,并给出具体的供应商层面改进建议

  • 关键词研究、商品详情页草稿和七槽位图片规划

  • 合规优先的抓取策略:robots.txt、白名单、抓取延迟、页面预算,以及遇到机器人挑战时硬性停止——绝不绕过机器人防护

  • 研究历史存储在 SQLite 或 PostgreSQL 中

  • 完整演示模式:一切均可离线、确定性运行


架构

amazon-india-seller-mcp/
│
├── amazon_india_seller_mcp/      # the installable package
│   ├── __init__.py
│   ├── __main__.py               # python -m amazon_india_seller_mcp
│   └── server.py                 # MCP entry point (stdio transport) - wiring only
│
├── server.py                     # compatibility shim: python server.py still works
│
├── amazon_india_seller_mcp/tools/                        # MCP tool definitions - thin: validate, call service, shape result
│   ├── __init__.py               # ServiceBundle + error-handling decorator
│   ├── product_research.py       # research_product
│   ├── demand_analysis.py        # analyze_product_demand
│   ├── competition.py            # analyze_competition
│   ├── profit_calculator.py      # calculate_profitability
│   ├── supplier_search.py        # search_suppliers
│   ├── review_analysis.py        # analyze_reviews
│   ├── keyword_research.py       # research_keywords
│   ├── listing_generator.py      # generate_listing
│   ├── revenue_calculator.py     # calculate_revenue
│   ├── competitor_analysis.py    # analyze_competitors
│   ├── purchase_signals.py       # analyze_purchase_signals
│   ├── review_metrics.py         # analyze_review_metrics
│   ├── evergreen_analysis.py     # analyze_evergreen
│   ├── product_images.py         # analyze_product_images
│   ├── opportunity_finder.py     # find_product_opportunities
│   ├── launch_planner.py         # plan_product_launch
│   ├── ppc_keywords.py           # suggest_ppc_keywords
│   ├── ppc_bidding.py            # calculate_ppc_bids / plan_ppc_campaign
│   ├── web_search.py             # search_web
│   ├── amazon_scraper.py         # scrape_amazon_search / scrape_amazon_product / scraper_status
│   └── listing_scraper.py        # scrape_listing_details
│
├── amazon_india_seller_mcp/services/                     # All business logic
│   ├── __init__.py               # Data envelopes, errors, cache, opportunity scoring
│   ├── amazon_service.py         # Provider abstraction (demo / scraper / API), snapshots, risk, reviews, listings
│   ├── trends_service.py         # Demand, trend direction, seasonality, keywords, live Google Trends
│   ├── supplier_service.py       # Sourcing research (never fabricates suppliers)
│   ├── pricing_service.py        # Fees, profit, margin, ROI, break-even, recommended price
│   ├── revenue_service.py        # Units from BSR/badges, revenue, competitor stage, evergreen scoring
│   ├── search_service.py         # Web search (DuckDuckGo free, Brave/Serper/Tavily/Google CSE)
│   ├── browser_service.py        # Guardrailed fetching: allowlist, robots.txt, delay, budget, block detection
│   ├── scraper_service.py        # Amazon India page parsing (search, product, listing detail, reviews, bestsellers)
│   ├── ads_service.py            # Sponsored Products bid maths, keyword match types, campaign structure
│   └── security.py               # SSRF guards, log redaction, prompt-injection scanning, size caps
│
├── amazon_india_seller_mcp/database/                     # Research history
│   ├── __init__.py
│   └── models.py                 # SQLAlchemy models + session handling
│
├── amazon_india_seller_mcp/config/                       # Centralised settings
│   ├── __init__.py
│   └── settings.py               # Env-driven settings + configurable fee schedule
│
├── tests/
│   ├── __init__.py
│   ├── test_product_research.py
│   ├── test_demand_analysis.py
│   ├── test_competition.py
│   └── test_profit_calculator.py
│
├── docs/
│   ├── SETUP.md                  # full setup, run and troubleshooting guide
│   ├── SCRAPING.md               # live data sources, guardrails and compliance
│   ├── PROMPTS.md                # copy-paste prompt library for all 20 tools
│   └── check_connection.py       # MCP connection self-test
│
├── .env.example
├── mcp.json.example
├── LICENSE                       # MIT
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
├── SECURITY.md                   # threat model and controls
├── CHANGELOG.md
├── .github/workflows/ci.yml      # tests on Python 3.11-3.13
├── pyproject.toml                # Dependencies, managed by uv
└── uv.lock

代码遵循的规则:server.py 不含业务逻辑,工具不含业务逻辑,所有业务逻辑都在服务层。


安装

环境要求: Python 3.11+ 和 uv。设置与运行指南 详细介绍了每一步。

无需克隆即可使用

uvx amazon-india-seller-mcp

这就是全部安装步骤。将 Claude Desktop 指向它:

{
  "mcpServers": {
    "amazon-india-seller": {
      "command": "uvx",
      "args": ["amazon-india-seller-mcp"],
      "env": { "DEMO_MODE": "true" }
    }
  }
}

或者安装到环境中

uv tool install amazon-india-seller-mcp     # then run: amazon-india-seller-mcp
pip install amazon-india-seller-mcp         # works too

或者从源码检出进行开发

git clone https://github.com/Suriya-Ravichandran/amazon-india-seller-mcp.git
cd amazon-india-seller-mcp
uv sync --all-extras
uv run python -m amazon_india_seller_mcp

免费实时数据需要额外依赖:uv sync --extra realtime --extra browser。

# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# or via pip
python -m pip install uv

虚拟环境

uv sync 会为你管理虚拟环境;使用 uv run 运行命令。如果你更愿意手动激活:

# Windows
.venv\Scripts\activate

# macOS / Linux
source .venv/bin/activate

依赖

在 pyproject.toml 中声明,并在 uv.lock 中锁定版本:

mcp、pydantic、pydantic-settings、httpx、sqlalchemy、python-dotenv;开发组中包含 pytest。

使用 uv add <package> / uv remove <package> 添加或更改依赖——切勿手动编辑锁文件。


环境配置

cp .env.example .env      # Windows: copy .env.example .env

变量

默认值

用途

APP_ENV

development

环境标签

DEBUG

false

详细日志

DATABASE_URL

sqlite:///./amazon_product_mcp.db

SQLite 或 PostgreSQL URL

PERSIST_RESEARCH

true

存储研究历史

AMAZON_API_KEY / AMAZON_API_SECRET

空

SP-API / PA-API 凭据

PRODUCT_DATA_PROVIDER

demo

demo、sp-api、pa-api 或第三方 API 名称

PRODUCT_DATA_API_KEY / PRODUCT_DATA_BASE_URL

空

第三方数据提供商访问

GOOGLE_TRENDS_ENABLED

false

启用趋势数据提供商(项目不内置任何提供商)

SUPPLIER_API_KEY / SUPPLIER_BASE_URL

空

供应商数据提供商

DEMO_MODE

true

确定性演示数据,明确标注

CACHE_ENABLED / CACHE_TTL_SECONDS

true / 900

进程内缓存

AMAZON_FEE_CONFIG_PATH

空

包含你真实 Seller Central 费率卡的 JSON 文件

密钥只存在于 .env 中,该文件已被 gitignore。源码中不硬编码任何内容。


数据库设置

表会在启动时自动创建,无需手动操作。

开发环境(默认): SQLite,位于 ./amazon_product_mcp.db。

PostgreSQL:

DATABASE_URL=postgresql+psycopg://user:password@localhost:5432/amazon_mcp

JSON 负载列在 PostgreSQL 上自动映射为 JSONB,在 SQLite 上映射为 JSON。请同时安装驱动:uv add psycopg[binary]。

存储的模型:ProductResearch、DemandAnalysis、CompetitionAnalysis、ProfitCalculation、SupplierResearch——每个都保留 product_name、marketplace、research_data、data_source、data_type、confidence、created_at、updated_at 字段。

历史存储是尽力而为的:如果数据库不可达,工具仍可正常工作,失败会被记录日志而不会抛出。


运行 MCP

uvx amazon-india-seller-mcp              # installed
uv run python -m amazon_india_seller_mcp # from a checkout
uv run server.py                         # legacy path, still supported

该进程通过 stdio 使用 MCP 协议通信,因此会静默等待客户端连接——这是正常行为。日志输出到 stderr,保持 stdout 干净以用于协议通信。使用 Ctrl+C 停止。


Claude Desktop 配置

  1. 打开 Claude Desktop 配置文件:

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  2. 将 mcp.json.example 中的 mcpServers 块复制进去,将路径替换为你自己的绝对路径:

{
  "mcpServers": {
    "amazon-product-research": {
      "command": "/ABSOLUTE/PATH/TO/amazon-india-seller-mcp/.venv/bin/python",
      "args": ["/ABSOLUTE/PATH/TO/amazon-india-seller-mcp/server.py"],
      "env": { "DEMO_MODE": "true" }
    }
  }
}

在 Windows 上使用 .venv\\Scripts\\python.exe 并转义反斜杠。示例文件中还包含一个 uv --directory ... run server.py 变体。

  1. 完全退出并重启 Claude Desktop(从托盘/菜单栏关闭——仅重新加载窗口是不够的)。

  2. 测试连接:工具会出现在 Claude Desktop 的工具菜单中,询问 "计算一个售价 ₹399、成本 ₹120 的产品的利润" 应触发 calculate_profitability。


可用 MCP 工具

选品发现

工具

功能

find_product_opportunities

一次最多筛选 15 个产品创意,对照新手标准进行评分和排名。从这里开始。

research_product

针对单个创意的完整机会报告:品类、价格区间、BSR、重量、评分、评论数、需求、竞争、退货/准入/品牌风险、新手适配度、0–100 评分和推荐建议

需求

工具

功能

analyze_product_demand

月度需求、需求等级、趋势方向、季节性、置信度以及上架决策

analyze_evergreen

基于最多 5 年的真实搜索兴趣得出 0–100 的常青评分:稳定性、平稳度、需求下限、增长趋势,以及库存建议

analyze_purchase_signals

汇总亚马逊自带的"过去一个月内 X 人购买了该商品"徽章——这是最可靠的免费销售信号

竞争分析

工具

功能

analyze_competition

竞争程度、价格和评分平均值、评论门槛、品牌主导度、列表和图片质量、薄弱列表以及差异化切入点

analyze_competitors

每个竞争对手的销量、收入、市场份额、市场规模和集中度。标记新卖家(评论数少)以及月销 300+ 件的卖家,然后给出入场判断

analyze_review_metrics

评论门槛:评论数的中位数和四分位数、追赶所需月数,以及哪些列表是可以击败的

资金分析

工具

功能

calculate_profitability

推荐费、成交费、配送费和 GST 费用、退货准备金、总成本、利润、利润率、ROI、盈亏平衡点和建议售价,以及通俗易懂的解释

calculate_revenue

基于销量、BSR 或购买徽章计算月度和年度收入——以区间形式呈现,并注明计算方法。添加 product_cost 可计算利润

plan_product_launch

订货数量、预算分配(库存 / 样品 / 摄影 / 广告 / 缓冲金)、可售天数、补货点、可承受的广告成本、回本周期、逐周时间线和风险提示

列表优化

工具

功能

research_keywords

主要关键词、次要关键词、长尾关键词和相关关键词、搜索意图、优先级、后台搜索词以及投放建议

generate_listing

SEO 标题和备选方案、五点描述、产品描述、后台关键词、图片方向、包装建议和合规检查清单

analyze_product_images

竞品图库覆盖情况、你可以击败的薄弱图库、亚马逊的图片要求以及七张图片位规划

analyze_reviews

按主题分组的差评及提及次数和具体产品改进方案,以及受好评的特点和差异化角度

scrape_listing_details

对现有列表进行全面拆解——标题、图片、五点描述、产品描述、A+ 页面、视频、规格、徽章、变体——以 0–100 评分并给出击败方法

广告投放

工具

功能

suggest_ppc_keywords

广告关键词及匹配类型(精确 / 词组 / 广泛)、基于你的单位利润的建议出价、优先级、广告组设置,以及否定关键词

calculate_ppc_bids

盈亏平衡 ACOS(= 你的利润率)、目标 ACOS、盈亏平衡和目标 CPC、每种匹配类型的出价阶梯、每次订单的点击次数和广告成本。同时检查你正在运行的出价

plan_ppc_campaign

三广告系列结构(自动发现、手动精确核心、词组/广泛扩展),含预算分配、预计订单量和每周优化流程

货源开发

工具

功能

search_suppliers

针对 Parrys / Chennai / Tamil Nadu / India 的货源调研,含验证状态和审查清单。绝不虚构供应商

实时数据

工具

功能

search_web

通过 DuckDuckGo(免费、无需密钥)或 Brave / Serper / Tavily / Google CSE 进行网络搜索

scrape_amazon_search

实时 amazon.in 搜索结果:ASIN、价格、评分、评论数、购买徽章、广告标记

scrape_amazon_product

实时产品页面:BSR、重量、卖家、五点描述、完整图片库,以及销量估算

scraper_status

实时数据层的当前配置情况,以及任何阻碍因素

机会评分

组成部分

权重

需求

25%

盈利能力

25%

竞争程度

20%

退货风险

10%

货源获取难度

10%

新手友好度

10%

分数

建议

80–100

强劲机会

65–79

良好机会

50–64

中等机会

30–49

高风险

0–29

避免


示例提示词

Find beginner-friendly Amazon India products under ₹20,000 investment.

Screen these ideas and rank them: sink strainer, cable organizer, spice rack.

Analyze the demand for silicone sink strainers on Amazon India.

Is a silicone sink strainer an evergreen product or seasonal?

How many units are competitors selling for "cable organizer"?

Are any new sellers succeeding in the kitchen drawer organizer market?

What revenue would a ₹399 product at BSR 3,500 make per month?

Calculate the profit for a ₹399 product that costs ₹120.

Plan a ₹20,000 launch for a ₹399 sink strainer that costs ₹120.

Find suppliers for cable organizers in Chennai or Tamil Nadu.

Find customer complaints about manual soap dispensers.

Generate an Amazon India listing for a reusable silicone food storage bag.

Scrape live Amazon India results for "silicone sink strainer".

Tear down ASIN B0XXXXXXXX and tell me how to beat that listing.

What should I bid on Amazon Ads for a ₹399 product that costs ₹120?

Plan a ₹6,000/month PPC campaign for my sink strainer launch.

Check the scraper status.

一个自然的工作流程:筛选创意 → 检查需求和常青度 → 检查竞争对手和新卖家 → 计算利润 → 规划上架 → 研究关键词 → 生成列表。

docs/PROMPTS.md 是完整的提示词库 —— 56 个按任务分组的即用提示词、链式多工具工作流,以及能让 Claude 显示哪些数字是实时数据、哪些是估算值的提示词。


演示模式

设置 DEMO_MODE=true(默认值)后,每个工具都可以在没有任何付费 API 密钥的情况下运行。

  • 示例数据是确定性的 —— 相同的查询始终返回相同的数字,因此结果可复现、可测试。

  • 每个值都标记为 "data_type": "Demo"、"confidence": "Low"、"source": "Local Demo Provider"。

  • 服务器在启动时会记录警告日志,确保没有人忘记自己处于哪种模式。

演示模式用于学习工作流程和测试集成。切勿根据演示数据做出购买决策。


免费来源的实时数据(无需 API 密钥)

以下所有内容均免费且无需 API 密钥:

uv sync --extra realtime --extra browser
uv run playwright install chromium     # only for render=true
APP_ENV=production
DEMO_MODE=false
PRODUCT_DATA_PROVIDER=scraper
GOOGLE_TRENDS_ENABLED=true
WEB_SEARCH_PROVIDER=duckduckgo
BROWSER_ENABLED=true
BROWSER_ALLOWED_DOMAINS=amazon.in
BROWSER_MIN_DELAY_SECONDS=8

来源

提供内容

可靠性

Google Trends

真实的印度搜索兴趣、季节性、常青评分

高

DuckDuckGo

针对竞争对手、供应商、价格的实时网络搜索

高

amazon.in 页面

价格、ASIN、评分、评论数、购买徽章

间歇性

亚马逊会对自动化流量发起机器人验证挑战。本服务器会检测并停止而不是绕过这些挑战,因此抓取是机会性的。在启用之前请阅读 docs/SCRAPING.md —— 其中涵盖了 robots.txt 与服务条款、防护措施,以及如何在不修改代码的情况下修复选择器。


生产环境 API 集成

  1. 产品数据。 在 services/amazon_service.py 中实现一个 ProductDataProvider 子类(search_listings 和 fetch_reviews),或者将 PRODUCT_DATA_BASE_URL / PRODUCT_DATA_API_KEY 指向经批准的第三方 API,并调整 HttpProductDataProvider 的载荷映射。然后设置 DEMO_MODE=false。

  2. Amazon SP-API / PA-API。 注册为开发者,获取凭证,并添加一个使用 AMAZON_API_KEY / AMAZON_API_SECRET 对请求进行签名的提供程序。build_provider() 已经路由了 sp-api 和 pa-api,目前会抛出明确的"未实现"错误,而不是静默伪造数据。

  3. 费用。 将你的 Seller Central 费率卡导出为符合 FeeSchedule 模型的 JSON,将 AMAZON_FEE_CONFIG_PATH 指向该文件,并将 data_type 设置为 Verified。

  4. 供应商。 设置 SUPPLIER_API_KEY 和 SUPPLIER_API_BASE_URL;验证状态直接来自提供程序,而非假设。

请遵守每个提供程序的服务条款。直接抓取亚马逊违反其条款,本服务器未实现此功能。


测试

uv run pytest                      # whole suite (193 tests)
uv run pytest -v                   # verbose
uv run pytest tests/test_profit_calculator.py
uv run docs/check_connection.py    # end-to-end MCP connection self-test

测试覆盖范围包括:产品研究、机会评分区间和权重、需求分析和季节性、竞争分析、完整的利润计算(盈亏平衡点和建议售价通过重新计算验证)、费用表可配置性、收入和 BSR 曲线估算、新卖家和销量目标分类、常青评分、所有抓取防护措施(白名单、robots、页面预算、机器人挑战检测)、HTML 解析辅助函数、每个工具的无效输入处理,以及演示模式的确定性。

测试套件完全离线:实时 Google Trends、网络搜索和页面抓取均被强制关闭,以确保结果保持确定性。

测试套件强制使用演示模式、禁用缓存并禁用历史记录持久化,因此绝不会触碰你的研究数据库。


故障排除

症状

解决方法

Claude Desktop 中找不到服务器

在配置中使用绝对路径,然后完全退出并重新启动 Claude Desktop

spawn python ENOENT

将 command 指向 .venv 内的解释器

ModuleNotFoundError

运行 uv sync;确保配置使用 .venv 解释器

手动运行时服务器"挂起"

正常现象——它正在 stdio 上等待客户端

provider_not_configured 错误

设置 PRODUCT_DATA_API_KEY / PRODUCT_DATA_BASE_URL,或设置 DEMO_MODE=true

rate_limit_exceeded

等待提供程序的窗口重置;默认已启用缓存

所有内容都显示"Demo"

演示模式下属正常现象;设置 DEMO_MODE=false 并配置提供程序

数据库错误

检查 DATABASE_URL;工具在没有历史存储的情况下仍可正常工作

日志输出到 stderr。设置 DEBUG=true 或 LOG_LEVEL=DEBUG 以获取详细信息;在 Claude Desktop 中,使用 MCP 日志文件(Windows 上为 %APPDATA%\Claude\logs,macOS 上为 ~/Library/Logs/Claude)。


安全

此服务器的工作伴随三种风险,每种风险都有明确的控制措施。完整细节见 SECURITY.md;这些控制措施在 tests/test_security.py 中经过测试。

SSRF。 每个请求发出前都会检查协议、端口和解析后的 IP,并且每个重定向跳转都会重新验证——因此,列入白名单的主机无法将抓取重定向到回环地址、私有网段或云元数据端点。Playwright 请求也经过同样的检查。

凭据。 一个脱敏日志过滤器会从每条日志记录中清除 API 密钥、Bearer 令牌和包含机密的查询参数,包括 httpx 请求 URL 之类的库日志。任何工具输出都不会包含密钥。

提示注入。 抓取的商品列表、评论和搜索结果都是进入 LLM 上下文的第三方文本。每个字段都会经过净化(剥离控制字符、零宽字符和双向字符),扫描是否存在形似指令的内容,并随 content_safety 块一起返回。服务器的 MCP 指令告诉模型将其视为数据,而非指令。

此外还强制执行:8 MB 响应上限、5 跳重定向限制、经过验证的配置文件路径、参数化 SQL,以及确保堆栈跟踪不会到达 MCP 客户端。


安全说明

  • 凭据仅来自环境变量;.env 已被 gitignore 忽略,且没有任何硬编码内容。

  • 堆栈跟踪永远不会到达 MCP 客户端——错误在服务端记录,并以结构化、对用户安全的负载形式返回。

  • 数据库仅存储研究负载,不存储凭据。

  • 费用和市场数据是配置而非代码,因此无需更改代码即可修正。

  • 本项目不会抓取 Amazon,也不会绕过任何服务商的条款。


路线图

  • 支持请求签名的真实 SP-API 和 Product Advertising API 提供程序

  • 历史追踪:基于已存储研究的价格、BSR 和评分趋势

  • MCP 资源将保存的研究历史重新提供给 Claude

  • FBA 仓储和广告成本建模(考虑 ACOS 的盈亏平衡)

  • 品类级准入和认证(BIS / FSSAI)参考数据

  • 根据真实卖家销售数据校准 BSR 到销量曲线

  • 畅销榜挖掘,用于发现已被验证有需求的产品


贡献

欢迎贡献——参见 CONTRIBUTING.md。

最重要的规则:绝不编造数据,绝不让估算看起来像实测值。 人们会为这些输出投入真金白银,因此每个数值都带有其来源、数据类型和置信度。

目前特别有价值的工作:

  • 当 Amazon 更改其标记时修复选择器

  • 根据真实销售数据校准 BSR 到销量曲线

  • 面向印度卖家的 GST、品类合规和进口成本工具

  • 真实的 SP-API / Product Advertising API 提供程序

添加机器人防护绕过(代理轮换、指纹伪造、CAPTCHA 破解)的拉取请求将被拒绝——参见 docs/SCRAPING.md。

另请参见 CODE_OF_CONDUCT.md 和 SECURITY.md。


许可证

MIT——可自由使用、修改和分发,包括商业用途。本软件按现状提供,不附带任何担保。


免责声明

此工具辅助研究,而非替代研究。需求、销量和盈利数据是基于输入和已配置费用表的估算值——并非保证。请在 Seller Central 中核实费用,自行核实每个供应商,并在投资前与 Amazon 确认品类和品牌要求。

Available Tools

24 tools
analyze_competitionA

Analyse the Amazon India competitive landscape for a keyword: competition level, price and rating averages, review barrier, brand dominance, listing and image quality, weak listings, and bundle / differentiation / keyword opportunities.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes
marketplaceNoamazon.in
max_competitorsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes what the tool analyzes but does not mention whether it is read-only, data source, latency, or limitations. For an analysis tool, it is likely safe, but the description lacks explicit safety or operational context. It does not contradict annotations (since none exist) and adds functional detail, but not behavioral depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with a colon and a list. It front-loads the primary purpose and enumerates features concisely. While the list is long, it is efficient and each item earns its place. No fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is moderately complex with three parameters and an output schema. The description provides a solid overview of what is returned (the list of analyzed aspects), which complements the output schema. It lacks explicit notes on data source or limitations, but given the output schema exists and the description covers the core functionality, it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It clarifies 'keyword' (the focus) and implicitly 'marketplace' (Amazon India) from the domain, but does not describe 'max_competitors'. The description adds some meaning for two of three parameters but leaves one undocumented. It partially compensates for the low coverage but not fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Analyse', the resource 'Amazon India competitive landscape for a keyword', and enumerates specific outputs (competition level, price/rating averages, review barrier, brand dominance, listing/image quality, weak listings, opportunities). This is specific and distinguishes it from siblings like 'analyze_competitors', which is broader and does not mention Amazon India or keyword focus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: it is for analyzing a keyword's competitive landscape on Amazon India. However, it does not explicitly state when to use this tool over siblings like 'analyze_competitors' or 'find_product_opportunities', nor does it mention exclusions or prerequisites. The context is clear but lacks explicit routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_competitorsA

Profile every competitor for a keyword on Amazon India: estimated monthly units and revenue, market share, market size and concentration. Flags which competitors are NEW sellers (low review count - proof a newcomer can rank) and which clear a minimum monthly sales bar (300 units by default), then gives an entry verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes
marketplaceNoamazon.in
max_competitorsNo
min_monthly_unitsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description takes responsibility for explaining behavior. It reveals the heuristic for identifying NEW sellers (low review count), the default sales threshold (300 units), and the output of an entry verdict. It doesn't disclose side effects and has a minor default-value discrepancy, but it goes beyond a vague promise.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no fluff; the first sentence fronts the core action and key outputs, the second and third add necessary context about flags and the verdict. The description is dense but well-paced, though it could potentially be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with four parameters and an output schema, the description covers the key behaviors: what it profiles, the metrics, the flags, and the verdict. It omits explanation of `max_competitors` and has the default-value discrepancy, but the presence of an output schema reduces the burden. Overall, it's sufficiently complete for an agent to know when and how to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning to `min_monthly_units` by explaining what the threshold is and its default, and to `marketplace` by specifying Amazon India. However, it says nothing about `max_competitors` or `keyword` beyond what the schema provides. With 0% schema coverage, this partial compensation yields a mid-score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Describes a specific resource (competitors for a keyword on Amazon India) with active verbs like 'Profile', 'Flags', and 'gives'. However, it does not distinguish itself from the sibling 'analyze_competition', so it misses the top mark.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context for when to use this tool (competitor analysis for a keyword) but never mentions alternatives or exclusions. The usage is implied by the scenario, meeting the 'implied usage' bar.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_evergreenA

Decide whether a product has evergreen (year-round) demand or is seasonal / a fad, using up to 5 years of search interest. Returns an evergreen score 0-100, a verdict (Evergreen to Highly Seasonal), stability / flatness / demand-floor / growth components, and inventory guidance. Uses live Google Trends when enabled - free, no API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
geoNoIN
yearsNo5y
product_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description carries the full burden, and it mostly delivers: it discloses the data source (live Google Trends), the timeframe (up to 5 years), the dependence ('when enabled'), and enumerates the full output contract (score, verdict, four components, inventory guidance). The 'when enabled' caveat also honestly flags the fallback behavior. It loses a point for not disclosing failure modes (e.g., what happens when Google Trends is unavailable).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry a dense payload with no fluff. The core purpose and scope are front-loaded, followed by the return contract and tooling note. The 'stability / flatness / demand-floor / growth components' is mildly listy but efficient. Only minor trimming could be done; overall it respects the reader's attention.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is an output schema, the description is right not to belabor return values. It covers the key behavioral aspects: the decision being made, the data source, the lookback window, and cost/API implications. Missing elements like rate limits or guidance on which product names are valid, but the presence of an output schema plus the behavioral disclosure makes this largely adequate for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description must compensate, but it only implicitly documents the 'years' parameter via the phrase 'up to 5 years of search interest', which matches the default '5y'. The 'geo' parameter (defaulting to IN) and 'product_name' are never explained semantically, and no guidance is given on expected formats or constraints. The description gives partial credit to years but leaves the other two parameters to the agent's guesswork.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description leads with a specific verb ('Decide whether'), the resource (product demand type), and the distinguishing scope (5 years of search interest). It clearly differentiates this from the large sibling set by naming the exact output (evergreen vs. seasonal verdict), which is what sets it apart from other demand/buying analysts like analyze_product_demand or find_product_opportunities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by explaining the data source and the 'when enabled' dependency on Google Trends, and it signals that it's a free, key-less operation. However, it never explicitly states when to choose this tool over the 23 siblings (e.g., analyze_product_demand or find_product_opportunities), leaving the routing decision to the agent's inference. No exclusions or comparison conditions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_product_demandA

Estimate monthly demand, demand level, trend direction and seasonality for a product on Amazon India, and return a launch decision (Strong Opportunity to Avoid). Estimates are modelled, never measured Amazon sales data.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketplaceNoamazon.in
product_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that estimates are modelled and never measured Amazon sales data, which is a key behavioral trait. However, it does not state whether the operation is read-only, or any other side effects, rate limits, or authentication requirements. The description provides some transparency but lacks completeness given the absence of annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core outputs (demand, trend, seasonality, launch decision) and ends with a crucial caveat about data being modelled. There is no redundancy or fluff; every phrase contributes to understanding the tool's purpose and its limitations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main purpose and output, and hints at the input context (product, marketplace). However, it fails to provide details on parameter formats, whether the marketplace is optional, or how the launch decision is derived. Given the output schema exists (presumably detailing return structure), the description could be more complete about usage constraints but leaves significant gaps for an agent to call it correctly without further probing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It only implies product_name via 'for a product' and marketplace via 'on Amazon India', but never explicitly names or explains the parameters. It does not clarify default values or required fields. The description adds minimal value over the schema, leaving agents to infer parameter usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool estimates monthly demand, demand level, trend direction, and seasonality for a product on Amazon India, and returns a launch decision. It clearly identifies the verb 'estimate' and the resource, and distinguishes it from sibling tools like analyze_competition or analyze_reviews by focusing on demand and launch decision. The additional note that estimates are modelled, not measured, adds specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (for demand estimation and launch decisions) but does not explicitly contrast with alternatives or state when not to use it. There is no mention of prerequisites or when this tool is preferred over others like analyze_purchase_signals or find_product_opportunities. The usage context is only implicitly derived from the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_product_imagesA

Analyse product imagery on Amazon India. Pass an ASIN to pull one listing's full image gallery, or a product_name to survey image coverage across a search page. Returns image counts, thin galleries you can beat, Amazon's image requirements and a concrete seven-slot gallery plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinNo
marketplaceNoamazon.in
max_listingsNo
product_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the tool's behavior (pulls galleries, surveys coverage, returns counts and a plan) but doesn't mention potential side effects, rate limits, or data freshness. For a read-only analysis tool, this is acceptable but not rich. The description doesn't contradict any annotations since none exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no fluff. It front-loads the core purpose, then lists outputs and the concrete plan. Every sentence earns its place, and the structure is easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 4 parameters, 0 required, and an output schema exists. The description covers the main use cases and outputs, but doesn't detail the output schema structure or edge cases (e.g., what happens if both asin and product_name are provided). Given the output schema exists, the description doesn't need to explain return values, but a note on parameter precedence would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It explains the two key parameters (asin and product_name) and their roles, and implies the marketplace and max_listings parameters through context (Amazon India, search page). However, it doesn't explicitly describe marketplace or max_listings semantics, which is a minor gap given the 0% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: analyzing product imagery on Amazon India. It specifies two distinct modes of operation (by ASIN or by product_name) and lists the concrete outputs (image counts, thin galleries, requirements, gallery plan). This distinguishes it from sibling tools like analyze_competition or scrape_amazon_product, which focus on different aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each mode: pass an ASIN for a single listing's gallery, or a product_name for a search-page survey. It doesn't explicitly state when NOT to use this tool or name alternatives, but the clear mode distinction provides adequate usage context. The absence of explicit exclusions is a minor gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_purchase_signalsB

Aggregate Amazon India's 'X bought in past month' badges across a keyword: how many listings show one, total units, implied revenue, which listings clear a minimum monthly sales bar, and an overall demand verdict. The badge is Amazon's own published figure, making it the most reliable free sales signal available.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes
marketplaceNoamazon.in
max_listingsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It explains what it returns (aggregated badge data, revenue, verdict) but does not mention potential side effects, data freshness, or limitations beyond the badge being a reliable signal. It doesn't contradict anything, but it doesn't fully disclose all behavioral aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, fairly dense sentence that front-loads the action and lists outputs. It is concise but slightly wordy (e.g., 'making it the most reliable free sales signal available' could be trimmed). Overall, it is well-structured and not verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description lists the expected outputs (count, units, revenue, list of qualifying listings, verdict) and explains the badge's significance. It does not specify the output format or handle edge cases, but for a tool with this complexity, it covers the essential outputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no parameter descriptions). The description does not mention any of the parameters (keyword, marketplace, max_listings) or explain their meaning, defaults, or how they affect the output. This is a critical gap given the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: aggregating Amazon India's 'X bought in past month' badges across a keyword, and lists the specific outputs (count, total units, revenue, etc.). It distinguishes itself from siblings like analyze_product_demand or research_keywords by focusing on this specific badge-based signal.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly suggests it is for demand analysis via badges but does not explicitly mention when to use it over alternatives. It lacks direct comparison to sibling tools or conditions for when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_review_metricsB

Measure the review barrier for an Amazon India keyword: total, median, quartile and range of competitor review counts, rating spread, how many months it would take to match the median, which listings are beatable on reviews or rating, and how many are new sellers.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordYes
marketplaceNoamazon.in
max_listingsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It performs adequately by enumerating the computed outputs in detail. However, it omits operational attributes like data freshness, read-only safety, or any side effects of invoking the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient run-on sentence; zero fluff and every clause adds information about the tool's behavior. The main purpose is front-loaded with a colon introducing the metric list, though the long list of comma-separated items is slightly dense to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter analysis tool with an output schema, the description covers the core purpose and main input. However, it doesn't document max_listings, and with no annotations to convey safety hints, subtle gaps remain in what an agent needs to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description must compensate. It covers the keyword parameter via "for an Amazon India keyword" and the marketplace via implicit Amazon.in scoping. However, max_listings is completely unexplained — an agent would not know what it controls from the description alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb ("Measure") and resource ("review barrier for an Amazon India keyword") and details the exact outputs (median, quartiles, rating spread, months-to-match, beatable listings, new sellers). This distinguishes it from analyze_review and research_product, though not as explicitly as it could from the similarly-named analyze_competition/analyze_competitors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it — when an agent needs competitive review metrics for a keyword — but never explicitly states when to prefer it over the many siblings (analyze_competition, analyze_reviews, analyze_competitors). The broad metric list gives strong hints, yet no explicit routing or when-not-to-use guidance is present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_reviewsB

Analyse customer reviews for a product on Amazon India: most common complaints grouped by theme with mention counts, most appreciated features, quality / packaging / size / usability problems, defects, and recommended product improvements and differentiation.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketplaceNoamazon.in
max_reviewsNo
product_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of disclosure. It does go beyond the schema by describing the nature of the output: grouping complaints by theme, mention counts, recommended improvements. However, it doesn't disclose constraints like how many reviews are analyzed (though max_reviews is a parameter), what happens if the product has few reviews, whether the analysis is real-time or cached, or any rate limits or auth requirements. As an analysis tool it likely has no destructive side effects, but the description doesn't explicitly state that. It provides some behavioral context beyond the schema but misses potential operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that front-loads the primary purpose and then lists output components. It's efficient and stays under the ideal length, with no filler. The structure is cluttered with a long list of items (complaints, features, quality/packaging/size/usability problems, defects, improvements) but each item adds specificity. Could be slightly restructured for readability but overall concise and informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 3 parameters (one required) and an output schema exists, the description is partially complete. It fully describes the output categories, which is the tool's core value. However, it omits parameter guidance (highest gap) and does not clarify edge cases or limitations. Since the output schema exists, explaining return values is not required, but the lack of parameter semantics and usage context leaves the description incomplete for a correct invocation without further guesswork. A score of 3 indicates adequate but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are 3 parameters with no enum descriptions. The description adds no parameter-level detail. It doesn't explain what product_name should look like (e.g., exact product name as on Amazon, ASIN?), what marketplace values are valid (default amazon.in but not enumerated), or what max_reviews influence (it is intuitive but not stated). The description is entirely about the output, not the inputs. With 0% coverage, the description must compensate for the schema's silent parameters, and it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb-resource pair ('Analyse customer reviews for a product') and lists concrete output categories (complaints grouped by theme with counts, appreciated features, problems, defects, improvements). This distinguishes it from sibling tools like analyze_review_metrics (focused on metrics) and scrape_amazon_product (raw data retrieval). A slight deduction because it doesn't explicitly name a sibling alternative, but the purpose is specific and detailed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives. It implies a general use case for analyzing reviews but doesn't contrast with analyze_review_metrics, analyze_purchase_signals, or other related tools. No exclusions, prerequisites, or context about when this is the right choice vs. competitors is provided. The tool context suggests it fits a product research workflow, but the description alone leaves selection to the agent's inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_ppc_bidsB

Calculate Amazon Ads bids from unit economics: break-even ACOS (equal to your margin), target ACOS, break-even and target CPC, a bid ladder for exact / phrase / broad / auto match types, clicks needed per order, ad cost per order and profit after ads. Pass current_cpc to check whether a bid you are already running is profitable.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoHome & Kitchen
current_cpcNo
target_acosNo
product_costNo
selling_priceYes
conversion_rateNo
profit_per_unitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It implies a pure calculation via the verb 'Calculate' and mentions the current_cpc check, but it does not disclose whether the tool is read-only, calls external services, or has any side effects. There is no statement about reversibility or data persistence, which is expected for a calculation tool but still unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that front-loads the core purpose and lists all key outputs. Every phrase adds value—no fluff or redundancy. It is appropriately sized for the complexity and well-structured as a list of results.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema, the description is incomplete for correct invocation: it does not state that selling_price is required, nor explain the relationship between parameters (e.g., whether profit_per_unit substitutes for product_cost and conversion_rate), nor any validation logic. An agent would lack crucial guidance on how to properly fill in the 7 inputs, especially given the low schema coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage and 7 parameters, the description must explain parameter meaning, but it only touches current_cpc ('check whether a bid you are already running is profitable') and alludes to unit economics without mapping to specific parameters like selling_price, product_cost, conversion_rate, or profit_per_unit. The purpose of category is entirely unexplained. This leaves most parameters ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Calculate') and resource ('Amazon Ads bids'), and enumerates the exact outputs (break-even ACOS, target ACOS, break-even/target CPC, bid ladder for match types, clicks per order, ad cost per order, profit after ads). It clearly distinguishes from siblings like plan_ppc_campaign and suggest_ppc_keywords by focusing on numeric bid calculation from unit economics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when one has unit economics data and wants to compute bids, and adds a specific use case for current_cpc (checking profitability of an existing bid). However, it does not explicitly state when to use this tool vs. alternatives like plan_ppc_campaign, nor does it provide any exclusions or prerequisites beyond 'unit economics'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_profitabilityB

Calculate Amazon India per-order profitability: referral fee, closing fee, FBA / Easy Ship / Self Ship fulfilment cost, GST on fees, return reserve, total cost, profit, margin, ROI, break-even price and a recommended selling price, with a beginner-friendly explanation.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoHome & Kitchen
other_costsNo
product_costYes
weight_gramsNo
selling_priceYes
packaging_costNo
fulfillment_methodNoFBA
expected_return_rateNo
shipping_cost_overrideNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so the description must convey that this is a read-only calculation with no side effects. While 'calculate' implies a non-mutating operation, the description does not explicitly state that it makes no external calls or that it uses static fee tables. It does disclose the range of outputs and a beginner-friendly explanation, but it omits details like whether it requires network access or has rate limits, leaving some behavioral traits to inference.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that front-loads the core purpose and then enumerates outputs. It wastes no words and reads efficiently, though the long list makes it slightly heavy. It is appropriately sized for the tool's complexity, earning a high score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 9 parameters, no annotations, and no schema descriptions, the description must provide substantial context. It offers only an overview of computed results and fails to explain parameter purpose, calculation assumptions (e.g., Amazon India fee structures), or usage scenarios. An agent would lack sufficient guidance to correctly set inputs like fulfillment_method or expected_return_rate, making the tool underspecified for real-world invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds zero parameter-level detail. It lists output fields but never explains inputs like selling_price, product_cost, fulfillment_method, or shipping_cost_override. It does not clarify defaults, units, or relationships between parameters, forcing the agent to rely solely on the bare schema titles, which carry no semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the verb 'Calculate' and the resource 'Amazon India per-order profitability', listing a comprehensive set of computed outputs (referral fee, closing fee, fulfilment cost, GST, etc.). It distinguishes itself from siblings like calculate_revenue by focusing on profitability rather than revenue, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is provided on when to use this tool versus alternatives. It does not mention preferring this over calculate_revenue for detailed financial breakdowns or note any exclusions. The only implicit hint is the name, which is insufficient for an agent to decide between profitability and revenue calculators.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_revenueA

Estimate monthly and annual revenue for an Amazon India listing from units sold, a best-seller rank, or Amazon's 'X bought in past month' badge. Supply product_cost to also get monthly and annual profit. Returns a range plus the method used, never a single false-precision number.

ParametersJSON Schema
NameRequiredDescriptionDefault
bsrNo
priceYes
categoryNoHome & Kitchen
product_costNo
weight_gramsNo
units_per_monthNo
bought_past_monthNo
fulfillment_methodNoFBA

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that the tool returns a range and the method used, avoiding false precision, and mentions that profit is calculated only when product_cost is supplied. This is transparent about the output and the conditional behavior, though it does not mention any side effects, data sources, or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that clearly state the primary function, the optional profit extension, and the output format. It avoids unnecessary detail and is well-structured, with the main purpose stated first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides a good overview of the tool's functionality and output, enough for an agent to decide whether to invoke it. Since an output schema exists, it need not explain return values in detail, and it already mentions the output type. However, it lacks clarity on parameter usage (especially price) and does not fully differentiate from similar sibling tools, leaving some context gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description covers some parameters (units, BSR, bought past month, product_cost) but omits several others, most notably price (which is the only required parameter) and category, weight_grams, and fulfillment_method. It also uses the ambiguous term 'units' which could refer to either units_per_month or bought_past_month. Schema coverage is 0%, so the description must compensate, but it leaves significant gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: it estimates monthly and annual revenue for an Amazon India listing. It specifies the resource (Amazon India listing) and the action (estimate revenue), and distinguishes itself by mentioning the optional profit calculation with product_cost. It also clearly notes the output format, making it distinct from sibling tools like analyze_product_demand or calculate_profitability.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (when revenue or profit estimation is needed) and lists the input sources (units, BSR, bought past month). However, it does not explicitly contrast with similar sibling tools like calculate_profitability, and it lacks clear conditions or prerequisites. The guidance is adequate but not fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_product_opportunitiesA

Screen up to 15 product ideas at once against the beginner Amazon India criteria (₹199-₹699 price, under 500 g, 30%+ margin, non-seasonal, affordable first order) and rank them by opportunity score. Omit product_ideas to screen a built-in starter list. Use this to shortlist, then run research_product on the winners.

ParametersJSON Schema
NameRequiredDescriptionDefault
min_marginNo
marketplaceNoamazon.in
product_ideasNo
max_investmentNo
max_weight_gramsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does disclose useful traits: the 15-idea cap, the built-in starter list fallback, and the ranking-by-score behavior. However, it doesn't state whether this makes external API calls, whether results are cached/free, or what happens with more than 15 ideas (implied truncation only). It's a legitimate read-style operation on the surface, but the description leaves side-effect and limit details to inference.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero waste: purpose and criteria front-loaded in sentence one, the optional-input behavior in sentence two, and the follow-up routing in sentence three. Every clause earns its place; nothing is redundant or sprawling.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description needn't explain return values, and it correctly omits them. It fully covers the screening criteria, the optional input behavior, and the recommended follow-up. The only minor gap is the unspecified handling of inputs exceeding 15 ideas or empty/invalid idea lists, which would be useful edge-case context for a tool with zero required parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it largely does: the criteria map to parameters (30%+ margin ↔ min_margin, under 500 g ↔ max_weight_grams, affordable first order ↔ max_investment, omit product_ideas ↔ built-in list). It doesn't explicitly restate marketplace or each parameter name, but the conceptual mapping is clear enough for an agent to set sensible overrides. High value added over an empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Screen') with a quantified resource ('up to 15 product ideas') and exact criteria (₹199-₹699 price, under 500 g, 30%+ margin, non-seasonal, affordable first order), then states it 'rank[s] them by opportunity score.' It clearly distinguishes itself from the sibling research_product by presenting itself as the shortlisting step, so an agent can tell them apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly names the when-to-use context ('Use this to shortlist') and the alternative next step ('then run research_product on the winners'). It also includes the conditional behavior for product_ideas ('Omit product_ideas to screen a built-in starter list'), so an agent knows exactly when and how to invoke it versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_listingA

Generate an Amazon India listing: SEO title plus alternatives, five benefit-led bullet points, product description, backend search terms, keyword placement strategy, main / lifestyle / infographic / comparison image direction, packaging advice and a compliance checklist.

ParametersJSON Schema
NameRequiredDescriptionDefault
featuresYes
product_nameYes
target_marketNoIndia
target_keywordsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden. It discloses the output comprehensively (title, bullets, etc.) but does not mention the operation's side effects (e.g., no writes, but no explicit read-only claim). It does not mention any limitations, such as dependency on input quality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that covers the full scope without fluff. It is slightly long but front-loads the verb and resource, and each phrase contributes to the listing components.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (4 params with 0% schema coverage) and the rich output schema, the description covers the output structure well, but does not specify input requirements (e.g., what constitutes a valid 'features' array) or how parameters influence the output. Still, the provided coverage is sufficient for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description explains the overall purpose. It does not detail how each parameter maps to the output (e.g., target_keywords and target_market) beyond the general purpose. Given zero coverage, a baseline of 3 is appropriate, but it could be higher if it explicitly clarified how target_market affects the listing or how features are used.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'generate' and a clear resource 'an Amazon India listing', listing the exact components (SEO title, bullets, etc.). It clearly distinguishes this from other tools like research_product or analyze_competition.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for creating a full listing but does not specify when to use it versus alternatives, nor mention any prerequisites (e.g., has product research been done). It does not provide explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_ppc_campaignA

Build a complete Sponsored Products plan for a product on Amazon India: a three-campaign structure (Auto discovery, Manual Exact core, Phrase/Broad expansion) with the budget split across them, default bids per campaign, keyword assignments, negative keywords, projected clicks / orders / ad sales, a weekly optimisation routine, and warnings when the margin cannot support advertising.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoHome & Kitchen
target_acosNo
launch_phaseNo
product_costYes
product_nameYes
selling_priceYes
conversion_rateNo
monthly_ad_budgetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It does reveal an important behavior: 'warnings when the margin cannot support advertising,' which hints at validation logic. However, it does not mention prerequisites (e.g., product research data), potential side effects (e.g., long-running computation), or handling of invalid inputs (e.g., negative selling price). Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense sentence that packs in a large amount of crucial detail without filler. It front-loads the core purpose and then lists the plan's contents efficiently. A slightly more structured format (e.g., breaking out the list) could improve skimmability, but the sentence remains clear and earns its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (8 parameters) and the existence of an output schema, the description adequately covers the plan's scope but misses input constraints and any preconditions. It does not mention that costs/prices are in INR or that certain parameters have dependencies. An output schema may cover return structure, but parameter semantics and preconditions are not addressed in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must clarify parameter meaning, but it does not. While parameter names like product_name and selling_price are self-explanatory, ambiguous ones like target_acos, conversion_rate (decimal or percentage?), and launch_phase (what behavior changes?) remain undefined. The description lists plan components but fails to map them to the input fields, leaving agents to guess units and formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear, specific action: 'Build a complete Sponsored Products plan for a product on Amazon India' and enumerates the plan's components (three-campaign structure, budget split, bids, keywords, projections, optimization routine, warnings). This differentiates it from sibling tools like calculate_ppc_bids (bids only) and suggest_ppc_keywords (keywords only) by covering the full planning scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when a comprehensive Amazon India Sponsored Products plan is needed, listing many deliverables. However, it never explicitly contrasts with related tools (e.g., calculate_ppc_bids, suggest_ppc_keywords) or states when not to use it, such as when only one component is required. Clear context is present, but exclusions and alternatives are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_product_launchA

Turn a product decision into a launch plan for Amazon India: how many units to order, how to split the budget across inventory, samples, photography, ads and buffer, days of stock cover, reorder trigger, affordable ad cost per order, months to recover the budget, a week-by-week timeline, and warnings before you commit cash.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoHome & Kitchen
product_costYes
product_nameYes
total_budgetNo
weight_gramsNo
selling_priceYes
packaging_costNo
fulfillment_methodNoFBA
expected_daily_salesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that the tool produces warnings before committing cash, indicating risk-aware behavior, and implies a calculation model (units, budget splits, timeline). It does not state assumptions or edge cases (e.g., what happens with invalid inputs), but it does signal the non-trivial nature of the planning calculation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single long sentence but well-structured, front-loading the purpose and then listing outputs. It is dense but not bloated. It could be broken into two sentences for readability, but it earns its place with specific outputs. No fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (9 params, multiple calculations) and absence of annotations, the description already conveys comprehensive outputs. The presence of an output schema likely details the return structure, so not describing return fields is acceptable. Missing specifics on parameter defaults and how they influence the plan, but overall the agent can infer the intent. A 4 is justified because it covers the essential 'what' and 'why', though it leaves parameter interactions to the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and there are 9 parameters. The description does not detail any specific parameter except implicitly through the output list (e.g., it mentions 'budget', 'units', etc. as outputs, not as inputs). It does not explain how inputs like category or fulfillment_method affect the calculation, or defaults like total_budget=20000. The description adds context on what the tool produces overall, but it does not compensate for the complete lack of per-parameter documentation. Baseline is 3 since no param info is given, but the schema covers names/types. Given 0% coverage in the schema, the description should have added at least one or two parameter clarifications, so 3 is fair.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('plan') plus resource ('product launch'), and enumerates the concrete outputs: order quantity, budget split, days of cover, reorder trigger, ad cost, payback months, timeline, and warnings. This fully distinguishes it from siblings like calculate_profitability or plan_ppc_campaign. No ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage before committing cash to a launch, and lists the inputs a user must provide (product decision, pricing, cost). It does not explicitly name alternatives or when NOT to use it, but the context is clear enough. It could mention that financial/planning tools like calculate_profitability are complementary rather than substitutes, but that's not required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

research_keywordsA

Research Amazon India keywords for a product: primary, secondary, long-tail and related keywords, search intent, keyword priority, backend search terms, and where to place each keyword across title, bullets, description and backend fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketplaceNoamazon.in
product_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral disclosure burden. It does well by stating not just the output categories but also the guidance aspect ('where to place each keyword across title, bullets, description, and backend fields'). 'Research' implies a non-mutating action, though it does not explicitly state side-effect behavior or data-source constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with no wasted words. It front-loads the core action and then packs the entire deliverable scope into a compact, readable enumeration. Redundancy is zero.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a keyword-research tool with no annotations and an output schema, the description covers the key outputs and even the placement guidance. It is slightly incomplete because it never identifies the obvious alternative context (organic listing keyword research vs. PPC keyword suggestions) or notes how the marketplace parameter affects the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, but with only two simple parameters this is a minor risk. The description orients product_name toward the product being researched and the marketplace implicitly through 'Amazon India,' but it does not add syntax, examples, or clarify how marketplace can change the regional scope.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Research'), a clear resource ('Amazon India keywords for a product'), and then enumerates the deliverables. The list of output types separates it from PPC-focused siblings like suggest_ppc_keywords or broader tools like research_product.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies the tool is for product-level keyword research on Amazon India and that the results inform listing content placement. However, it does not explicitly say when to choose this tool over suggest_ppc_keywords, plan_ppc_campaign, or other keyword-adjacent siblings, nor does it state any exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

research_productA

Research an Amazon India product idea: category, price band, BSR, weight, rating, demand, competition, return/gating/brand risk, beginner fit and an overall 0-100 opportunity score. Every figure is labelled Live, Estimated, Historical or Demo.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketplaceNoamazon.in
product_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the transparency burden. It states the tool 'researches' and lists outputs, but does not explicitly mention whether it is read-only, any external calls, or potential side effects. Since it's called 'research', it's likely non-destructive, but this is not stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly packed sentence that lists all relevant aspects without fluff or repetition. It is well-structured and immediately conveys the tool's purpose, making it efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides a good overview of the tool's outputs, including the opportunity score and the listed data points. While it does not detail the exact output format or caveats like data freshness, the absence of an explicit output schema makes this sufficient for an agent to understand what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no parameter descriptions, so the tool description is the sole source. It mentions 'Amazon India' implying the marketplace default, and 'product idea' implies the product_name. However, it does not explicitly explain the parameters, their formats, or whether marketplace can be changed to other regions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb (Research) and resource (Amazon India product idea), and enumerates the aspects covered (category, price, BSR, etc.). It distinguishes from sibling tools by being a holistic research tool rather than a focused analysis (e.g., analyze_product_demand).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for a comprehensive product research but does not explicitly state when to prefer this tool over individual analysis tools. It could benefit from a note like 'Use this when you need an overall opportunity assessment' to guide selection among many siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scrape_amazon_productB

Scrape one live Amazon India product page by ASIN: title, brand, price, rating, review count, best-seller ranks, weight, seller, bullet points, full image gallery and the 'bought in past month' badge, plus a sales and revenue estimate derived from them.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYes
renderNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility for disclosing behavioral traits. It does mention the tool scrapes a 'live' page, implying a network dependency and real-time data, and notes a derived sales/revenue estimate, which adds some context. However, it does not disclose potential failure modes (e.g., invalid ASIN, page not found, changes in Amazon's layout), rate limits, costs, or execution time. For a web scraping tool, this is a significant gap in behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, efficient and dense with useful information. The core action (scrape by ASIN) is front-loaded, followed by an enumeration of the data points. It is a bit long with many comma-separated items, but every word adds value. It avoids fluff and clearly prioritizes the essential information. Slightly over-packed, but acceptable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and the fact that an output schema exists (which defines the return structure), the description covers the main purpose and data points well. However, it misses important context: it does not explain the purpose of the 'render' parameter, does not mention prerequisites (e.g., valid Amazon India ASIN, region restrictions), and does not clarify how the sales/revenue estimate is derived. While the output schema handles return types, these gaps reduce completeness for an agent deciding to use the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the description must explain parameters. It clearly explains that 'asin' is the Amazon product identifier and scopes it to India, but it completely omits the 'render' parameter. The description does not mention what 'render' does (e.g., whether it enables JavaScript rendering for dynamic content). This leaves one of two parameters undefined, requiring the agent to guess or rely on the parameter name alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('scrape'), a specific resource ('one live Amazon India product page by ASIN'), and enumerates the exact data points returned (title, brand, price, rating, etc.). It distinguishes itself from sibling tools like scrape_amazon_search (which scrapes search results) and scrape_listing_details by focusing on a single product page and adding a sales/revenue estimate. No ambiguity remains about what this tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: it is for scraping a single product page by ASIN, useful when detailed product data is needed for one specific product. However, it does not explicitly state when to choose this tool over alternatives like research_product or analyze_product_demand, nor does it mention when not to use it. There is no exclusions or comparison to siblings, so an agent must infer the appropriate context from the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scrape_listing_detailsA

Scrape a complete Amazon India listing by ASIN: title, all images, bullet points, description, A+ content, video, specifications table, category path, variations, badges, coupon, seller, delivery, BSR and price/discount. Then grades the listing 0-100 against Amazon best practice and tells you exactly how to beat it.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYes
renderNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral disclosure burden. It clearly states the tool scrapes and grades the listing, which is a good start, but it does not disclose potential rate limits, anti-bot risks, the need for the 'render' flag to handle dynamic content, or any side effects like delays. This leaves meaningful behavioral gaps for a scraping tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, information-dense sentence that front-loads the core action and then enumerates data points. While long, every item adds value for an agent deciding whether to call it, and the grading promise is a strong differentiator. A more structured format (e.g., bullets) would improve maintainability, but the current prose is efficient and not redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and the presence of an output schema (which covers return values), the description is largely complete in listing what data is scraped and the grading output. However, it omits any practical caveats such as the need for rendering, error handling for invalid ASINs, or rate-limit expectations. Overall, it is close to sufficient for a scraping tool but lacks some operational warnings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explicitly mentions 'by ASIN', which clarifies the 'asin' parameter, but it completely omits any explanation of the 'render' parameter. With 0% schema description coverage, the description must name and explain both parameters; it only covers one, so the agent cannot know the purpose or effect of 'render' without external context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('scrape') and resource ('complete Amazon India listing by ASIN'), enumerating many distinct data points (title, images, bullets, A+ content, etc.), and pairs it with a unique grading feature that sets it apart from sibling tools like scrape_amazon_product or scrape_amazon_search. The additional promise to 'tell you exactly how to beat it' clearly distinguishes its purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (when you need a comprehensive listing analysis and grading), but it does not explicitly contrast with alternatives, mention when not to use it, or state any prerequisites (e.g., ASIN validity, country-specific access). No exclusions or routing guidance to siblings is provided, so the agent must infer context from the purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scraper_statusA

Check how the scraping and data layers are configured: browser enabled, allowlisted domains, robots.txt enforcement, crawl delay, page budget, Playwright availability, search provider, Google Trends status, and anything blocking a live scrape.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses what aspects it checks, but it doesn't mention side effects (likely none), performance, or how it gets the status. It does not contradict annotations (none provided). It provides a reasonable overview but lacks detail beyond the listed checks.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence but quite long, listing many checks. It's informative but could be structured better (e.g., separate the blocking factors). It's reasonably concise for the amount of information, and front-loads 'Check how the scraping and data layers are configured'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and the output schema existing (not shown but mentioned), the description explains what the tool checks and mentions 'anything blocking a live scrape' which is the likely use case. It seems complete enough for an agent to know when to invoke it, though it could explicitly state that it returns a status report.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is nothing to document. The description fully compensates by explaining what the tool reports, which is the main value. Baseline for zero parameters is 4, and the description provides ample context on what the status includes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool does: checks the configuration of scraping and data layers, listing specific aspects like browser enabled, allowlisted domains, robots.txt enforcement, etc. It distinguishes itself from sibling scraping tools by focusing on status/config rather than executing a scrape.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies usage for diagnosing why a live scrape might fail or to check configuration, but it doesn't explicitly state when to use this vs. other scraping tools. However, the sibling list includes scraping tools, and this tool's focus on status suggests a pre-flight check, but guidance is not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_suppliersA

Research sourcing for a product in India (Parrys, Chennai, Tamil Nadu or nationwide). Returns supplier records only when a supplier data API is configured; otherwise returns real, publicly known wholesale markets, manufacturing clusters and B2B directories plus a verification checklist. Supplier names, prices and MOQs are never invented.

ParametersJSON Schema
NameRequiredDescriptionDefault
locationNoIndia
product_nameYes
supplier_typeNoany

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full transparency burden, and it does so well. It reveals the conditional behavior depending on whether a supplier data API is configured, the fallback output (real public markets, manufacturing clusters, B2B directories, verification checklist), and explicitly states that supplier names, prices, and MOQs are never invented. This is valuable behavioral context beyond any structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the core purpose and scope. The second sentence adds necessary behavioral detail about fallback behavior and anti-hallucination guarantees without being verbose. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose, geographic scope, conditional behavior, and data-integrity policy, which is strong for a research/search tool. An output schema exists, so return structure is covered. The main missing piece is explicit guidance on when to prefer this tool over sibling research/search tools, but overall the description is sufficiently complete for a competent agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, and the description does not directly explain each parameter. However, the parameter names are self-explanatory, and the description adds meaningful context for 'location' by naming Parrys, Chennai, Tamil Nadu, and nationwide. It does not elaborate on 'supplier_type', but the default of 'any' and the tool's purpose make this gap understandable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Research sourcing') and a specific resource ('suppliers for a product in India'), with geographic scope (Parrys, Chennai, Tamil Nadu or nationwide). This is distinct from the sibling research/analysis tools, which focus on demand, competition, profitability, or listings rather than supplier sourcing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use case is clear: use this tool when researching sourcing and suppliers for a product in India. It does not explicitly name alternatives or state when not to use it, but the context alone is enough for an agent to distinguish it from the product-research and competition-analysis siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_webA

Search the web for product, competitor, price and supplier research. Uses DuckDuckGo by default (free, no API key); Brave, Serper, Tavily and Google Programmable Search are supported when a key is configured. Returns live web results, not Amazon data.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
regionNoin-en
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the default provider (DuckDuckGo), free usage without API key, and that it returns live web results as opposed to Amazon data. This gives the agent critical behavioral knowledge about data source and limitations that are not apparent from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, all informative. It front-loads the core purpose, then provides provider details and ends with a key distinction. No wasted words or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A search tool with a simple schema and an output schema present. The description covers the main context: purpose, providers, and what it returns. Given the simplicity, it is reasonably complete, though it could add more on how to select providers or handle errors, but these are minor gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must add meaning to the parameters. The description mentions the query scope (product, competitor, price, supplier) and providers, which gives context to the 'query' parameter. However, it does not explain the 'region' parameter (e.g., format 'in-en' or how it affects results) or 'max_results' beyond the default. The description adds some value but does not fully compensate for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search the web for product, competitor, price and supplier research.' It lists the specific domains it covers. It does not explicitly differentiate from siblings like 'search_suppliers' or 'research_product', but it clarifies it returns 'live web results, not Amazon data', which helps distinguish it from Amazon-scraping tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context on when to use it: for web research on products, competitors, prices, and suppliers. It notes it uses DuckDuckGo by default and supports other providers, which implies usage when a provider key is configured, but it doesn't explicitly state when to use an alternative tool or what specific conditions would make another tool more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suggest_ppc_keywordsA

Suggest Amazon Ads (Sponsored Products) keywords for a product: each with a recommended match type (exact / phrase / broad), a suggested bid and bid range derived from your unit profit, priority, and which campaign it belongs in. Harvests terms from competitor titles, and returns negative keywords plus the break-even CPC you must never bid past.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoHome & Kitchen
target_acosNo
product_costNo
product_nameYes
selling_priceYes
conversion_rateNo
profit_per_unitNo
include_competitor_termsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility for revealing behavior. It reveals several non-obvious traits: terms are harvested from competitor titles, bids are derived from unit profit, and a break-even CPC is returned as a hard ceiling. It does not mention the full calculation factors or what happens when optional financial fields are omitted, but the core behavioral contract is well covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and information-dense, packed with exactly what matters: match type, bid range, priority, campaign, competitor sourcing, negative keywords, and break-even stake. There is no filler, repetition, or vague phrasing, and the most essential output is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description gives a strong overview and acknowledges important constraints, and an output schema exists to define return structure. However, with eight parameters and 0% schema coverage, leaving the financial-injection model implicit creates a real gap. An agent can likely make a correct basic call, but edge cases around ACoS, cost, conversion, and profitability inputs are not sufficiently contextualized.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides no parameter-level descriptions, so the description must compensate. It references profit-related input via 'derived from your unit profit' and competitor terms via 'harvests terms from competitor titles', but it does not explain category, target_acos, product_cost, conversion_rate, or how selling_price is used. Several important optional parameters are left undefined despite being central to bid calculation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a highly specific outcome: Sponsored Products keyword suggestions with match type, bid/bid range, priority, campaign placement, negative keywords, and break-even CPC. This clearly separates it from sibling tools like calculate_ppc_bids and plan_ppc_campaign. It also scopes the tool to Amazon Ads, making the resource unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly describes the context of use—generating a full PPC keyword plan for a specific product, including competitor harvesting and campaign placement. It does not explicitly route the agent away from alternative tools like calculate_ppc_bids or plan_ppc_campaign, so it stops short of a 5. But the tool's purpose is clear enough that an agent can decide when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 24 tool updatesv0.2.1
    • First observedanalyze_competition
    • First observedanalyze_competitors
    • First observedanalyze_evergreen
    • First observedanalyze_product_demand
    • First observedanalyze_product_images
    • First observedanalyze_purchase_signals
    • First observedanalyze_review_metrics
    • First observedanalyze_reviews
    • First observedcalculate_ppc_bids
    • First observedcalculate_profitability
    • First observedcalculate_revenue
    • First observedfind_product_opportunities
    • First observedgenerate_listing
    • First observedplan_ppc_campaign
    • First observedplan_product_launch
    • First observedresearch_keywords
    • First observedresearch_product
    • First observedscrape_amazon_product
    • First observedscrape_amazon_search
    • First observedscrape_listing_details
    • First observedscraper_status
    • First observedsearch_suppliers
    • First observedsearch_web
    • First observedsuggest_ppc_keywords

TDQS

A3.7/5.0

Scored across 24 tools

Disambiguation3/5

Several tools have overlapping responsibilities, such as analyze_competition vs analyze_competitors vs analyze_review_metrics, and scrape_amazon_product vs scrape_listing_details. However, detailed descriptions clarify their distinct focuses, reducing but not eliminating ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with lowercase and underscores (e.g., analyze_product_demand, calculate_profitability, scrape_amazon_search). Minor plural/singular variants like analyze_competition vs analyze_competitors do not break the overall predictable scheme.

Tool Count4/5

With 24 tools, the server is comprehensive but slightly heavy. Each tool addresses a distinct aspect of product research, and the count is justified by the breadth of the domain, though it approaches the upper boundary of ideal scope.

Completeness5/5

The server covers the full product research lifecycle: demand analysis, competition, profitability, keyword research, listing creation, PPC planning, scraping, review analysis, and launch planning. It also includes a health check (scraper_status) and no critical gaps are evident for its stated purpose.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Hosted Amazon market-intelligence MCP for Claude and ChatGPT: query brands, sellers, ASINs, under-competed niches, the cross-seller operator network, observed buy-box history, and Amazon/Walmart cross-marketplace overlap. 65 read-only research tools over a pre-collected research dataset.
    72
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    Connects Claude to your Amazon Seller Central account via the Selling Partner API, enabling queries for recent orders, sales summaries, FBA inventory, and financial events.
    4
    -