Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,544Letters: 14Defects: 1,324counted just now
teppi

Server definition

Hash
sha256:6b47026dd582f96057e38a2da9a22ed684216cd4a626f9fd63bca14c25ad97c5
What it is
What a remote MCP server returned when asked what it offers: 13 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "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.", "inputSchema": { "properties": { "country_iso": { "description": "ISO 3166-1 alpha-2 country code", "type": "string" }, "target_company_name": { "description": "Buyer's company name", "type": "string" }, "target_domain": { "description": "Buyer's website domain", "type": "string" } }, "required": [ "target_domain" ], "type": "object" }, "name": "analyze_buyer_intelligence", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "limit": { "description": "Max buyers to return when completed (default 50, max 100)", "type": "number" }, "task_id": { "description": "The task_id returned in find_buyers' acquisition field, or a discovery job_id", "type": "string" } }, "required": [ "task_id" ], "type": "object" }, "name": "check_discovery_task", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "category_scope": { "description": "Optional list of allowed category codes (mall_category_code). Omit = any category.", "items": { "type": "string" }, "type": "array" }, "currency": { "description": "Currency, e.g. USD (default USD). Must match the order currency to authorize.", "type": "string" }, "expires_at": { "description": "Optional ISO timestamp after which the mandate is no longer valid.", "type": "string" }, "max_per_order_amount": { "description": "Optional per-order cap", "type": "number" }, "max_total_amount": { "description": "Total spend budget for this mandate (required, > 0)", "type": "number" }, "seller_scope": { "description": "Optional list of allowed seller_user_id UUIDs. Omit = any seller.", "items": { "type": "string" }, "type": "array" } }, "required": [ "max_total_amount" ], "type": "object" }, "name": "create_payment_mandate", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "target_company_name": { "description": "Buyer's company name", "type": "string" }, "target_domain": { "description": "Buyer's website domain (e.g. 'example-importer.com')", "type": "string" } }, "required": [ "target_domain" ], "type": "object" }, "name": "enrich_buyer_contact", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "category": { "description": "Product category (e.g. 'flour', 'stainless steel tableware', 'LED lighting')", "type": "string" }, "country_iso": { "description": "ISO 3166-1 alpha-2 country code (e.g. MY, ID, KE, AE, GB)", "type": "string" }, "limit": { "description": "Max results to return (default 20, max 100)", "type": "number" }, "quality_grade": { "description": "Filter by data quality. 'premium' = verified contact + multi-source evidence.", "enum": [ "premium", "qualified" ], "type": "string" } }, "required": [ "category" ], "type": "object" }, "name": "find_buyers", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "category": { "description": "Filter by product category keyword (optional)", "type": "string" }, "status": { "description": "Pool status (default: open)", "enum": [ "open", "filling" ], "type": "string" } }, "type": "object" }, "name": "list_group_buy_pools", "outputSchema": null }, { "description": "List your AP2 payment mandates with status, currency, total/per-order limits, consumed and remaining budget, scope and expiry. Requires authentication.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_payment_mandates", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "inquiry_id": { "description": "The inquiry_id returned by request_quote", "type": "string" } }, "required": [ "inquiry_id" ], "type": "object" }, "name": "list_quotes", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "inquiry_id": { "description": "The inquiry_id (from request_quote / list_quotes)", "type": "string" }, "mandate_id": { "description": "Optional AP2 payment mandate id (from create_payment_mandate) to auto-authorize this order within pre-approved limits.", "type": "string" }, "quote_id": { "description": "The quote_id to accept (from list_quotes' acceptable_quote_ids)", "type": "string" } }, "required": [ "inquiry_id", "quote_id" ], "type": "object" }, "name": "place_order", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "buyer_note": { "description": "Free-text note to the supplier (optional)", "type": "string" }, "destination_city": { "description": "Destination city (optional)", "type": "string" }, "destination_country": { "description": "Destination country ISO2 (optional)", "type": "string" }, "product_id": { "description": "Product id to request a quote for (from search_products)", "type": "string" }, "quantity": { "description": "Desired quantity (optional)", "type": "number" }, "quantity_unit": { "description": "Unit for the quantity, e.g. 'pcs', 'kg' (optional)", "type": "string" } }, "required": [ "product_id" ], "type": "object" }, "name": "request_quote", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "category": { "description": "Category code (mall_category_code), optional", "type": "string" }, "country_iso": { "description": "Destination country ISO2 (filters by deliverable SKUs)", "type": "string" }, "limit": { "description": "Max results (default 20, max 50)", "type": "number" }, "q": { "description": "Keyword (product title / SKU / supplier name)", "type": "string" }, "supplier_country": { "description": "Supplier origin country ISO2", "type": "string" } }, "type": "object" }, "name": "search_products", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "country": { "description": "Target-market country ISO2 the store operates/sells into (e.g. MY, VN, JP)", "type": "string" }, "industry": { "description": "Industry key (85-industry taxonomy, aligns with product category codes, e.g. 'beauty_personal_care')", "type": "string" }, "limit": { "description": "Max results (default 20, max 50)", "type": "number" }, "q": { "description": "Store name keyword (optional)", "type": "string" } }, "type": "object" }, "name": "search_stores", "outputSchema": null }, { "description": "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.", "inputSchema": { "properties": { "category": { "description": "Product category to discover buyers for", "type": "string" }, "country_iso": { "description": "Target country ISO code", "type": "string" }, "keywords": { "description": "Additional keywords to refine the search", "items": { "type": "string" }, "type": "array" } }, "required": [ "category", "country_iso" ], "type": "object" }, "name": "submit_discovery_job", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:6b47026dd582f96057e38a2da9a22ed684216cd4a626f9fd63bca14c25ad97c5 | sha256sum