Amazon.in MCP Server
Allows searching products, reading order history, and analyzing order trends on Amazon.in using a persistent browser session.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Amazon.in MCP Serversearch for wireless mouse under 1000"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
amazon-in-mcp
A stdio MCP server for Amazon.in that drives a single, persistent, logged-in Playwright/Chromium session. It lets an MCP client (Claude Code, Claude Desktop, etc.) search products, read your orders, and analyze your order trends.
⚠️ Personal-use tool, unofficial. Not affiliated with, endorsed by, or associated with Amazon. It automates your own logged-in Amazon account via a browser — there is no official consumer API for order history, so it reads the same pages you see. Heavy automation can trip CAPTCHAs and brushes against Amazon's Terms of Service. Use it privately and responsibly; you are responsible for your own account and how you use it.
Tools
Tool | Auth needed | What it returns |
| – | Opens a visible window at the Amazon.in sign-in page and holds it open so you can sign in by hand — no terminal needed |
| – | Confirms sign-in, closes the window, returns to headless |
| – | Whether you're signed in / walled by CAPTCHA |
| – | Current mode (headless/headed), whether a browser is open, idle timeout, profile dir |
| – | Switch headless ↔ headed at runtime (relaunches on next call; login preserved) |
| no | title, price ₹, rating, ASIN, URL |
| yes | order id, date, total, item titles (paginated) |
| yes | readable detail of one order |
| yes | total spend, avg order value, spend by month, top repeated items, biggest orders |
Related MCP server: mcp-amazon
Install as a Claude Desktop extension (MCPB) — easiest
A prebuilt MCPB bundle (.mcpb) is attached to each
GitHub Release.
This is the one-click path for Claude Desktop — no cloning or building.
Download
amazon-in-marketplace-mcp.mcpbfrom the latest release.Install it: open Claude Desktop → Settings → Extensions → drag the
.mcpbfile in (or double-click the file). Review the tools it exposes and click Install.Configure (optional) in the extension's settings pane:
Run headless — on by default (no window). Turn off if order pages start showing CAPTCHAs.
Idle auto-close (ms) — how long the browser lingers before closing itself (default 45000;
0= never).
Sign in — no terminal needed. Just ask Claude to run the
logintool. A Chrome window opens at the Amazon.in sign-in page and stays open; sign in by hand (including OTP/CAPTCHA). When you see "Hello, <name>", ask Claude to runfinish_login— it confirms, closes the window, and goes back to headless. Your session is saved to~/.amazon-in-mcp/profileand reused on every later call.Chromium requirement. The bundle ships the server + Node deps but not the Chromium binary (Playwright keeps that in a shared cache). If the
logintool errors that a browser is missing, run once in a terminal:npx playwright install chromium
To build the .mcpb yourself: npm run build && npx @anthropic-ai/mcpb pack .
Install from Git
Clone the repo and build from source (there is no npm-registry package — install straight from Git):
# 1. Clone
git clone git@github.com:kausikram/amazon-in-marketplace-mcp.git
cd amazon-in-marketplace-mcp
# 2. Install deps (postinstall also downloads the Chromium browser binary)
npm install
# 3. Build the TypeScript
npm run build
# 4. Build only — no CLI login step needed. Sign in later from your MCP client
# by asking Claude to run the `login` tool (opens a window), then
# `finish_login`. (A CLI fallback still exists: `npm run login`.)You can also install a specific commit or branch by cloning that ref, e.g.
git clone -b main git@github.com:kausikram/amazon-in-marketplace-mcp.git.
After npm run build, the runnable entry
point is dist/index.js — that's the path you register with your MCP client
(see Register below).
Requires Node 18+ and enough disk for the Chromium download (~150 MB).
Setup
cd amazon-in-mcp
npm install # also runs `playwright install chromium`
npm run buildSigning in: you don't need the command line. Once the server is registered
with your MCP client, ask Claude to run the login tool — a Chrome window
opens at the sign-in page; sign in by hand, then run finish_login. The
session is stored in a persistent profile at ~/.amazon-in-mcp/profile
(override with AMAZON_MCP_PROFILE_DIR) and reused, so you sign in just once.
CLI fallback:
npm run logindoes the same thing from a terminal if you prefer.
Environment variables
Var | Default | Meaning |
|
| Chrome profile dir (holds your session) |
|
| Set |
|
| Idle ms before the browser auto-closes. |
Register with Claude Code
Add to your .mcp.json (or claude mcp add):
{
"mcpServers": {
"amazon-in": {
"command": "node",
"args": ["/Users/kausikram/MCP_Servers/amazon-in-mcp/dist/index.js"],
"env": {
"AMAZON_MCP_HEADLESS": "0"
}
}
}
}Then, in a chat: "search amazon for a 100W usb-c charger", "list my orders from the last 3 months", "analyze my 2024 amazon spending."
How it works / where to fix things
src/browser.ts— the single persistent Chromium context (profile reuse, stealth touches).src/auth.ts— sign-in / CAPTCHA detection; every order tool guards on it.src/parse.ts— all fragile DOM selectors live here. When Amazon changes markup, fix this one file.src/tools/*— the five tools.src/index.ts— MCP wiring over stdio.
Known limitations
Order-history has no API; scraping breaks when Amazon changes HTML — update
parse.ts.CAPTCHA/OTP require a manual
npm run loginagain.Trend analysis derives from the order-list view (dates, totals, item titles), not deep per-item category data. Extend
get_order+trends.tsfor category-level analysis.
License
Released into the public domain under The Unlicense — the most
lenient option available. Do anything you like with it: copy, modify, sell,
redistribute, no attribution required, no warranty. See LICENSE.
Available Tools
9 toolsanalyze_order_trendsAnalyze Amazon.in order trendsA
Pull a window of orders and compute spend trends: total spend, average order value, spend by month, most-repeated items, and biggest orders.
| Name | Required | Description | Default |
|---|---|---|---|
| maxOrders | No | Default 100 | |
| timeFilter | No | Time window, e.g. 'year-2024' or 'months-6'. Default 'year-2024'. |
TDQS
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 computes spend trends and lists output metrics, but does not specify whether the operation is read-only, requires authentication, or has any side effects. No rate limits or data freshness info.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the purpose and lists computed outputs. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description covers what it returns and how to scope orders, but lacks information on prerequisites (e.g., login requirement), error scenarios, or how to interpret the results. Adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds minimal value: it restates the defaults already in the schema. The description does not elaborate on parameter interactions or format requirements beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Pull... and compute') and resource ('orders'), and lists distinct outputs (total spend, avg order value, etc.). It clearly distinguishes from sibling tools like 'list_orders' or 'get_order' by focusing on trend analysis, not just retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for analyzing trends over a window of orders, but does not explicitly state when to use this tool over alternatives like 'list_orders' or 'get_order'. No when-not or prerequisite information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
finish_loginConfirm login & close the windowA
Verifies you're signed in after using the login tool, then closes the visible window and returns to headless mode. Pass keepHeaded=true to keep the browser visible for this session.
| Name | Required | Description | Default |
|---|---|---|---|
| keepHeaded | No | Stay in headed (visible) mode instead of returning to headless. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description covers main behavior (verify, close, return to headless) and parameter effect. Lacks details on what happens on failure (e.g., not signed in) or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states primary action with sibling link, second explains optional parameter. No fluff, perfectly front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with 1 param and no output schema. Description covers purpose, usage context, and parameter. Could mention error handling or prerequisites, but adequate for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (keepHeaded) with schema coverage 100%. Description essentially repeats schema's description. Adds minimal new meaning beyond structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: verifies sign-in after using login, closes window, returns to headless. It explicitly names the sibling tool 'login', distinguishing purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Specifies 'after using the login tool', giving clear usage context. Also explains parameter option (keepHeaded=true). Does not explicitly exclude other scenarios but the context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_browser_stateGet browser mode & stateA
Report the current browser configuration: whether it's running headless or headed, whether a browser is currently open, the idle auto-close timeout, and the profile directory.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. It describes what is reported but omits behavioral traits like read-only nature, authentication requirements, or side effects. Agent cannot infer safety profile without explicit statements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence listing four output items is concise and front-loaded. Could be slightly improved with structured formatting (e.g., bullet list), but no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description adequately names returned data but lacks detail on types, possible values, or guarantees of field presence. Adequate for a simple info tool but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has zero parameters with 100% schema coverage (empty schema). Baseline 4 applies. Description adds value by explaining the output fields (mode, state, timeout, directory), compensating for lack of output schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies that the tool reports current browser configuration details (headless/headed, open state, idle timeout, profile directory). It distinguishes itself from sibling tools like set_browser_mode (mutation) and login_status (auth-related).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking browser state before operations, but lacks explicit guidance on when to use this tool versus alternatives (e.g., login_status or set_browser_mode). No exclusions or prerequisites stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_orderGet one Amazon.in order's detailsA
Open a single order's detail page by order id (format 123-1234567-1234567) and return its readable contents: items, prices, shipping and payment summary.
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | Order id, e.g. 402-1234567-1234567 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It states the tool 'opens' a page and returns contents, indicating a read operation, but does not disclose potential side effects, authentication requirements, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences without extraneous words, efficiently conveying the tool's purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description fully covers the objective, parameter format, and return contents, making it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the single parameter with an example. The description reinforces the format, adding slight value. With 100% schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves details of a single Amazon.in order by order ID, listing the specific contents returned (items, prices, shipping, payment summary). It distinguishes from sibling tools like list_orders and analyze_order_trends.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a specific order's details are needed and provides the order ID format. However, it does not explicitly mention when not to use this tool or any prerequisites, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ordersList my Amazon.in ordersA
List your recent Amazon.in orders (requires a signed-in session). Returns order id, date, total, and item titles. Paginates automatically up to maxOrders.
| Name | Required | Description | Default |
|---|---|---|---|
| maxOrders | No | Default 30 | |
| timeFilter | No | Amazon time filter: 'last30', 'months-3', 'months-6', or 'year-2024'. Default 'months-6'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses authentication requirements and automatic pagination up to maxOrders. It could add details on error behavior when not signed in, but overall it provides good behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, then return fields and key behavior (pagination). Every word earns its place; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with two optional parameters and no output schema, the description covers purpose, return fields, authentication, and pagination. Default values (maxOrders=30, timeFilter='months-6') are in the schema but not mentioned in the description; still, completeness is high given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning for maxOrders ('paginates automatically up to maxOrders') but does not add new context for timeFilter beyond what the schema provides. Acceptable but not exceptional.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and clearly identifies the resource 'your recent Amazon.in orders'. It distinguishes from sibling tools like 'get_order' (single order) and 'analyze_order_trends' (analysis), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the prerequisite 'requires a signed-in session' and implies usage for listing multiple orders, but does not explicitly contrast with the sibling 'get_order' for single-order retrieval or provide 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.
loginSign in to Amazon.in (opens a window)A
Opens a visible Chrome window at the Amazon.in sign-in page and keeps it open so you can sign in by hand (including OTP/CAPTCHA). Your session is saved automatically for future calls. After signing in, call finish_login. Use this instead of any command-line login.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it opens a visible window, keeps it open, and saves session automatically. Without annotations, it covers key behavioral traits, though it could mention behavior if already signed in.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences with no wasted words. Purpose is front-loaded and action-oriented.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately explains the login flow, session handling, and post-login step. Could clarify behavior in edge cases like already being signed in, but overall sufficient for a 0-param tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. Description adds no parameter info, which is acceptable given absence of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool opens a visible Chrome window at Amazon.in sign-in page for manual sign-in, distinguishing it from command-line login and specifying the follow-up tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context for when to use (manual sign-in with OTP/CAPTCHA) and instructs to call finish_login after. Lacks explicit when-not-to-use vs sibling tools like login_status, but effectively guides manual flow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
login_statusCheck Amazon.in login statusA
Loads the Amazon.in homepage in the persistent browser session and reports whether you are signed in, or whether a CAPTCHA/sign-in wall is blocking access. Run npm run login once if not signed in.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes loading homepage and reporting status, mentions persistent session, but lacks details on side effects (e.g., navigation, session initialization) and return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first describes action and output, second provides actionable next step. No wasted words, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, description covers purpose and likely outputs (signed-in, CAPTCHA, sign-in wall). Lacks detail on error cases or exact return structure, but adequate for the simple task.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist and schema coverage is 100%. Description adds no parameter info as none needed. Baseline 3 per rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it checks login status by loading Amazon.in homepage and reports sign-in, CAPTCHA, or sign-in wall. It distinguishes from sibling 'login' tool but not explicitly from 'get_browser_state' or 'finish_login'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance to run 'npm run login' if not signed in, implying use this tool before acting. Does not explicitly state when not to use or compare with siblings like 'get_browser_state'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_itemsSearch Amazon.inA
Search Amazon.in for products. Returns title, price (₹), rating, rating count, ASIN and product URL. Works without being signed in.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search terms, e.g. 'usb c cable 100w' | |
| maxResults | No | Default 10 | |
| includeSponsored | No | Include sponsored/ad results. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses it works without sign-in and lists returned fields, but lacks details on rate limits, pagination, or error behavior. Without annotations, more transparency on potential side effects or limitations would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences that front-load the action and return fields, with no unnecessary information. Each sentence serves a clear purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with good schema coverage, the description adequately covers the purpose, inputs, and outputs. However, it could mention pagination handling or error scenarios to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds minimal extra meaning beyond what is already in the schema (e.g., example query). The parameter descriptions in the schema are sufficient, so the description does not significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search Amazon.in for products') and lists specific return fields like title, price, rating, etc. This distinguishes it from sibling tools which focus on orders, login, or browser state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description notes it works without signing in, but does not explicitly state when not to use it or provide context for choosing it over other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_browser_modeSwitch headless / headedA
Switch the browser between headless (no window) and headed (visible window). If the browser is currently open, it is closed so the next tool call relaunches in the new mode. Your login is preserved. Returns the resulting state.
| Name | Required | Description | Default |
|---|---|---|---|
| headless | Yes | true = headless (no window), false = headed (visible window). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the browser closes if currently open, that login is preserved, and that the resulting state is returned. These details go beyond the basic purpose and are valuable for agent decision-making.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, each contributing essential information. It is front-loaded with the action and efficiently covers side effects and return value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description fully captures the effect, side effects, and return behavior. It is complete and leaves no ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% as the parameter 'headless' already has a description in the schema. The tool description does not add additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool's action: switching between headless and headed modes. It specifies the verb 'Switch' and the resource 'browser mode', and distinguishes it from sibling tools like get_browser_state or login.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the side effect (browser closes if open) and states when to use the tool (to change mode). It does not explicitly mention when not to use it, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct aspect: login flow, order details, order listing, trend analysis, search, and browser configuration. No two tools overlap in function.
Most tools follow a verb_noun pattern (e.g., get_order, list_orders), but 'login' is a plain verb and 'login_status' is noun_noun, causing slight inconsistency.
With 9 tools covering login, orders, search, and browser state, the count is well-scoped for an Amazon.in assistant focused on data retrieval and account management.
Core workflows (login, order lookup, search, trend analysis) are covered, but missing cart, wishlist, or purchase operations, though those may be out of scope.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Amazon brand, seller, niche & buy-box intelligence inside your own Claude or ChatGPT.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with your personal Amazon cart through browser automation, allowing search, add to cart, and view cart functionalities.2119MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search products, manage cart, place orders, and track shipments on Amazon via browser automation.151MIT
- FlicenseNot gradedqualityDmaintenanceEnables searching Amazon India products, retrieving details, tracking prices, managing favorites, and more with fast caching.
- AlicenseNot gradedqualityDmaintenanceEnables browser automation using Playwright for web scraping, testing, and automation tasks through natural language commands.1,414MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kausikram/amazon-in-marketplace-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server