Basalam

io.github.sepehr071由 GitHub 帳號 sepehr071 發布v0.2.0更新於 Nov 7, 2026

Unofficial read-only Basalam marketplace: search products, cheapest offers, shops, reviews.

概覽

AI 產生的概覽

非官方唯讀 MCP 伺服器,讓助理搜尋 Basalam 市集商品、比較最低價,並查看商品、店家、分類與買家評價。

可以做什麼
  • 依價格、分類、免運、折扣、優質店家與分期等條件搜尋商品,並依相關度、銷量、價格或最新排序
  • 找出某查詢下最便宜的有貨報價,可設定價格下限與最低評分
  • 讀取單一商品的價格、折扣、庫存、銷量、規格選項、屬性、評分與所屬店家
  • 查看店家資料,並列出或搜尋該店家的商品
  • 瀏覽分類樹或依名稱搜尋分類
  • 讀取買家評價與星等分布
適用情境
適合需要尋找、比較或判斷 Basalam 上商品、價格、店家與評價的情況,例如挑選評價不錯的最低價商品,或判斷某家店家是否可靠。不適合用於下單購買或任何需要登入的操作。
執行需求
透過 uvx(或 pip install)以 stdio 在本機執行,需要 uv 與 Python 3.10 以上版本。不需 API 金鑰或帳號。選用環境變數 BASALAM_MCP_PROXY 可設定 HTTP 代理,也可填入以逗號分隔的多個代理;系統代理設定會被忽略。需要能連線至 Basalam 的公開端點。
安裝前請注意
唯讀:不會登入、加入購物車、下單、與店家聊天或發表評價,購買仍須在網站上完成。此為非官方專案,與 Basalam 無關,依賴可能隨時變動的公開網頁端點。評價、描述與店家文字由使用者產生,且可能被截斷。若設定 BASALAM_MCP_PROXY,該代理可看到你的流量。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Basalam,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

basalam-mcp: Basalam MCP server for AI agents

Let your AI agent shop on Basalam (باسلام).
An unofficial, read-only MCP server for Basalam, Iran's marketplace of independent shops:
search products, find the cheapest in-stock offers, read shops, categories and customer reviews, all from Claude, Cursor or Copilot.

[PyPI] [Python] [CI] [MCP Registry] [License: MIT] [mcpfarsi]

[Install in VS Code]

For AI agents · Quick start · What it can do · Tools · FAQ · فارسی


For AI agents

  • What: unofficial MCP server (model context protocol) for Basalam (basalam.com), Iran's marketplace of small shops. Persian queries match best; prices in Toman.
  • Install: uvx basalam-mcp or claude mcp add basalam -- uvx basalam-mcp. Transport: stdio. Needs uv (Python 3.10+).
  • Auth: none, no API key or account. Optional BASALAM_MCP_PROXY (HTTP proxy URL, or a comma-separated list).
  • Access: read-only. No login, basket, order, chat or review posting, so no confirmation is needed before calling any tool.
  • Tools: 7, all prefixed bs_. Start with bs_search or bs_find_cheapest. Typical sequence: bs_find_cheapest -> bs_product -> bs_reviews.
  • Use when: finding, comparing or judging products, prices, shops and reviews on Basalam.
  • Do not use when: the user wants to buy something or needs anything behind a login.
  • Output: compact JSON. Prices in Toman (the API reports Rial; converted), ratings 0-5, null and empty fields omitted. A product link is https://basalam.com/p/<id>.
  • Machine-readable: server.json and the iran-mcp catalog (TOOLS.md, servers.json, llms.txt).

Why

Basalam is a marketplace of thousands of small shops, so the same kind of item is listed many times at very different prices, and a plain "cheapest first" sort is full of filler listings priced at a few hundred Toman. Finding the real cheapest offer, then checking the product options, the shop and what buyers say, takes a lot of clicking. With basalam-mcp an agent does it in a few calls: bs_find_cheapest (filler prices hidden by default), bs_product, bs_vendor and bs_reviews.

What it can do

  • Search products with price range (Toman), category, free shipping, discount, top-shop and installment filters, sorted by relevance, sales, price or newest
  • Find the cheapest in-stock offers for a query, with a price floor and an optional minimum rating
  • Read one product: price, discount, stock, sales count, free-shipping threshold, options (sizes, colors), attributes, rating and its shop
  • Check a shop: city, activity, product count, shipping methods, and browse or search its products
  • Browse categories: the whole tree, children of a category, or search by name; ids feed the category_id filter
  • Read reviews with the star histogram of the product and its shop
  • Read-only by design: no login, no basket, no orders

Example prompts:

  • "Cheapest handmade wool rug on Basalam with at least 4 stars?"
  • "Find saffron under 500,000 Toman with free shipping, best sellers first."
  • "Is this shop reliable? Show its profile, its newest products and the latest reviews."
  • "List the sub-categories of home decor on Basalam."
  • ارزان‌ترین زعفران نگین با ارسال رایگان در باسلام کدام است؟
  • نظر خریداران درباره این محصول را بخوان و بگو ایرادش چیست.

Quick start

You need uv. No API key or account.

Claude Code
bash
claude mcp add basalam -- uvx basalam-mcp
Claude Desktop

Settings → Developer → Edit Config, then add:

json
{  "mcpServers": {    "basalam": { "command": "uvx", "args": ["basalam-mcp"] }  }}
Cursor

Add the Claude Desktop block above to ~/.cursor/mcp.json (or .cursor/mcp.json in a project).

VS Code (Copilot agent mode)

Click Install in VS Code above, or add to .vscode/mcp.json:

json
{  "servers": {    "basalam": { "type": "stdio", "command": "uvx", "args": ["basalam-mcp"] }  }}
Codex CLI
bash
codex mcp add basalam -- uvx basalam-mcp

Or in ~/.codex/config.toml:

toml
[mcp_servers.basalam]command = "uvx"args = ["basalam-mcp"]
Gemini CLI

Add to ~/.gemini/settings.json:

json
{  "mcpServers": {    "basalam": { "command": "uvx", "args": ["basalam-mcp"] }  }}
Windsurf

Add the Claude Desktop block to ~/.codeium/windsurf/mcp_config.json.

Anything else

It's a standard stdio MCP server: run uvx basalam-mcp, or pip install basalam-mcp and run basalam-mcp.

Tools

All 7 tools are annotated readOnlyHint: true and return compact JSON, so they don't flood the agent's context.

ToolWhat it does
bs_searchSearch Basalam products and return a page of cards with prices in Toman.
bs_find_cheapestList the cheapest in-stock offers for a query, cheapest first, prices in Toman.
bs_categoriesBrowse Basalam's category tree and return ids for the category_id filter of bs_search.
bs_productGet one product: price in Toman, discount, stock, options (colors, sizes), attributes, rating and its shop.
bs_vendorGet a Basalam shop's profile: city, product count, shipping methods, activity and notice.
bs_vendor_productsList one shop's products with prices in Toman, searchable and sortable.
bs_reviewsRead customer reviews of a product with the star histogram, newest first.

How it works

text
  AI agent  (Claude, Cursor, Copilot, ...)      │      │  MCP over stdio      ▼  basalam-mcp  (runs on your machine)      │      │  HTTPS      └──────▶  services.basalam.com, core.basalam.com   search, products, shops, reviews

basalam-mcp runs locally and calls the same public endpoints the basalam.com web app uses. There is no hosted server in between, no API key, and nothing about you is sent anywhere else. Only those two Basalam hosts are allowed.

Good to know

  • Prices are in Toman. The Basalam API answers in Rial; every tool divides by 10 (and price filters are multiplied by 10), so numbers match the website.
  • Ratings are 0-5. A missing rating means not rated.
  • Persian queries match best.
  • Result totals stop at 10000 (the search index cap). Pages hold at most 30 products to keep replies small; a short page is refilled from the following rows, so neighbouring pages can repeat a few products.
  • "Cheapest" sorts are full of filler listings priced at a few hundred Toman; bs_find_cheapest hides prices under 5000 Toman by default (min_price).
  • Sales count and free-shipping threshold of a product are read with two extra calls the product page uses; if one fails, its fields are simply missing.
  • Dates and times are passed through as Basalam returns them (Iran local time, not converted).
  • Review, description and shop text is user-generated and cut to 400 characters unless full_text=true.
  • Not exposed: the vendor API's own score (always 0; use the shop stars from bs_reviews), and the rating and same-city search filters.
  • It does not log in, fill a basket, order, chat with shops or post reviews.
  • Answers are cached for 60 seconds; a timeout, 5xx or 429 is retried.

FAQ

Is there a Basalam API or MCP server for AI agents?

Yes: basalam-mcp is an unofficial MCP server with 7 read-only tools for product search, cheapest offers, shops, categories and reviews. It calls the same public endpoints the basalam.com web app uses; no API key is needed.

How do I use Basalam with Claude, Cursor or Copilot?

Add the server with claude mcp add basalam -- uvx basalam-mcp (or the matching config in Quick start), then ask in plain language, in Persian or English.

Is it official, safe and free?

It is unofficial and not affiliated with Basalam. It is read-only (no login, basket or orders), runs on your machine, and is free under the MIT license.

Do I need an Iranian IP?

No. In testing (2026-10-19) Basalam answered both from a Turkish exit and directly. If your network blocks it, set BASALAM_MCP_PROXY to an HTTP proxy. Normal system proxy variables are ignored on purpose.

Can it buy something for me?

No, and that is deliberate. It has no login and only reads public data. The agent finds the best option; you buy it on the site.

Why are some prices missing or tiny?

Sorting by price puts filler listings at a few hundred Toman first. Use bs_find_cheapest, which hides prices under 5000 Toman by default; lower min_price if you really want them.

How do I filter by category?

Call bs_categories (with query to search by name, or parent_id to list children), then pass the id as category_id to bs_search.

Claude Desktop says uvx is not found

Use the full path to uvx (where uvx on Windows, which uvx on macOS/Linux) as command.

How do I debug what the agent sees?
bash
npx @modelcontextprotocol/inspector uvx basalam-mcp

Configuration

VariableDefaultMeaning
BASALAM_MCP_PROXYunsetOptional HTTP proxy URL; system proxy settings are ignored. Also accepts a comma-separated list: one is used until it gets blocked or fails to connect, then the next

فارسی: سرور MCP باسلام

basalam-mcp یک سرور MCP غیررسمی و فقط‌خواندنی برای باسلام، بازار آنلاین کسب‌وکارهای کوچک و غرفه‌داران ایرانی، است. این سرور به دستیار هوش مصنوعی شما (Claude، Cursor، Copilot و ...) اجازه می‌دهد در باسلام جستجو کند، ارزان‌ترین پیشنهادها را پیدا کند و محصول، غرفه، دسته‌بندی و نظر خریداران را بخواند.

چه کارهایی می‌کند

  • جستجوی محصول با فیلتر بازه قیمت، دسته‌بندی، ارسال رایگان، تخفیف، غرفه‌های برتر و پرداخت اقساطی؛ مرتب‌سازی بر اساس مرتبط‌ترین، پرفروش‌ترین، قیمت یا جدیدترین.
  • ارزان‌ترین پیشنهادهای موجود برای یک عبارت، با حداقل قیمت و حداقل امتیاز اختیاری.
  • جزئیات محصول: قیمت، تخفیف، موجودی، تعداد فروش، حد ارسال رایگان، گزینه‌ها (رنگ و سایز)، ویژگی‌ها، امتیاز و غرفه‌دار.
  • پروفایل غرفه: شهر، تعداد محصول، روش‌های ارسال و فهرست محصولات غرفه.
  • درخت دسته‌بندی‌ها و جستجوی دسته با نام.
  • نظرات خریداران همراه با نمودار ستاره‌ها.

نکته‌ها

  • فقط خواندنی است: وارد حساب نمی‌شود، سبد خرید نمی‌سازد و سفارش ثبت نمی‌کند.
  • همه قیمت‌ها به تومان است و امتیازها از ۵.
  • روی سیستم خود شما اجرا می‌شود و کلید API لازم ندارد.
  • جستجو به فارسی بهتر جواب می‌دهد.

نصب (اول uv را نصب کنید). در Claude Code:

bash
claude mcp add basalam -- uvx basalam-mcp

در Claude Desktop، Cursor و بقیه برنامه‌ها همان تنظیم بخش Quick start را بگذارید.

نمونه پرسش‌ها

  • «ارزان‌ترین زعفران نگین در باسلام کدام است؟»
  • «محصولات دست‌ساز با ارسال رایگان زیر ۵۰۰ هزار تومان را نشان بده.»
  • «این غرفه قابل اعتماد است؟ نظرات خریداران را بخوان.»
  • «زیردسته‌های دسته خانه و دکور را فهرست کن.»

کلمات کلیدی: باسلام، خرید آنلاین از باسلام، بازار آنلاین کسب‌وکارهای کوچک، مقایسه قیمت، ارزان‌ترین قیمت، غرفه، صنایع دستی، سرور MCP، هوش مصنوعی.

Development

bash
git clone https://github.com/sepehr071/basalam-mcp && cd basalam-mcpuv syncuv run python -m pytest -q          # offline, against recorded responsesuv run python -m pytest -m live -q  # one live test per tooluv run ruff check .

Tools live in src/basalam_mcp/catalog.py and shop.py; each is a typed async function with a docstring that tells the agent when to use it. Issues and PRs are welcome, especially new tools and fixes for API changes.

Releases: bump the version in pyproject.toml and server.json, then push a v* tag. GitHub Actions tests, publishes to PyPI and the MCP Registry, and creates the GitHub Release.

Related servers

Disclaimer

Unofficial and not affiliated with or endorsed by Basalam. It uses the public endpoints of the basalam.com web app, which can change without notice. Please keep request rates reasonable.

Author

[Sepehr Radmard: open-source MCP servers for the Iranian web. LinkedIn: linkedin.com/in/sepehr-radmard]

Built and maintained by Sepehr Radmard (سپهر رادمرد). Connect on LinkedIn or follow @sepehr071 on GitHub for more MCP servers for Iranian websites, all listed in iran-mcp. If this saves you time, a star on the repo helps other people find it.

License

MIT

來源:README.md,提交 fe0d08e

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

4
  1. v0.2.0最新Nov 7, 2026
  2. v0.1.2Oct 23, 2026
  3. v0.1.1Oct 22, 2026
  4. v0.1.0Oct 20, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分