DEV Community

BuyWhere
BuyWhere

Posted on

Real-Time Singapore Commerce for Any AI Agent: Introducing the BuyWhere MCP Server

If you are building an AI agent that needs to search, compare, or discover product prices across Singapore merchants, you have two options:

  1. Scrape — fragile HTML, CAPTCHA battles, stale data
  2. Use an API — structured JSON, real-time, one integration

BuyWhere has been the API option since launch. Today, we are shipping the Model Context Protocol (MCP) server — meaning your agent can query real product data through a single MCP tool, without writing HTTP client code.

What is MCP?

MCP (Model Context Protocol) is an open standard that lets AI models discover and call tools at runtime. If your agent runs on LangChain, CrewAI, AutoGen, or any MCP-compatible runtime, you can plug in the BuyWhere MCP server and instantly give it access to real-time pricing across 15+ Singapore merchants.

Install in one command

npx buywhere-mcp-server
Enter fullscreen mode Exit fullscreen mode

That is it. The server connects to the BuyWhere API and exposes tools your agent can call:

  • search_products(query, merchant?, limit?) — search by product name
  • get_product_prices(product_id) — get current prices across all merchants
  • get_merchants() — list available merchants

Example: CrewAI agent

from crewai import Agent, Task, Crew
from crewai.tools import MCPTool

mcp_tool = MCPTool(
    server_path="npx",
    arguments=["buywhere-mcp-server"],
    name="buywhere"
)

shopping_agent = Agent(
    role="Shopping Assistant",
    goal="Find the best price for products",
    tools=[mcp_tool],
    verbose=True
)

task = Task(
    description="Find the cheapest iPhone 16 Pro 256GB in Singapore",
    expected_output="Product name, price, merchant, and last updated",
    agent=shopping_agent
)

crew = Crew(agents=[shopping_agent], tasks=[task])
result = crew.kickoff()
Enter fullscreen mode Exit fullscreen mode

Example: LangChain

from langchain_mcp import MCPToolkit

toolkit = MCPToolkit(server_path="npx", args=["buywhere-mcp-server"])
tools = toolkit.get_tools()

# tools[0] is search_products
result = await tools[0].ainvoke({
    "query": "organic eggs",
    "merchant": "FairPrice"
})
Enter fullscreen mode Exit fullscreen mode

What you get

Field Type Example
product_name string "iPhone 16 Pro 256GB"
price number 1799.00
currency string "SGD"
merchant string "Lazada"
in_stock boolean true
last_updated datetime "2026-05-06T10:30:00Z"
url string Product page link

Merchants covered

FairPrice, Cold Storage, Giant, Watsons, Guardian, Sephora, iHerb, Lazada, Shopee, and more. We add 2-3 new merchants monthly based on community requests.

Pricing

  • Free tier: 10K requests/month, 100 req/min — perfect for prototyping and personal agents
  • Dev tier: S$49/month, 300 req/min, 300K monthly — for production deployments

Get started

  1. Install: npx buywhere-mcp-server
  2. Connect it to your agent runtime
  3. Start querying real Singapore product data

Already built something? Let us know — we feature community agents in our weekly recap.


Docs: docs.buywhere.ai
API: api.buywhere.ai/v1/prices
MCP: npx buywhere-mcp-server

Top comments (0)