New:Microsoft Teams Notifications Are Now Available in Socket.Learn more →
Get Started

secondhand-mcp

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

secondhand-mcp

MCP server for searching secondary marketplaces (Facebook Marketplace, eBay, Craigslist, etc.)

Source
npmnpm
Version
0.1.0
Version published
Weekly downloads
107
-50%
Maintainers
1
Weekly downloads
 
Created
Source

Secondhand MCP

An MCP server for searching secondary marketplaces. Lets Claude and other AI assistants search for deals on Facebook Marketplace and eBay.

Features

  • Search multiple marketplaces from a single interface
  • Price filtering with min/max ranges
  • Location-based search by city
  • Detailed listing inspection (photos, descriptions, seller info)
  • Availability filtering — sold/pending items excluded by default
  • Works with Claude Desktop, Claude Code, Cursor, and other MCP clients
  • Lightweight — no browser dependencies, native HTTP requests

Supported Marketplaces

MarketplaceStatusAuth Required
Facebook MarketplaceWorkingNo
eBayWorkingYes (API keys)

Setup

From Source

git clone https://github.com/jlsookiki/secondhand-mcp.git
cd secondhand-mcp
npm install
npm run build

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "secondhand": {
      "command": "npx",
      "args": ["-y", "secondhand-mcp"],
      "env": {
        "EBAY_CLIENT_ID": "your-ebay-client-id",
        "EBAY_CLIENT_SECRET": "your-ebay-client-secret"
      }
    }
  }
}

Claude Code

Add to ~/.claude/.mcp.json:

{
  "mcpServers": {
    "secondhand": {
      "command": "npx",
      "args": ["-y", "secondhand-mcp"],
      "env": {
        "EBAY_CLIENT_ID": "your-ebay-client-id",
        "EBAY_CLIENT_SECRET": "your-ebay-client-secret"
      }
    }
  }
}

eBay credentials are optional — if omitted, eBay will be disabled and only Facebook Marketplace will be available.

Configuration

Choosing Marketplaces

By default all marketplaces are enabled. To limit which marketplaces are active, set the MARKETPLACES env var (comma-separated):

{
  "env": {
    "MARKETPLACES": "facebook",
    "EBAY_CLIENT_ID": "...",
    "EBAY_CLIENT_SECRET": "..."
  }
}

Valid values: facebook, ebay

eBay API Keys

eBay uses the official Browse API. You need a free eBay developer account:

  • Create an account at developer.ebay.com
  • Create an application to get a Client ID and Client Secret
  • Add them to your MCP config as EBAY_CLIENT_ID and EBAY_CLIENT_SECRET

Tools

search_marketplace

Search for items across marketplaces. Returns a summary per listing: title, price, location, listing ID, and photo count.

ParameterRequiredDefaultDescription
queryYesSearch terms
marketplaceNofacebookfacebook, ebay, or all
locationNosan franciscoCity to search in (Facebook only)
maxPriceNoMaximum price
minPriceNoMinimum price
limitNo20Max results
showSoldNofalseInclude sold/unavailable items (Facebook only)
includeImagesNofalseInclude image URLs in output

Data returned per marketplace:

FieldFacebookeBay
TitleYesYes
PriceYesYes
LocationCity nameCity, State
ConditionNoYes
Photo countYes (1 thumbnail)Yes (1 thumbnail)
SellerYesYes

get_listing_details

Get full details for a specific listing using an ID from search results.

ParameterRequiredDefaultDescription
listingIdYesListing ID from search results
marketplaceNofacebookfacebook or ebay

Data returned per marketplace:

FieldFacebookeBay
DescriptionYesYes
All photosYesYes
LocationCityCity, State, Country
SellerNameUsername
Delivery typesYesNo
Shipping optionsYes/No flagService codes

list_marketplaces

List all enabled marketplaces and their status.

Example Output

Found 15 listings for "stroller" on facebook
Location: san francisco

**$25** - Baby stroller
   San Francisco, CA
   ID: 123456789
   1 photo

**$50** - Thule Urban Glide Jogging Stroller
   San Francisco, CA
   ID: 987654321
   1 photo

Use get_listing_details with a listing ID to see full photos, description, and seller info.

How It Works

Facebook Marketplace — Uses Facebook's internal GraphQL API to search listings directly. No login, no browser automation. Resolves city names to coordinates, then searches with location/price/query filters. Uses undocumented doc_id endpoints that may need updating if Facebook changes their frontend.

eBay — Uses the official eBay Browse API with OAuth 2.0 client credentials. Tokens are cached and auto-refreshed.

Adding New Marketplaces

  • Create a new file in src/marketplaces/ (e.g., craigslist.ts)
  • Extend BaseMarketplace and implement search() and optionally getListingDetails()
  • Add the constructor to the allMarketplaces registry in src/marketplaces/index.ts

Development

npm install
npm run build

Limitations

  • Facebook Marketplace: Uses undocumented GraphQL API — may break if Facebook changes doc_id values (constants in src/marketplaces/facebook.ts)
  • Rate limiting: Don't make too many requests too quickly
  • eBay: Requires developer API keys (free tier available)

License

MIT

Disclaimer

This tool is for personal use. Respect each marketplace's Terms of Service.

Keywords

mcp

FAQs

Package last updated on 05 Feb 2026

Related posts