Skip to content

SeekAPI China Procurement for AI Agents

by kiddhu · remote · no sign-in to list tools · v0.1.10 · published by GitHub user kiddhu

China Supply Check: Image Stripe USD2.99 live; x402 2.99 USDC/Base; 1–3 suppliers, report/JSON/RFQ.

Deletes · 3Changes · 5

16 tools: 3 can delete or cancel things, 5 change things and 8 only read.

Scanned Oct 21, 2026

10 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http seekapi https://api.seekapi.ai/mcp

Findings

Matches of fixed checks, with the text they matched.

10 warn
  • The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.brand.$ref contains a 44-character base64 string.

    Matched text

    inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.brand.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

    What this check looks for
  • The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.model.$ref contains a 44-character base64 string.

    Matched text

    inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.model.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

    What this check looks for
  • The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.variant.$ref contains a 44-character base64 string.

    Matched text

    inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.variant.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

    What this check looks for
  • The input schema at properties.purchase.anyOf[1].properties.intent_id.$ref contains a 46-character base64 string.

    Matched text

    inputSchema.properties.purchase.anyOf[1].properties.intent_id.$ref: "#/properties/purchase/anyOf/0/properties/intent_id"

    What this check looks for
  • The input schema at properties.purchase.anyOf[1].properties.draft_digest.$ref contains a 45-character base64 string.

    Matched text

    inputSchema.properties.purchase.anyOf[1].properties.draft_digest.$ref: "#/properties/purchase/anyOf/0/properties/draft_digest"

    What this check looks for
  • The input schema at properties.purchase.anyOf[1].properties.customer_confirmed_digest.$ref contains a 48-character base64 string.

    Matched text

    inputSchema.properties.purchase.anyOf[1].properties.customer_confirmed_digest.$ref: "#/properties/purchase/anyOf/0/properties/customer_confirmed_digest"

    What this check looks for
Show 4 more findings
  • The server marks "invoke_product_detail_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_product_detail_v0" says "invoke": a word for a change.

    What this check looks for
  • The server marks "invoke_product_public_offer_snapshot_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_product_public_offer_snapshot_v0" says "invoke": a word for a change.

    What this check looks for
  • The server marks "invoke_shop_product_page_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_shop_product_page_v0" says "invoke": a word for a change.

    What this check looks for
  • The server marks "invoke_seller_public_profile_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_seller_public_profile_v0" says "invoke": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

16 tools

Deletes or cancels 3Claude Code: deny
  • invoke_product_keyword_search_v0Restricted product-search pilot; use China Supply Check for the public sourcing product.No findings

    Why it is in this group

    • The name "invoke_product_keyword_search_v0" says "invoke": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Restricted product-search pilot; use China Supply Check for the public sourcing product. Explicit idempotency is required for eligible orders. Other tools are sandbox.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
    • destructiveHint: true
  • purchase_china_supply_check_v0Buy the exact confirmed brief for 2.99 USDC on Base via official x402.3 findings

    Why it is in this group

    • The name "purchase_china_supply_check_v0" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The server marks it destructive (destructiveHint: true).

    Findings

    • Warn

      The input schema at properties.purchase.anyOf[1].properties.intent_id.$ref contains a 46-character base64 string.

      Matched text

      inputSchema.properties.purchase.anyOf[1].properties.intent_id.$ref: "#/properties/purchase/anyOf/0/properties/intent_id"

      What this check looks for
    • Warn

      The input schema at properties.purchase.anyOf[1].properties.draft_digest.$ref contains a 45-character base64 string.

      Matched text

      inputSchema.properties.purchase.anyOf[1].properties.draft_digest.$ref: "#/properties/purchase/anyOf/0/properties/draft_digest"

      What this check looks for
    • Warn

      The input schema at properties.purchase.anyOf[1].properties.customer_confirmed_digest.$ref contains a 48-character base64 string.

      Matched text

      inputSchema.properties.purchase.anyOf[1].properties.customer_confirmed_digest.$ref: "#/properties/purchase/anyOf/0/properties/customer_confirmed_digest"

      What this check looks for
    Description, as the server wrote it
    Buy the exact confirmed brief for 2.99 USDC on Base via official x402. Signed wallet invocation and independent image delegation required. Authorized paid images hand off automatically after durable settlement; purchase never runs Provider synchronously. Results disclose product match, source evidence and any shortages under their confirmed policy. Call discover_china_supply_check_v0 for current independent image/text payment availability. Human card entry: https://api.seekapi.ai/checkout/stripe/image for USD 2.99 hosted Checkout; legacy text/model Stripe is OFF. Read the existing result; do not pay again.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
    • destructiveHint: true
  • run_china_supply_check_v0Existing text/model: execute paid CSC once.No findings

    Why it is in this group

    • The name "run_china_supply_check_v0" says "run": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Existing text/model: execute paid CSC once. Public images: read automatic fulfillment progress/result, no new Provider effect on this read. Signed wallet invocation required; delivered replay is free, do not pay again.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
    • destructiveHint: true
Changes things 5Claude Code: ask
  • invoke_product_detail_v0Deterministic sandbox fixture only; no provider call or payment.1 finding

    Why it is in this group

    • The name "invoke_product_detail_v0" says "invoke": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "invoke_product_detail_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_product_detail_v0" says "invoke": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Deterministic sandbox fixture only; no provider call or payment. Deterministic Sandbox interpreter for a single item-id product detail; metadata is machine-readable while production and real-value activation remain disabled.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • invoke_product_public_offer_snapshot_v0Deterministic sandbox fixture only; no provider call or payment.1 finding

    Why it is in this group

    • The name "invoke_product_public_offer_snapshot_v0" says "invoke": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "invoke_product_public_offer_snapshot_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_product_public_offer_snapshot_v0" says "invoke": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Deterministic sandbox fixture only; no provider call or payment. Deterministic Sandbox interpreter for a single item-id public offer snapshot; metadata is machine-readable while production and real-value activation remain disabled.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • invoke_seller_public_profile_v0Deterministic sandbox fixture only; no provider call or payment.1 finding

    Why it is in this group

    • The name "invoke_seller_public_profile_v0" says "invoke": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "invoke_seller_public_profile_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_seller_public_profile_v0" says "invoke": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Deterministic sandbox fixture only; no provider call or payment. Deterministic Sandbox interpreter for a single seller-id public profile; metadata is machine-readable while production and real-value activation remain disabled.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • invoke_shop_product_page_v0Deterministic sandbox fixture only; no provider call or payment.1 finding

    Why it is in this group

    • The name "invoke_shop_product_page_v0" says "invoke": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "invoke_shop_product_page_v0" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "invoke_shop_product_page_v0" says "invoke": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Deterministic sandbox fixture only; no provider call or payment. Deterministic Sandbox interpreter for a single shop-id product page; metadata is machine-readable while production and real-value activation remain disabled.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • prepare_china_supply_check_v0Free image-first or text/model China Supply Check draft and confirmation digest.3 findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.brand.$ref contains a 44-character base64 string.

      Matched text

      inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.brand.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

      What this check looks for
    • Warn

      The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.model.$ref contains a 44-character base64 string.

      Matched text

      inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.model.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

      What this check looks for
    • Warn

      The input schema at properties.draft.anyOf[1].properties.product_link.properties.observation.properties.variant.$ref contains a 44-character base64 string.

      Matched text

      inputSchema.properties.draft.anyOf[1].properties.product_link.properties.observation.properties.variant.$ref: "#/properties/draft/anyOf/1/properties/product_link/properties/obs..."

      What this check looks for
    Description, as the server wrote it
    Free image-first or text/model China Supply Check draft and confirmation digest. Use the customer's own language; no Chinese translation or 1688 knowledge is required. A bounded PNG may be sent once as base64 for immediate sanitization; the canonical response contains only digest and metadata. Call discover_china_supply_check_v0 for current payment availability and prices. Review the exact draft before confirming payment. No payment, order, Provider or supplier contact.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
Only reads 8Claude Code: allow
  • discover_china_supply_check_v0Read China Supply Check prices, current payment availability and the product-first public example.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read China Supply Check prices, current payment availability and the product-first public example. The example explains matched products, comparable commercial scores, distinct suppliers and source factory tiers; missing non-hard fields remain RFQ unknowns. Call discover_china_supply_check_v0 and check its live response before starting a new purchase. Existing reports retain their stated selection policy. Listing prices are not formal quotes. Read-only; no payment or sourcing.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • discover_product_detail_v0Read-only discovery for product_detail_v0; no payment or provider call.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read-only discovery for product_detail_v0; no payment or provider call.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • discover_product_keyword_search_v0Read-only discovery for product_keyword_search_v0; no payment or provider call.No findings

    Why it is in this group

    • The name "discover_product_keyword_search_v0" says "search": a word for reading.
    Description, as the server wrote it
    Read-only discovery for product_keyword_search_v0; no payment or provider call.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • discover_product_public_offer_snapshot_v0Read-only discovery for product_public_offer_snapshot_v0; no payment or provider call.No findings

    Why it is in this group

    • The name "discover_product_public_offer_snapshot_v0" says "snapshot": a word for reading.
    Description, as the server wrote it
    Read-only discovery for product_public_offer_snapshot_v0; no payment or provider call.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • discover_seller_public_profile_v0Read-only discovery for seller_public_profile_v0; no payment or provider call.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read-only discovery for seller_public_profile_v0; no payment or provider call.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • discover_shop_product_page_v0Read-only discovery for shop_product_page_v0; no payment or provider call.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read-only discovery for shop_product_page_v0; no payment or provider call.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • result_china_supply_check_v0Read your durable Agent CSC order with independent signed-wallet authentication; zero payment and Provider effects.No findings

    Why it is in this group

    • The description's first verb is "read": a word for reading.
    Description, as the server wrote it
    Read your durable Agent CSC order with independent signed-wallet authentication; zero payment and Provider effects. Completed images return csc.delivery.v4 with 1–3 distinct source-backed suppliers and English report data. Stripe users use their secure card recovery link. Do not repay for existing results.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • status_china_supply_check_v0Read your durable Agent CSC order with independent signed-wallet authentication; zero payment and Provider effects.No findings

    Why it is in this group

    • The name "status_china_supply_check_v0" says "status": a word for reading.
    Description, as the server wrote it
    Read your durable Agent CSC order with independent signed-wallet authentication; zero payment and Provider effects. Completed images return csc.delivery.v4 with 1–3 distinct source-backed suppliers and English report data. Stripe users use their secure card recovery link. Do not repay for existing results.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.1.10. Values in angle brackets are yours to fill in.

claude mcp add --transport http seekapi https://api.seekapi.ai/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__seekapi__discover_china_supply_check_v0",
      "mcp__seekapi__status_china_supply_check_v0",
      "mcp__seekapi__result_china_supply_check_v0",
      "mcp__seekapi__discover_product_keyword_search_v0",
      "mcp__seekapi__discover_product_detail_v0",
      "mcp__seekapi__discover_product_public_offer_snapshot_v0",
      "mcp__seekapi__discover_shop_product_page_v0",
      "mcp__seekapi__discover_seller_public_profile_v0"
    ],
    "ask": [
      "mcp__seekapi__prepare_china_supply_check_v0",
      "mcp__seekapi__invoke_product_detail_v0",
      "mcp__seekapi__invoke_product_public_offer_snapshot_v0",
      "mcp__seekapi__invoke_shop_product_page_v0",
      "mcp__seekapi__invoke_seller_public_profile_v0"
    ],
    "deny": [
      "mcp__seekapi__purchase_china_supply_check_v0",
      "mcp__seekapi__run_china_supply_check_v0",
      "mcp__seekapi__invoke_product_keyword_search_v0"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as seekapi. Review it before you use it.