Buyer Intelligence

io.github.tonyback0101-cmykPublished by GitHub account tonyback0101-cmykv1.0.1Updated Nov 2, 2026

Find verified global B2B buyers by category & country. Free anonymous discovery. SGX-listed.

The publisher's own server: buyer.sh

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingFinanceBusiness & Commerce

Overview

AI-generated overview

ProcureRadar's B2B buyer-intelligence server: find verified importers and distributors by category and country, enrich contacts, and run sourcing transactions.

What you can do
  • Search verified importers and distributors by product category and target country, with coverage info and background crawl tasks
  • Enrich buyer contacts (email, phone, WhatsApp, decision-makers) and run deep company intelligence with a 0-100 risk score
  • Poll background discovery jobs and list collective group-buy sourcing pools
  • Search supplier products and storefronts, then request quotes and list supplier quotes
  • Place orders against quotes and create or list AP2 payment mandates with budget limits
When to use it
Useful for export sellers, sourcing teams and sales researchers who want an assistant to shortlist buyers in a target market, enrich contact details, or run a quote-to-order loop with suppliers. Free anonymous discovery makes it easy to trial before paying for enrichment or intelligence.
Requirements
Remote streamable HTTP endpoint at procureradar.com, or the npm package run locally over stdio with Node.js. Anonymous access covers only the free, rate-limited find_buyers tool; paid tools need OAuth 2.1 or a zk_ API key (ZHIMAO_API_KEY for the local package, Bearer header for the remote endpoint). A ProcureRadar account with balance is needed for paid calls.
Before you install
Paid tools consume Zhimao Points and the zk_ key is tied to your account balance, so real billing applies. request_quote, place_order and create_payment_mandate act on your behalf: orders are created and a mandate can let an agent place orders autonomously within budget limits, so set tight caps and expiry. Quote and mandate tools require authentication and expose account data. Treat the API key as a secret; it is shown only once.

Installation

In SourceWeft

  1. Open Buyer Intelligence in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.tonyback0101-cmyk%2Fbuyer-intelligence/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "buyer-intelligence": {
      "type": "http",
      "url": "https://www.procureradar.com/api/mcp"
    }
  }
}

README

procureradar-mcp-server

[npm version] [License: MIT]

MCP server for ProcureRadar (智猫 / Zhimao) — find verified global B2B buyers (importers & distributors) by product category and country, then enrich contacts and run deep company intelligence. Think of it as the buyer-side counterpart to Alibaba: we surface buyers for sellers, not suppliers for buyers.

Operated by Acrometa Lifestyle Pte. Ltd., listed on the Singapore Exchange (SGX). Neutral, PDPA-compliant data intermediary. Bilingual (English / 中文).

There are two ways to connect — pick one:

Option A — Remote MCP endpoint (recommended, zero install)

The hosted MCP endpoint supports an anonymous handshake and a free, rate-limited discovery tool (find_buyers) — you can try it without any credentials. Paid tools use OAuth 2.1 or a Bearer zk_ key.

Cursor / Claude Desktop (~/.cursor/mcp.json or Claude config):

json
{  "mcpServers": {    "procureradar": {      "url": "https://www.procureradar.com/api/mcp",      "headers": { "Authorization": "Bearer zk_YOUR_TOKEN" }    }  }}

Gemini CLI (note the httpUrl key):

json
{  "mcpServers": {    "procureradar": {      "httpUrl": "https://www.procureradar.com/api/mcp",      "headers": { "Authorization": "Bearer zk_YOUR_TOKEN" }    }  }}

find_buyers works without a token (anonymous, free, rate-limited). Unlocking contact details / intelligence requires a zk_ key or OAuth login.

Option B — Local stdio server (this npm package)

Runs the published npm package over stdio with your own API key.

Cursor (~/.cursor/mcp.json):

json
{  "mcpServers": {    "zhimao": {      "command": "npx",      "args": ["-y", "procureradar-mcp-server"],      "env": {        "ZHIMAO_API_KEY": "zk_YOUR_TOKEN",        "ZHIMAO_BASE_URL": "https://www.procureradar.com"      }    }  }}

Get an API key

Create a zk_ key at https://www.procureradar.com/enterprise/api-access (shown once — store it safely).

🛠️ Tools

ToolPurposeCost
query_expansionSupply-chain expansion → buyer personas + Boolean queryper registry
url_profile_extractURL → structured company profile (Readability + LLM)10 pts
social_harvest_assistedGenerate a harvest bookmarklet (FB / Xiaohongshu / LinkedIn)10 pts
facebook_group_harvestFB group bulk bookmarklet10 pts
seed_url_bulk_ingestBulk-ingest seed URLsfree
company_intelligenceCompany intelligence (registry / web / WHOIS / tax / map / logo / news)10 / 30 pts
decision_maker_intelDecision-maker discovery (LinkedIn + email + WhatsApp)10 / 25 pts
buyer_intent_intelligenceBuyer-intent composite (customs + supply chain + region)20 / 40 pts
signal_watchSubscribe to hiring / news / tender signalsfree

All calls are BYOK + real billing — the zk_ token is tied to your ProcureRadar account and charges your balance.

💬 Example prompts

Once connected in your AI client, just ask in natural language:

  1. Find buyers (free, anonymous) — "Find verified flour importers and distributors in Malaysia." → calls find_buyers { category: "flour", country_iso: "MY" }.
  2. Enrich contacts (paid) — "Get the email and WhatsApp for the importer example-importer.com." → calls enrich_buyer_contact { target_domain: "example-importer.com" }.
  3. Company intelligence (paid) — "Run a company intelligence check on example-importer.com in Malaysia and give me a risk score." → calls analyze_buyer_intelligence { target_domain: "example-importer.com", country_iso: "MY" }.

find_buyers is free and works without any credentials, so you can try example 1 immediately.

🔒 Security

  • zk_ tokens are shown once at creation; the DB stores only sha256(token + salt).
  • Up to 10 active keys per user; revoke unused ones from your account.

🐛 Debug

bash
ZHIMAO_API_KEY=zk_xxx ZHIMAO_BASE_URL=https://www.procureradar.com npx procureradar-mcp-server

Waits for MCP messages over stdio; Ctrl+C to exit.

Build from source

bash
npm installnpm run build      # outputs dist/node dist/index.js

Links

📜 License

MIT

Source: README.md at commit 8256b64

Tools

13

find_buyers

Find verified B2B buyers

Search 500,000+ verified importers and distributors by product category and target country. Returns company profiles + a `coverage` object. When in-database coverage is thin (empty/partial), the response includes an `acquisition` task (task_id) — a background crawl is started automatically (free). Poll it with check_discovery_task until status=completed to get freshly gathered buyers. Contact details are not included — use enrich_buyer_contact to get them.

Parameterslimitcategoryrequiredcountry_isoquality_grade

enrich_buyer_contact

Enrich buyer contact details

Run 6-layer contact enrichment for a buyer: direct website scraping → proxy retry → BFS contact pages → LLM text extraction → vision screenshot → Serper fallback. Returns email, phone, WhatsApp, decision-maker names. Costs Zhimao Points.

Parameterstarget_domainrequiredtarget_company_name

analyze_buyer_intelligence

Analyze buyer company intelligence

Deep company intelligence for a buyer: corporate registry verification, customs import records, supply chain mapping, decision-maker profiling, risk flags. Returns 0-100 score with evidence chain.

Parameterscountry_isotarget_domainrequiredtarget_company_name

submit_discovery_job

Submit buyer discovery job

Explicitly submit an async batch buyer discovery job for a category + country. Returns a job_id; poll it with check_discovery_task until status=completed. Note: find_buyers already auto-starts a background crawl when coverage is thin, so usually you only need this for a forced/fresh deep crawl.

Parameterscategoryrequiredkeywordscountry_isorequired

check_discovery_task

Check discovery task status

Poll a background buyer-discovery task created by find_buyers (acquisition.task_id) or submit_discovery_job. Returns status (working | completed | failed); when completed, includes the freshly gathered buyers. Use exponential backoff (start ~20s) and stop polling once status is completed or failed. Free.

Parameterslimittask_idrequired

list_group_buy_pools

List group-buy pools

List open collective sourcing projects (联拼宝 / Lianpinbao). Multiple suppliers co-sell into shared buyer pools, reducing per-supplier MOQ. Find pools where you can join to access existing buyer demand.

Parametersstatuscategory

search_products

Search supplier products

Search live products listed by ProcureRadar suppliers by keyword, destination country, supplier country, or category. Returns product_id values needed to request a quote. Free & anonymous (IP rate-limited). This is the first step of the buyer-side transaction loop: search_products → request_quote → list_quotes → place_order.

Parametersqlimitcategorycountry_isosupplier_country

search_stores

Search supplier storefronts

Discover verified supplier storefronts (supply nodes) on ProcureRadar by target-market country and industry. Each store groups multiple products from one verified supplier and returns sample_product_ids you can quote on. Use this to find a supplier store first, then search_products / request_quote. Free & anonymous (IP rate-limited). Organizing principle: country × industry matrix.

Parametersqlimitcountryindustry

request_quote

Request a quote (create inquiry)

Start a transaction by sending a quote request (inquiry) to a supplier for a specific product_id (get one from search_products). Returns an inquiry_id. Requires authentication — the inquiry is owned by the authenticated buyer. The supplier then submits a quote; poll it with list_quotes.

Parametersquantitybuyer_noteproduct_idrequiredquantity_unitdestination_citydestination_country

list_quotes

List quotes for an inquiry

List the supplier quotes submitted for one of your inquiries (from request_quote). Returns each quote's id, unit price, total, MOQ, lead time and validity, plus acceptable_quote_ids you can pass to place_order. Requires authentication; only the inquiry's buyer (or the product's supplier) may read it.

Parametersinquiry_idrequired

place_order

Place an order (accept quote)

Accept a supplier quote and create an order (status pending_payment) for one of your inquiries. Pass the inquiry_id and the chosen quote_id (from list_quotes' acceptable_quote_ids). Optionally pass a mandate_id (from create_payment_mandate) to auto-authorize the order against an AP2 payment mandate within its limits — the response then includes mandate_authorization (authorized/declined + reason). Returns the order id, order_no and a payment next_step. Idempotent per inquiry: re-calling returns the existing order. Requires authentication.

Parametersquote_idrequiredinquiry_idrequiredmandate_id

create_payment_mandate

Create AP2 payment mandate

Create an AP2 payment mandate: a pre-authorization that lets your agent place orders autonomously (human-not-present) within strict limits — total budget, optional per-order cap, currency, optional seller/category scope, and expiry. Returns a mandate_id to pass to place_order. Each order authorized against it is recorded as a verifiable intent and decrements the budget. Requires authentication.

Parameterscurrencyexpires_atseller_scopecategory_scopemax_total_amountrequiredmax_per_order_amount

list_payment_mandates

List AP2 payment mandates

List your AP2 payment mandates with status, currency, total/per-order limits, consumed and remaining budget, scope and expiry. Requires authentication.

Takes no parameters.

Version history

1
  1. v1.0.1LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Buyer integrations