mcp-ebay
Provides tools to search products, view item details, track and place bids, make Buy It Now purchases, view order history, and track shipments on eBay via browser automation.
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., "@mcp-ebaysearch for vintage rolex watches"
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.
@striderlabs/mcp-ebay
MCP (Model Context Protocol) server connector for eBay. Enables AI agents to search products, view item details, track and place bids, make Buy It Now purchases, view order history, and track shipments — all via browser automation with Playwright.
Features
Tool | Description |
| Search eBay by keyword with filters (price, condition, sort) |
| Full item details: price, condition, specs, seller info, images |
| View bid history and auction status |
| Place a maximum bid on an auction |
| Initiate a Buy It Now purchase and proceed to checkout |
| List your past eBay purchases |
| Track a shipment by tracking number or order item |
Related MCP server: eBay MCP Server
Installation
npm install -g @striderlabs/mcp-ebayOr install Playwright browsers after installing:
npx playwright install chromiumUsage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"ebay": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-ebay"]
}
}
}Usage with Claude Code
claude mcp add ebay -- npx -y @striderlabs/mcp-ebayTool Reference
search_products
{
"query": "vintage rolex watch",
"max_results": 10,
"min_price": 500,
"max_price": 5000,
"condition": "1000",
"sort": "15"
}Condition codes: 1000=New, 2000=Refurbished, 3000=Used
Sort codes: 12=Best Match, 15=Ending Soonest, 16=Newly Listed, 3=Price Lowest
get_item_details
{ "item_id": "123456789012" }track_bids
{ "item_id": "123456789012" }place_bid
{
"item_id": "123456789012",
"bid_amount": 75.00,
"username": "your@email.com",
"password": "yourpassword"
}buy_it_now
{
"item_id": "123456789012",
"username": "your@email.com",
"password": "yourpassword",
"quantity": 1
}Note: This proceeds to the eBay checkout page. Final payment must be completed on eBay.
view_order_history
{
"username": "your@email.com",
"password": "yourpassword",
"days": 60
}track_shipment
{ "tracking_number": "1Z999AA10123456784" }Or by item ID (requires login):
{
"item_id": "123456789012",
"username": "your@email.com",
"password": "yourpassword"
}Security Notes
Credentials are passed per-call and never stored
Browser sessions are closed after each tool call
Runs headless Chromium — no UI required
For production use, consider using environment variables for credentials
Development
git clone https://github.com/markswendsen-code/mcp-ebay
cd mcp-ebay
npm install
npm run buildLicense
MIT
Available Tools
7 toolsbuy_it_nowA
Purchase an eBay item immediately using Buy It Now. Proceeds to checkout — final payment must be completed on eBay.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | eBay item ID | |
| password | Yes | eBay password | |
| quantity | No | Quantity to purchase (default 1) | |
| username | Yes | eBay username or email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a key behavioral trait: 'Proceeds to checkout — final payment must be completed on eBay.' This goes beyond the schema by explaining the workflow and that payment is not handled by the tool. However, it does not mention potential side effects like an irreversible purchase, authentication requirements beyond the passed credentials, or error conditions. With no annotations, more transparency could be provided.
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 and efficient, consisting of two sentences. The first sentence states the primary action, and the second clarifies the checkout flow. There is no redundant information or awkward phrasing, and the key details are 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?
The description covers the core action and the checkout handoff, but it lacks details on expected return values, success/failure behavior, or prerequisites (e.g., item must have Buy It Now available). Given that there is no output schema, the agent is left without guidance on what the tool returns. This gap makes the description incomplete for a transactional 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?
The input schema has 100% coverage of parameter descriptions, so the baseline is 3. The description adds no additional explanation of parameters such as quantity or username, relying entirely on the schema. It doesn't clarify how credentials are used or what quantity default means beyond the 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 states the tool's function: 'Purchase an eBay item immediately using Buy It Now.' It specifies the verb, resource, and method, distinguishing it from sibling tools like place_bid which would be for auctions. The additional note about proceeding to checkout further clarifies the purchase flow.
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 immediate purchases via Buy It Now, but it does not explicitly mention when not to use it or provide alternatives. Siblings like place_bid exist, but there is no direct comparison or exclusion statement, leaving the agent to infer the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_item_detailsA
Get full details for an eBay item by its item ID, including price, condition, seller info, and specs.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | eBay item ID (numeric string) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It implies a read-only operation ('get') and lists included detail fields, which adds some transparency. However, it does not disclose error handling (e.g., invalid/nonexistent item), rate limits, or permission requirements, leaving gaps for a tool with no annotation support.
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, well-structured sentence that front-loads the action (get), specifies the target (full details for an eBay item), and lists key content areas. Every phrase is informative with no redundancy or filler.
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 covers the essential purpose and included details. It could optionally mention error cases or required authentication, but for a read-only detail fetcher, it is sufficiently complete for an agent to invoke it correctly.
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 description coverage is 100% for the single parameter item_id, which already describes it as an eBay item ID (numeric string). The description's 'by its item ID' adds no new meaning beyond the schema, so it meets the baseline for high schema coverage.
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's function: retrieving full details for an eBay item via its item ID, and it enumerates the types of details (price, condition, seller info, specs). This is a specific verb+resource form that effectively distinguishes it from sibling tools like search_products or place_bid.
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 you have an item ID and need comprehensive details for that specific item. It provides clear context without explicitly naming alternatives or exclusivity, but the need for an item ID inherently differentiates it from search-oriented tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
place_bidB
Place a bid on an eBay auction item. Requires eBay credentials.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | eBay auction item ID | |
| password | Yes | eBay password | |
| username | Yes | eBay username or email | |
| bid_amount | Yes | Maximum bid amount in USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavioral traits. It only notes the credential requirement, but omits critical details such as the bid being binding, potential fees, success/failure handling, or the effect on the user's account.
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, front-loaded sentence that immediately states the purpose and a key requirement. There is no wasted verbiage.
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?
This is a financially significant mutation tool with no annotations or output schema. The description is far too sparse: it fails to mention binding obligations, possible outcomes, error behavior, or what the response will look like. Significant context is missing for an AI agent to safely invoke it.
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 schema covers 100% of parameters with descriptions, providing a baseline of 3. The description adds a small note about credentials, reinforcing the username/password fields, but does not materially enrich understanding of the bid_amount or item_id beyond what the schema already states.
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's action with a specific verb ('Place') and resource ('a bid on an eBay auction item'). It distinguishes itself from sibling tools like buy_it_now by focusing on auction bidding.
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 provides no guidance on when to use this tool versus alternatives like buy_it_now. It only states that eBay credentials are required, but does not mention when placing a bid is appropriate or when other tools should be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsA
Search eBay for products by keyword, with optional filters for price, condition, and sort order.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort: 12=Best Match, 15=Time:ending soonest, 16=Time:newly listed, 3=Price+shipping:lowest | |
| query | Yes | Search keywords | |
| condition | No | Item condition code: 1000=New, 2000=Refurbished, 3000=Used | |
| max_price | No | Maximum price filter (USD) | |
| min_price | No | Minimum price filter (USD) | |
| max_results | No | Max results to return (default 10) |
TDQS
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 only describes the search action and filters, but does not mention that the operation is read-only, whether authentication is required, rate limits, pagination behavior, or what the return response looks like. For a search tool, these are important behavioral traits.
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 concise sentence that clearly communicates the core purpose. There is no redundant information, and it is front-loaded with the main action.
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?
While the schema fully documents parameters, the description lacks any information about the response format (e.g., list of items) or behavior like default result limits. Since there is no output schema, the description should compensate by explaining what the tool returns, but it does not.
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 description coverage is 100%, so all parameters are already documented in the schema. The description summarizes filters for price, condition, and sort order, which aligns with the schema but adds no additional meaning. It also omits mention of max_results, though the schema covers it.
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 imperative 'Search' with a specific resource 'eBay products' and lists optional filters, making the tool's purpose immediately clear. It is distinct from sibling tools like place_bid, get_item_details, and track_shipment, which serve different actions.
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 states it is for searching eBay by keyword with filters, implying use when finding products. It does not explicitly name alternatives or exclusions, but the sibling context makes the use case clear. However, it lacks explicit guidance on when not to use it (e.g., when needing item details, get_item_details would be appropriate).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_bidsA
View the current bid history and status for an eBay auction item.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | Yes | eBay auction item ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The verb 'View' implies a non-mutating operation, but with no annotations, the description carries the full burden of behavioral disclosure. It does not explain whether the response includes live data, pagination, or what 'status' entails (e.g., winning/outbid). Still, the read-only nature is reasonably conveyed.
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, front-loaded sentence with no filler. Every word contributes to the core purpose, making it highly efficient and easy to parse.
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 one-parameter tool with no output schema, the description is nearly complete. It states the purpose clearly and implies a read-only operation. Minor gaps include not specifying what 'status' covers or whether the history includes current and past bids, but these are not critical for basic invocation.
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 already has 100% coverage with a clear description for item_id ('eBay auction item ID'). The tool description adds no further parameter detail, so it meets the baseline without adding extra value beyond the 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 uses a specific verb ('View') and clearly identifies the resource ('bid history and status') and scope ('eBay auction item'). It is easily distinguishable from sibling tools such as place_bid (action) and get_item_details (item details), 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that it is read-only or suggest it for tracking bid activity before placing a bid. There is no explicit 'when-not-to-use' or comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_shipmentA
Track a shipment by tracking number, or look up tracking for a specific item from your order history.
| Name | Required | Description | Default |
|---|---|---|---|
| item_id | No | eBay item ID (requires username/password) | |
| password | No | eBay password (required if using item_id) | |
| username | No | eBay username (required if using item_id) | |
| tracking_number | No | Shipment tracking number |
TDQS
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 implies a read-only lookup but does not explicitly state that it is non-destructive, what information is returned, or that authentication is required for item-based lookup beyond what the schema already mentions. This is a significant gap.
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, concise sentence that fronts the primary verb and resource. Every word contributes to meaning, with no redundancy or filler.
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 annotations, no output schema, and four parameters, the description is too minimal. It fails to mention return format, authentication requirements for the item_id path (only in schema), or any error/edge cases. The tool's dual-mode behavior is described, but important contextual details are missing.
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 description coverage is 100%, and the description adds a small amount of context by clarifying that tracking_number and item_id represent two alternative lookup modes. However, it does not explain the syntax or relationships beyond what the schema already provides, so the 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's function: 'Track a shipment by tracking number, or look up tracking for a specific item from your order history.' It uses a specific verb ('track') and identifies the resource (shipment), and distinguishes from siblings like track_bids by focusing on shipment tracking.
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 provides clear context for when to use the tool: when you have a tracking number or want to track an item from order history. It does not explicitly name alternatives or exclusion criteria, but the two usage modes make the intended scenarios obvious relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
view_order_historyA
View your eBay purchase history. Requires eBay credentials.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Number of past days to retrieve orders for (default 60) | |
| password | Yes | eBay password | |
| username | Yes | eBay username or email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It explicitly notes 'Requires eBay credentials,' which is an important authentication requirement. The verb 'view' implies read-only behavior, but the description does not discuss side effects, output format, or security implications. This is moderate transparency.
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 concise sentences, front-loaded with the primary purpose. Every word earns its place, with no fluff or repetition.
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?
There is no output schema, so the description should convey what the tool returns. 'Purchase history' implies a list of past orders, but the description does not specify the response structure, the effect of the 'days' parameter, or any error conditions. It is minimally adequate for a familiar concept but lacks completeness for an agent.
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 the input schema already describes username, password, and days. The description reinforces the credential requirement but does not add meaning beyond the schema. No additional parameter semantics are provided.
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 and resource: 'View your eBay purchase history.' This clearly differentiates it from sibling tools like search_products, get_item_details, track_bids, place_bid, buy_it_now, and track_shipment, which all serve distinct purposes.
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 states the clear context: view your purchase history. It implies when to use it (when you need past orders) but does not explicitly exclude alternatives or mention when not to use it. The credential requirement provides an additional cue, but no direct comparison to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose: searching, viewing details, tracking bids, placing bids, buying, viewing orders, and tracking shipments. No overlapping responsibilities confuse an agent's selection.
All tools follow a consistent verb_noun pattern in snake_case (e.g., search_products, place_bid, track_shipment). Minor pluralization differences (track_bids vs place_bid) do not break the pattern.
With 7 tools, the set is well-scoped for an eBay buyer-centric server. Each tool covers a distinct aspect of the buying workflow—search, item details, bidding, purchasing, order history, and shipment tracking—without bloat.
The tool surface covers core buyer workflows: searching, inspecting items, bidding, buying, viewing orders, and tracking shipments. Minor gaps like canceling orders or leaving feedback are not critical for most use cases but prevent a perfect score.
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
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…
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI models to find the best online deals by browsing and interacting with multiple shopping platforms like Amazon and eBay across various regions. It uses Playwright to automate searches and retrieve product information from compatible e-commerce and deal-tracking websites.273MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search eBay listings, track item prices over time, and identify deals below market value using eBay's APIs. It provides tools for category browsing and retrieving detailed information for specific listings.1MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to control a web browser using Playwright, supporting navigation, interaction, and data extraction through natural language.MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to perform browser automation using Playwright, including navigation, content extraction, screenshot analysis, and custom script execution.517MIT
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/markswendsen-code/mcp-ebay'
If you have feedback or need assistance with the MCP directory API, please join our Discord server