Global Trade Intelligence MCP Server is an MCP (Model Context Protocol) server on ApifyForge. MCP server for global trade intelligence. Wraps 6 specialized actors: UN COMTRADE (bilateral trade flows), GLEIF (legal entity identifiers), OpenCorporates (200M+ companies), USITC HTS (tariff rates with Section... It costs $0.05 per comtrade-search. It exposes 7 tools: comtrade-search, gleif-lookup, opencorporates-search, hts-tariff-lookup, customs-rulings, supply-chain-risk, import-compliance. Best for AI developers and agent builders who need structured real-world data inside Claude, Cursor, or other MCP-compatible clients. Not ideal for non-AI workflows or use cases that don't involve an MCP-compatible client. Maintenance pulse: 90/100. Last verified March 27, 2026. Built by Ryan Clinton (ryanclinton on Apify).

AIDEVELOPER TOOLS

Global Trade Intelligence MCP Server

Global Trade Intelligence MCP Server is an MCP (Model Context Protocol) server available on ApifyForge at $0.05 per comtrade-search. MCP server for global trade intelligence. Wraps 6 specialized actors: UN COMTRADE (bilateral trade flows), GLEIF (legal entity identifiers), OpenCorporates (200M+ companies), USITC HTS (tariff rates with Section 301/232), CBP (customs classification rulings), and DOL ILAB (forced labor/child labor risk). Includes composite import compliance analysis.

Best for AI developers and agent builders who need structured real-world data inside Claude, Cursor, or other MCP-compatible clients.

Not ideal for non-AI workflows or use cases that don't involve an MCP-compatible client.

Coming soon on Apify Store
$0.05per event

Tools exposed

Each pricing event corresponds to a tool your AI agent can call through MCP.

comtrade-searchSearch UN COMTRADE international trade flow data. · $0.05/call
gleif-lookupLook up Legal Entity Identifiers via GLEIF. · $0.05/call
opencorporates-searchSearch global corporate registry records. · $0.05/call
hts-tariff-lookupLook up Harmonized Tariff Schedule codes and rates. · $0.05/call
customs-rulingsSearch customs classification rulings. · $0.05/call
supply-chain-riskComposite supply chain risk assessment. · $0.15/call
import-complianceComposite import compliance check combining tariffs, customs, and trade data. · $0.15/call

Example prompts

Natural language queries you can ask your AI assistant that would trigger this MCP server.

"Run a comtrade search on Acme Corp and summarize the findings"
"Can you gleif lookup and highlight any red flags?"
"What tools does the Global Trade Intelligence MCP Server have available?"
Last verified: March 27, 2026
90
Actively maintained
Maintenance Pulse
$0.05
Per event

What to know

  • Requires an MCP-compatible client (Claude Desktop, Cursor, Windsurf, or similar).
  • Tool call results depend on the availability of upstream public APIs.
  • Requires an Apify account and API token for authentication.

Maintenance Pulse

90/100
Last Build
Today
Last Version
1d ago
Builds (30d)
8
Issue Response
N/A

Cost Estimate

How many results do you need?

comtrade-searchs
Estimated cost:$5.00

Pricing

Pay Per Event model. You only pay for what you use.

EventDescriptionPrice
comtrade-searchSearch UN COMTRADE international trade flow data.$0.05
gleif-lookupLook up Legal Entity Identifiers via GLEIF.$0.05
opencorporates-searchSearch global corporate registry records.$0.05
hts-tariff-lookupLook up Harmonized Tariff Schedule codes and rates.$0.05
customs-rulingsSearch customs classification rulings.$0.05
supply-chain-riskComposite supply chain risk assessment.$0.15
import-complianceComposite import compliance check combining tariffs, customs, and trade data.$0.15

Example: 100 events = $5.00 · 1,000 events = $50.00

Documentation

Global Trade Intelligence MCP, agent-native trade and import-compliance infrastructure

Global Trade Intelligence MCP is the agent-native, pay-per-call trade and import-compliance stack for AI agents, customs brokers, and supply-chain due-diligence teams.

It cross-references U.S. tariff schedules, CBP customs rulings, UN COMTRADE bilateral trade flows, GLEIF Legal Entity Identifiers, OpenCorporates global registry data, and DOL ILAB forced-labor risk in a single MCP call. Built for import compliance officers, sourcing analysts, UFLPA / ESG screening teams, trade lawyers, and AI agents that need trade context without a $50K enterprise seat.

The category

Global Trade Intelligence MCP is agent-native import-compliance infrastructure. Unlike Bloomberg Trade Suite, Descartes Systems, Panjiva, or Sayari (enterprise seats priced $25K to $100K per year, built for human analysts in a desktop console), this MCP is wired directly into Claude Desktop, Cursor, or any MCP-capable AI agent. It returns structured tariff, classification, sourcing-risk, and counterparty data your agent reasons over, billed per call, with no subscription commitment and no seat licensing.

In one sentence

Look up a U.S. tariff rate, pull matching CBP customs rulings, flag Section 301 (China) and Section 232 (steel / aluminum) exposure, score forced-labor risk on the sourcing country, and verify the counterparty's LEI in a single MCP tool call.

What you get from one call

trade_import_compliance queries USITC HTS, CBP CROSS, and DOL ILAB in parallel for a single product and returns:

  • complianceSignals[] plain-language flags such as "3 tariff lines subject to Section 301", "2 revoked customs rulings", "4 source countries with critical forced-labor risk"
  • tariffAnalysis Section 301 count, Section 232 count, and the top 5 duty rates with HTS numbers
  • classificationRulings active / revoked / modified counts plus the 5 most recent CBP rulings with their HTS codes
  • supplyChainRisk high and critical risk countries from the DOL ILAB list with per-country risk score and flagged goods count
  • crossReferences.overlappingHtsCodes HS codes that appear in both the tariff schedule and CBP ruling results, the strongest "is this product really classified here?" signal
  • isDryRun flag on the supply-chain block, true when no DOL key is supplied so an agent never reads sample data as live data

What you also get: cross-source HS-code reconciliation, Section 301 / 232 flagging, UFLPA-relevant forced-labor screening, dry-run-aware ILAB

What makes this different

  • Live USITC tariff data. Duty rates, special / FTA rates, Column 2 rates, plus Section 301 (China) and Section 232 (steel / aluminum) flags computed from footnote data, not a stale snapshot.
  • Cross-source HS-code reconciliation. The composite tool computes which HS codes appear in both the tariff schedule and CBP rulings for the same product keyword, so an agent can flag a classification mismatch before the broker does.
  • Dry-run-aware supply-chain risk. When no DOL ILAB key is supplied, the response carries isDryRun: true instead of silently returning sample data as live data. An agent never confuses a stub for a live screen.

Before vs after

Without this MCPWith this MCP
Open USITC HTS, CBP CROSS, DOL ILAB, GLEIF, OpenCorporates, and UN COMTRADE in six tabsOne tool call, three of those queried in parallel for the composite, six available individually
Manually scan tariff footnotes for Section 301 and Section 232 referencesCounts pre-computed, surfaced in complianceSignals[]
Cross-check CBP rulings by hand to confirm an HS classificationoverlappingHtsCodes reports where the tariff line and the ruling line meet
Read PDF UFLPA guidance to map a sourcing country to forced-labor riskDOL ILAB country, good, HS-code, sector, and exploitation-type filters return a scored country list
Pay $25K to $100K per year for a Bloomberg / Panjiva / Sayari seatPay $0.05 per individual call, $0.15 for the composite

Architecture

6 trade and compliance sources  →  normalization layer  →  composite compliance tool
   (UN COMTRADE, GLEIF,             (consistent shape per       ↓
    OpenCorporates, USITC HTS,       source, filtered for       parallel HTS + CBP + ILAB fan-out
    CBP CROSS, DOL ILAB)             header rows + warnings)    ↓
                                          ↓                     HS-code cross-reference engine
                                     6 individual tools         ↓
                                     for source-level access    Section 301 / 232 flag aggregation
                                          ↓                     ↓
                                     trade_list_sources         complianceSignals[] + structured output
                                     (free, no charge)

Built for

Customs brokers running classification triage, import compliance officers responsible for Section 301 and Section 232 exposure, supply-chain due-diligence teams screening sourcing countries for UFLPA-relevant forced-labor risk, ESG and sustainability teams auditing supplier networks, trade lawyers researching CBP ruling precedent before a tariff dispute, sourcing analysts diversifying away from high-tariff or high-risk origins, and AI agents that need trade and compliance context wired directly into Claude Desktop or Cursor.

This server runs in Standby mode on the Apify platform. It orchestrates UN COMTRADE, GLEIF, OpenCorporates, USITC HTS, CBP CROSS, and DOL ILAB in parallel, cross-references HS codes across sources, and returns structured JSON your AI agent reasons over directly.

Questions this MCP answers

  • "What is the U.S. duty rate for this product if I source it from Vietnam?"
  • "Are any of these SKUs subject to Section 301 China tariffs or Section 232 steel and aluminum tariffs?"
  • "Has CBP issued any classification rulings on this product category, and are any of them revoked?"
  • "Which countries have known forced-labor risk for cotton, cobalt, or apparel?"
  • "What is the Legal Entity Identifier for this counterparty, and what is the ultimate parent?"
  • "What is the bilateral trade volume between the U.S. and China for HS code 8541 (semiconductors)?"
  • "Does this OpenCorporates entity exist in the jurisdiction the supplier claims?"
  • "If I shift sourcing from China to Bangladesh for garments, what happens to my Section 301 exposure and my forced-labor risk profile?"

For AI agents

  • First tool to reach for when a prompt mentions HTS codes, tariff rates, customs classification, Section 301, Section 232, UFLPA, forced labor, child labor, country of origin, LEI, or sourcing risk.
  • Call trade_list_sources first (it is free). It lists all 8 tools with their credential requirements, no upstream fetch, no charge.
  • Use trade_import_compliance for one-shot compliance summaries. It fans out to HTS, CBP, and ILAB in parallel and cross-references HS codes; do not chain those three tools separately.
  • Branch on complianceSignals[], not raw counts. Each signal is a plain-language flag designed for agent reasoning ("3 tariff lines subject to Section 301", "2 revoked customs rulings").
  • Handle the OpenCorporates warning payload. Without an API key, trade_opencorporates returns { warning, details } instead of company data. Surface the warning, do not silently return zero results.
  • Check isDryRun: true on supply-chain output. Without a DOL key, ILAB returns sample data with the flag set. Never present dry-run data to the user as a live screen.
  • Per-call api_key arguments override env vars. A user can pass their own OpenCorporates or DOL key per call without redeploying the server.

Use this MCP when an AI agent needs to:

  • compute U.S. tariff exposure for a product or SKU list
  • check Section 301 (China) or Section 232 (steel / aluminum) coverage
  • pull CBP customs rulings before a classification dispute
  • screen sourcing countries for UFLPA-relevant forced-labor and child-labor risk
  • verify a counterparty's legal entity, jurisdiction, and ultimate parent
  • analyze bilateral trade flows between two countries by HS commodity
  • support import-compliance review, sourcing diversification, or ESG audits with structured evidence

What data can you access?

Data PointSourceExample
🌐 Bilateral international trade flows, HS-commodity import / export valuesUN COMTRADEUSA imports HS 8541 from China, $14.2B (2023)
🏷️ Legal Entity Identifier (20-char LEI), corporate hierarchy, BIC codeGLEIFLEI 549300V9QSIG4WX4GJ96, ultimate parent listed
🏢 200M+ companies across 140+ jurisdictions, optional officers / directorsOpenCorporates17 active "Acme Trading" companies across us_ca, gb, sg
📊 U.S. HTS rates: MFN, special / FTA, Column 2, plus Section 301 / 232 flagsUSITC HTSHTS 7304.19.10.30 general 0%, Section 232 flagged
⚖️ ~220K CBP CROSS classification rulings (HQ + NY collections), with full text optionalCBP CROSSN082097, "Classification of LED panels", active, HS 9405.40
🛑 DOL ILAB forced-labor / child-labor risk by country, HS-code, sector, exploitation typeDOL ILABChina cotton, CL/FL, riskLevel Critical, score 89
🚩 Section 301 (China tariff) and Section 232 (steel / aluminum) flagsUSITC HTS footnotes47 tariff lines flagged Section 301 in chapter 85
🔁 Revoked / modified ruling status detectionCBP CROSS4 revoked rulings out of 12 matches for "LED panel"
🧭 Cross-source HS-code overlap detectionHTS + CBP composite3 HS codes appear in both tariff and ruling results
🏭 Per-country risk score, flagged goods count, forced-labor goods countDOL ILABUzbekistan cotton, 8 flagged goods, 6 with forced labor

Why use Global Trade Intelligence MCP?

Most import compliance work is:

  • manual and slow (60-90 minutes per product across USITC HTS, CBP CROSS, DOL ILAB, and sourcing-country research)
  • inconsistent across analysts (Section 301 footnote logic is easy to miss, ILAB country lists are not always cross-referenced to HS codes)
  • expensive at scale (Bloomberg Trade Suite, Panjiva, and Sayari seats range $25K to $100K per analyst per year)
  • disconnected (tariff data lives in one tool, CBP rulings in another, forced-labor lists in a third PDF)

This MCP collapses that into one tool call. trade_import_compliance queries the three highest-impact sources in parallel, cross-references HS codes, flags Section 301 and Section 232 exposure, and returns a structured compliance signal list your agent or pipeline can branch on. Built to support import compliance review, sourcing diversification, and UFLPA / ESG due diligence on a per-call basis.

Platform capabilities

  • Scheduling: re-screen tariff exposure on a quarterly cadence as Section 301 lists change
  • API access: trigger compliance checks from Python, JavaScript, or any HTTP client using standard MCP protocol
  • Parallel data fetching: the composite tool queries HTS, CBP, and ILAB simultaneously, not sequentially
  • Monitoring: receive Slack or email alerts via Apify webhooks when high-risk sourcing signals fire
  • Integrations: pipe results into Airtable, Notion, or any webhook-compatible compliance management system

Features

Trade and tariff data

  • USITC HTS lookup by keyword, HTS number, or chapter (01-99) with MFN, special / FTA, and Column 2 rates.
  • Section 301 detection via footnote parsing for China-specific additional duties.
  • Section 232 detection for steel and aluminum tariff exposure.
  • UN COMTRADE bilateral flows by reporter / partner / commodity / trade flow / year, with reporters[] and partners[] aggregations.

Customs classification

  • CBP CROSS ruling search across ~220K rulings in HQ and NY collections.
  • Boolean search operators supported on the search term.
  • Commodity grouping filter across 10 categories (Apparel / Footwear / Textiles, Electronics, Base Metals, Pharmaceuticals, etc.).
  • Status detection: active / revoked / modified counts surfaced in the response.
  • Full ruling text optional via include_full_text (adds 1 request per ruling).

Supply-chain risk

  • DOL ILAB forced and child labor list filtered by country, good, HS-code prefix, sector, exploitation type (CL / FL / CL/FL), or region.
  • Risk breakdown with critical / high / medium / low country counts.
  • Dry-run mode when no DOL key is set, response includes isDryRun: true so an agent never misreads sample data.

Counterparty intelligence

  • GLEIF LEI lookup by company name (fuzzy) or exact 20-char LEI, with corporate hierarchy.
  • OpenCorporates registry search across 200M+ companies in 140+ jurisdictions, optional officer / director lookup.
  • Country and jurisdiction filters on both GLEIF and OpenCorporates.

Composite analysis

  • Cross-source HS-code reconciliation between tariff lines and CBP rulings.
  • Aggregated complianceSignals[] in plain language for agent reasoning.
  • Parallel fan-out to HTS + CBP + ILAB inside a single billable event.

Quickstart workflows

UFLPA cotton screening

shipment manifest with cotton garments from Xinjiang
 → trade_supply_chain_risk (good: "Cotton", country: "China")
 → if riskBreakdown.critical > 0
   → flag shipment for human review, attach country list with riskScore
   → trade_import_compliance (product: "cotton garments", source_country: "China") for full compliance dossier

Section 301 exposure check on a SKU list

SKU list with HTS codes
 → for each HTS code: trade_hts_tariff (hts_number: code)
   → if section301Items > 0
     → log SKU, HTS, and additional duty rate to a Section 301 exposure register
   → if section232Items > 0
     → log SKU under steel / aluminum exposure

Counterparty verification for a new supplier

new supplier name + jurisdiction
 → trade_opencorporates (query: name, jurisdiction_code: code, include_officers: true)
   → confirm entity exists, capture officer list
 → trade_gleif_lei (query: name, country: ISO2)
   → confirm LEI, capture ultimate parent
 → if officers or ultimate parent map to a sanctioned-adjacent entity, escalate

Use cases for global trade intelligence

Import compliance review before a shipment lands

Customs brokers and in-house compliance officers can run trade_import_compliance against a product description before booking a shipment. The tool returns the top tariff lines, Section 301 and Section 232 counts, recent CBP rulings (including any that have been revoked), and the forced-labor risk profile of the sourcing country. A revoked ruling on the proposed classification is a redirect-to-broker signal; a critical ILAB country flag is a UFLPA-review signal. This is the workflow a customs broker would otherwise stitch together across three tabs and a PDF.

Sourcing-country risk diversification

Sourcing analysts considering shifting production from one country to another can run trade_supply_chain_risk for the candidate country plus the product to see what other goods that country produces under forced-labor or child-labor flags. Pair with trade_un_comtrade to confirm the candidate country actually exports the product at meaningful volume. Avoids the trap of moving sourcing to a country that fails the next UFLPA review cycle.

Counterparty due diligence on a new supplier

Procurement and compliance teams onboarding a new overseas supplier can run trade_opencorporates to confirm the entity exists in the claimed jurisdiction, then trade_gleif_lei to capture the LEI and ultimate parent. Cross-referenced against the supplier's stated address and ownership, this surfaces shell entities, mismatched jurisdictions, and unclear ownership chains. The optional include_officers flag adds director-level visibility for higher-risk relationships.

Customs ruling research before a classification dispute

When CBP challenges a classification or an importer is preparing a binding ruling request, trade_customs_rulings returns precedent across the HQ (binding) and NY (non-binding) collections. Filter by commodity grouping and date, sort by date descending, and pull full text on the most recent matches. The active / revoked / modified split tells the legal team which rulings are still good law.

ESG and UFLPA supply-chain audit

Sustainability and ESG teams auditing a supplier network can run trade_supply_chain_risk filtered by exploitation_type: "FL" (forced labor) or "CL/FL" (both), per region or per sector. Pair with trade_un_comtrade to weight risk by actual bilateral trade volume into the U.S. The result is an evidence-linked risk register suitable for an ESG report or a UFLPA review, replacing manual research across DOL PDFs and country reports.

Section 301 exposure audit across a SKU catalog

Importers with broad China sourcing can batch trade_hts_tariff calls across their HTS code list, capturing section301Items and section232Items counts per code. Combined into a Section 301 exposure register, this becomes the basis for quarterly board-level reporting on China tariff exposure and the input to a sourcing-diversification roadmap.

How to connect this global trade intelligence MCP

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "global-trade-intelligence": {
      "url": "https://global-trade-intelligence-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}

Cursor, Windsurf, or Cline

Use the same URL and token in your MCP server settings panel. The server communicates via standard MCP protocol over HTTP POST to /mcp.

Python (via requests)

import requests

response = requests.post(
    "https://global-trade-intelligence-mcp.apify.actor/mcp",
    headers={
        "Content-Type": "application/json",
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
    },
    json={
        "jsonrpc": "2.0",
        "method": "tools/call",
        "params": {
            "name": "trade_import_compliance",
            "arguments": {
                "product": "cotton garments",
                "source_country": "China",
                "dol_api_key": "YOUR_DOL_KEY"
            }
        },
        "id": 1
    }
)
result = response.json()
report = result["result"]["content"][0]["text"]
print(report)

JavaScript

const response = await fetch(
  "https://global-trade-intelligence-mcp.apify.actor/mcp",
  {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "Authorization": "Bearer YOUR_APIFY_TOKEN"
    },
    body: JSON.stringify({
      jsonrpc: "2.0",
      method: "tools/call",
      params: {
        name: "trade_hts_tariff",
        arguments: { keyword: "lithium battery", max_results: 20 }
      },
      id: 1
    })
  }
);
const data = await response.json();
const report = JSON.parse(data.result.content[0].text);
console.log(`Total tariff lines: ${report.total}`);
console.log(`Section 301 exposure: ${report.section301Items}`);
console.log(`Section 232 exposure: ${report.section232Items}`);

cURL

# Look up CBP customs rulings for LED panels
curl -X POST "https://global-trade-intelligence-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "trade_customs_rulings",
      "arguments": {
        "search_term": "LED panel",
        "collection": "HQ",
        "sort_by": "DATE_DESC",
        "max_results": 10
      }
    },
    "id": 1
  }'

Environment variables

This MCP has more credential nuance than its siblings. Per-call api_key arguments override the corresponding env vars, so a customer can pass their own keys per call without redeploying the server.

VariableRequiredPurpose
OPENCORPORATES_API_KEYRecommendedFree key from opencorporates.com/api_accounts/new. Without it, trade_opencorporates returns a structured warning payload instead of company data. Can also be passed per-call as api_key.
DOL_API_KEYRecommendedFree key from dataportal.dol.gov/registration. Without it, trade_supply_chain_risk and the supply-chain branch of trade_import_compliance return dry-run sample data with isDryRun: true. Can also be passed per-call as api_key or dol_api_key.
COMTRADE_SUBSCRIPTION_KEYOptionalUN COMTRADE subscription key. Without it, free preview endpoint caps at 500 records. Can also be passed per-call as subscription_key.
STANDBY_IDLE_TIMEOUT_SECSOptionalStandby idle-shutdown window in seconds (default 300, minimum 60). The instance exits after this idle period to release platform compute; the next request cold-starts a fresh one.

GLEIF, USITC HTS, and CBP CROSS need no key.

MCP tools

Available tools: the full MCP tool catalogue with per-call pricing, $0.05 for source tools and $0.15 for composite analysis

ToolInputPriceWhat it returns
trade_un_comtradereporter, partner, commodity, trade_flow, year$0.05Bilateral trade values and quantities. reporters[], partners[], and full data[]. Capped at 500 records without subscription key
trade_gleif_leiquery (company name or 20-char LEI), country, status$0.05LEI, corporate hierarchy (parent / ultimate parent), addresses, BIC codes. No API key required
trade_opencorporatesquery, jurisdiction_code, country_code, status, include_officers$0.05Companies split into companies and officers counts plus data. Requires api_key or returns a warning payload
trade_hts_tariffkeyword, hts_number, or chapter (01-99)$0.05USITC HTS rates: MFN, special / FTA, Column 2. section301Items and section232Items counts plus full duty data
trade_customs_rulingssearch_term or ruling_number, collection, commodity_grouping, date range$0.05CBP CROSS rulings split into active / revoked / modified counts plus data. Optional include_full_text adds 1 request per ruling
trade_supply_chain_riskcountry, good, hs_code, sector, exploitation_type, region$0.15DOL ILAB country risk records, riskBreakdown (critical / high / medium / low). Returns isDryRun: true without DOL key
trade_import_complianceproduct, hts_code, source_country, dol_api_key$0.15Composite: HTS + CBP + ILAB in parallel. complianceSignals[], tariffAnalysis, classificationRulings, supplyChainRisk, crossReferences.overlappingHtsCodes
trade_list_sources(none)FreeLists all 8 tools and 6 sources with credential requirements. No upstream fetch, no charge

The trade_supply_chain_risk tool is priced at $0.15 because its DOL ILAB country-and-good cross-referencing carries the same compute load as the composite. The trade_import_compliance tool runs three sub-actors in parallel for the same $0.15.

Tool input reference

ToolParameterTypeRequiredDescription
trade_un_comtradereporterstringNoReporting country name or ISO code (e.g. "USA", "China", "826")
trade_un_comtradepartnerstringNoPartner country name or ISO code
trade_un_comtradecommoditystringNoHS commodity code (e.g. "0101", "2701") or "TOTAL" for aggregates
trade_un_comtradetrade_flowenumNoImport / Export / Re-Import / Re-Export / All (default All)
trade_un_comtradeyearstringNoYear(s) as string (e.g. "2023" or "2022,2023")
trade_un_comtradesubscription_keystringNoUN COMTRADE subscription key for >500 records
trade_gleif_leiquerystringYesCompany name (fuzzy) or exact 20-char LEI code
trade_gleif_leicountrystringNoISO 2-letter country code filter (e.g. "US", "GB", "DE")
trade_gleif_leistatusenumNoACTIVE / INACTIVE
trade_opencorporatesquerystringYesCompany name or keyword
trade_opencorporatesjurisdiction_codestringNoJurisdiction code (e.g. "us_ca", "gb", "de")
trade_opencorporatescountry_codestringNoTwo-letter country code (e.g. "us", "gb")
trade_opencorporatesstatusenumNo"" / Active / Inactive / Dissolved
trade_opencorporatesapi_keystringYes (for real data)OpenCorporates API key. Without it, returns a warning
trade_opencorporatesinclude_officersbooleanNoAlso search officers / directors (default false)
trade_hts_tariffkeywordstringOne of threeProduct keyword (e.g. "coffee", "solar panel", "steel pipe")
trade_hts_tariffhts_numberstringOne of threeHTS code or prefix (e.g. "0901.11.00", "7304")
trade_hts_tariffchapterstringOne of threeHTS chapter 01-99 (e.g. "72" = Iron and Steel)
trade_customs_rulingssearch_termstringOne of twoKeyword search, supports Boolean operators
trade_customs_rulingsruling_numberstringOne of twoDirect lookup by ruling number (e.g. "N082097", "H289712")
trade_customs_rulingscollectionenumNoALL / HQ / NY (default ALL)
trade_customs_rulingscommodity_groupingenumNo11 categories including Apparel, Electronics, Base Metals, Pharmaceuticals
trade_customs_rulingsinclude_full_textbooleanNoFetch full ruling text, adds 1 request per ruling (default false)
trade_supply_chain_riskcountrystringNoCountry name partial match (e.g. "China", "Bangladesh")
trade_supply_chain_riskgoodstringNoProduct name partial match (e.g. "Cotton", "Cobalt", "Garments")
trade_supply_chain_riskhs_codestringNoHS code prefix filter (e.g. "52" for cotton, "26" for ores)
trade_supply_chain_riskexploitation_typeenumNoCL (Child Labor) / FL (Forced Labor) / CL/FL (both)
trade_supply_chain_riskapi_keystringYes (for live data)Free DOL API key. Without it, returns dry-run sample data
trade_import_complianceproductstringYesProduct name or keyword (e.g. "steel pipe", "cotton garments", "lithium batteries")
trade_import_compliancehts_codestringNoHTS code or prefix if known (e.g. "7304", "5208")
trade_import_compliancesource_countrystringNoSourcing country for supply-chain risk (e.g. "China", "Vietnam")
trade_import_compliancedol_api_keystringNoFree DOL API key for live supply-chain data

Output example

trade_import_compliance for "cotton garments" sourced from China with a live DOL key:

{
  "product": "cotton garments",
  "htsCode": null,
  "sourceCountry": "China",
  "sources": ["USITC HTS", "CBP Customs Rulings", "DOL ILAB"],
  "complianceSignals": [
    "12 tariff line(s) subject to Section 301 (China tariffs)",
    "2 revoked customs ruling(s) — classification may have changed",
    "3 country/ies with high/critical forced labor or child labor risk"
  ],
  "signalCount": 3,
  "tariffAnalysis": {
    "total": 20,
    "section301Exposure": 12,
    "section232Exposure": 0,
    "topRates": [
      {
        "htsNumber": "6109.10.00.40",
        "description": "T-shirts, singlets and other vests, knitted or crocheted, of cotton, men's",
        "generalRate": "16.5%",
        "isSection301": true,
        "isSection232": false
      },
      {
        "htsNumber": "6203.42.40.11",
        "description": "Men's trousers and shorts, of cotton, not knitted or crocheted",
        "generalRate": "16.6%",
        "isSection301": true,
        "isSection232": false
      },
      {
        "htsNumber": "6204.62.40.11",
        "description": "Women's trousers and shorts, of cotton, not knitted or crocheted",
        "generalRate": "16.6%",
        "isSection301": true,
        "isSection232": false
      },
      {
        "htsNumber": "5208.32.30.40",
        "description": "Woven fabrics of cotton, containing 85% or more by weight of cotton",
        "generalRate": "10.2%",
        "isSection301": true,
        "isSection232": false
      },
      {
        "htsNumber": "6105.10.00.30",
        "description": "Men's shirts, knitted or crocheted, of cotton",
        "generalRate": "19.7%",
        "isSection301": true,
        "isSection232": false
      }
    ]
  },
  "classificationRulings": {
    "total": 10,
    "active": 7,
    "revoked": 2,
    "recentRulings": [
      {
        "rulingNumber": "N324871",
        "subject": "Classification of cotton men's woven shirts from Vietnam",
        "rulingDate": "2024-02-14",
        "status": "active",
        "htsCodes": ["6205.20.20.51"]
      },
      {
        "rulingNumber": "H316209",
        "subject": "Country of origin determination for cotton garments assembled in Bangladesh",
        "rulingDate": "2023-09-08",
        "status": "active",
        "htsCodes": ["6204.62.40.11"]
      },
      {
        "rulingNumber": "N289437",
        "subject": "Cotton blended garments, classification under chapter 62",
        "rulingDate": "2022-11-30",
        "status": "revoked",
        "htsCodes": ["6204.43.40.10"]
      }
    ]
  },
  "supplyChainRisk": {
    "total": 4,
    "isDryRun": false,
    "highRiskCountries": [
      {
        "country": "China",
        "riskLevel": "Critical",
        "riskScore": 91,
        "flaggedGoods": 14,
        "forcedLaborGoods": 9
      },
      {
        "country": "Uzbekistan",
        "riskLevel": "High",
        "riskScore": 73,
        "flaggedGoods": 6,
        "forcedLaborGoods": 4
      },
      {
        "country": "Turkmenistan",
        "riskLevel": "High",
        "riskScore": 70,
        "flaggedGoods": 4,
        "forcedLaborGoods": 3
      }
    ]
  },
  "crossReferences": {
    "overlappingHtsCodes": 2,
    "note": "Found 2 HTS code(s) appearing in both tariff schedule and customs rulings"
  }
}

The complianceSignals[] array is the headline. An agent can branch on it directly without parsing the full body. The crossReferences.overlappingHtsCodes count is the strongest "this classification is real, the broker uses it too" signal.

Output fields

Composite output (trade_import_compliance)

FieldTypeDescription
complianceSignals[]string[]Plain-language flags ready for agent reasoning
signalCountnumberCount of populated signals
tariffAnalysis.section301ExposurenumberTariff lines flagged Section 301 (China)
tariffAnalysis.section232ExposurenumberTariff lines flagged Section 232 (steel / aluminum)
tariffAnalysis.topRates[]object[]Top 5 tariff lines with HTS number, description, rate, flags
classificationRulings.active / .revokednumberCBP ruling status counts
classificationRulings.recentRulings[]object[]5 most recent rulings with HTS codes
supplyChainRisk.highRiskCountries[]object[]High / critical risk countries with riskScore and flagged-goods count
supplyChainRisk.isDryRunbooleanTrue when no DOL API key was supplied
crossReferences.overlappingHtsCodesnumberHS codes appearing in both tariff and ruling results

Per-source response shapes (individual tools)

ToolTop-level shape
trade_un_comtradetotal, reporters[], partners[], data[]
trade_gleif_leitotal, data[] (LEI records with hierarchy)
trade_opencorporatestotal, companies, officers, data.companies[], data.officers[] OR warning payload
trade_hts_tarifftotal, section301Items, section232Items, data[]
trade_customs_rulingstotal, active, revoked, modified, data[]
trade_supply_chain_risktotal, riskBreakdown.{critical,high,medium,low}, isDryRun, data[]

How much does it cost to run import compliance?

Global Trade Intelligence MCP uses pay-per-event pricing: $0.05 per source tool call, $0.15 for trade_supply_chain_risk and trade_import_compliance. Platform compute is included. The trade_list_sources tool is free.

ScenarioTool callsComposite callsTotal cost
Single tariff check on one HTS code1 × $0.050$0.05
Full import compliance review on one product01 × $0.15$0.15
Counterparty verification (OpenCorporates + GLEIF)2 × $0.050$0.10
UFLPA cotton screen + full compliance dossier02 × $0.15$0.30
50-SKU Section 301 exposure audit50 × $0.050$2.50
50-SKU full compliance batch050 × $0.15$7.50
Monthly 200-vendor due-diligence cycle (counterparty + composite)400 × $0.05200 × $0.15$50.00

You can set a maximum spending limit per run to cap exposure. The actor stops when your budget is reached.

Apify's free tier includes $5 of monthly platform credits, enough for 100 source-tool calls or 33 composite calls before adding payment. Compare against a Bloomberg Trade Suite, Panjiva, or Sayari seat at $25K to $100K per year. Most teams using this MCP spend under $100 per month with no subscription commitment.

How it works

  1. Parallel fan-out. The composite tool calls USITC HTS, CBP CROSS, and DOL ILAB via Promise.all. Each sub-actor is independently rate-limited and timed out at 120 seconds. A slow or failing source degrades the result rather than blocking it.
  2. Header-row filtering. Each source returns occasional header / message rows that are filtered out before aggregation, so counts reflect real records.
  3. Section 301 / 232 flag aggregation. HTS rows carry isSection301 and isSection232 booleans derived from footnote parsing. The composite tool counts flagged lines and emits a complianceSignals[] entry when either count is non-zero.
  4. Cross-source HS-code reconciliation. The composite tool extracts HS codes from tariff results (htsNumber) and from CBP ruling results (htsTariffCodes), then computes overlap on the 4-digit prefix. Overlapping codes are surfaced as crossReferences.overlappingHtsCodes.
  5. Dry-run propagation. ILAB without a key returns sample data with a dryRun flag. The composite tool propagates this as supplyChainRisk.isDryRun: true so an agent can branch on it.
  6. Standby idle-shutdown. The MCP exits after STANDBY_IDLE_TIMEOUT_SECS (default 300) of no activity to release platform compute. The next request cold-starts a fresh instance.

Tips for best results

  1. Pass an HS-code prefix when you know it. trade_hts_tariff with hts_number: "7304" returns cleaner tariff results than keyword: "steel pipe", which can pull in unrelated chapters. Use the keyword as a fallback when the code is unknown.

  2. Use the HQ collection for binding CBP rulings. Set collection: "HQ" on trade_customs_rulings for Headquarters rulings, which are binding precedent. The NY collection is non-binding port-level guidance. Filter by commodity_grouping when the product crosses multiple chapters.

  3. Supply a DOL API key to unlock live UFLPA screening. Without it, trade_supply_chain_risk and the supply-chain branch of trade_import_compliance return dry-run sample data. The free key from dataportal.dol.gov/registration unlocks the live ILAB list, which is what UFLPA review actually requires.

  4. Cross-reference overlappingHtsCodes for compliance certainty. When the composite tool reports overlapping HS codes between the tariff schedule and CBP rulings, the classification is corroborated across two independent sources. Zero overlap is a signal to dig deeper before committing to a classification.

  5. Use country ISO codes on UN COMTRADE for stability. Country name resolution on the COMTRADE API is fuzzy ("USA" vs "United States" vs "United States of America"). Pass the ISO numeric code ("840" for the U.S., "156" for China) when you need deterministic resolution.

  6. Cache trade_list_sources results. The list is static for the life of the build, so an agent can cache the tool catalog after one call rather than re-fetching it. It is free either way, but it saves a round-trip.

  7. Set include_full_text: false for ruling searches when you only need metadata. Full text adds one request per ruling and significantly increases latency. Pull metadata first, then re-query specific rulings with ruling_number and include_full_text: true for the ones you need.

Combine with other Apify actors

ActorHow to combine
UN COMTRADE SearchPull raw bilateral trade flow data directly for portfolio-level trade analysis outside the MCP
GLEIF LEI LookupLook up Legal Entity Identifiers in bulk for a counterparty list
OpenCorporates SearchRun cross-jurisdictional corporate-registry searches with officer detail
USITC HTS Tariff SearchPull HTS tariff data directly with Section 301 and 232 flags for a SKU catalog
CBP Customs RulingsPull CBP CROSS rulings directly for legal research and tariff-dispute preparation
ILAB Supply Chain IntelPull the DOL ILAB forced and child labor list directly for ESG audits
Company Deep ResearchCombine with trade_opencorporates for full counterparty intelligence on new suppliers

Limitations

  • UN COMTRADE free preview caps at 500 records. Without a subscription_key, large queries are truncated. Use ISO country codes and narrow year ranges to stay under the cap, or supply a subscription key.
  • ILAB without a key returns dry-run sample data only. trade_supply_chain_risk and the supply-chain branch of trade_import_compliance will set isDryRun: true. Always supply the free DOL key for production use.
  • OpenCorporates without a key returns a warning payload, not data. The actor returns { warning, details } rather than companies. Surface the warning to the user, do not interpret it as zero results.
  • USITC HTS data is U.S.-only. This MCP does not include EU TARIC, UK Global Tariff, Canada CBSA, or other national tariff schedules. For non-U.S. import compliance, additional sources are required.
  • Section 301 lists change. The Section 301 China tariff list is updated periodically by USTR. Re-screen high-exposure SKUs quarterly. The actor flags lines that USITC HTS marks as Section 301 at query time; it does not maintain a separate change log.
  • CBP NY rulings are non-binding. NY rulings are port-level guidance, not binding precedent. For binding rulings, filter collection: "HQ". The actor surfaces both collections without distinguishing precedential weight beyond the collection code.
  • GLEIF corporate-hierarchy depth is one level. The tool returns immediate parent and ultimate parent. Multi-tier holding-company chains beyond ultimate parent require additional lookups.
  • OpenCorporates jurisdiction coverage varies. Coverage is strong for the U.S., U.K., and EU, weaker for some emerging markets. Some jurisdictions return name-only matches without officer data even with include_officers: true.
  • Child actor timeout is 120 seconds. A slow source returns an empty array for that source. The composite result is computed on available data; an empty branch is visible in the response.

Integrations

  • Apify API, trigger compliance and tariff checks programmatically from ERP or PLM systems
  • Webhooks, push high-risk sourcing signals to Slack, email, or a compliance case-management tool
  • Zapier, connect Airtable supplier registers or Google Sheets SKU lists; auto-log Section 301 exposure when new SKUs are added
  • Make, build sourcing workflows that auto-flag products with critical-risk source countries
  • Google Sheets, export tariff exposure registers and counterparty due-diligence results to shared spreadsheets
  • LangChain / LlamaIndex, embed trade and compliance lookups as tools in LLM agent pipelines for sourcing, due-diligence, and ESG workflows

Troubleshooting

trade_opencorporates returns { warning: "No OpenCorporates API key provided" } and no companies. The actor requires an API key for real data. Get a free key at opencorporates.com/api_accounts/new, then either set OPENCORPORATES_API_KEY as an env var or pass it as the api_key argument per call.

trade_supply_chain_risk response shows isDryRun: true. The DOL API key is missing. Register a free key at dataportal.dol.gov/registration and pass it as api_key, or set DOL_API_KEY in the environment. Sample data is not safe for production UFLPA decisions.

trade_hts_tariff returns no results despite a known keyword. When both keyword and hts_number could match, hts_number is treated as authoritative. If you pass only keyword and the keyword is too generic, narrow it with a chapter filter ("chapter": "72" for iron and steel) or a more specific term ("hot-rolled steel coil" rather than "steel").

trade_un_comtrade returns nothing for a known trade flow. Country name resolution can mismatch ("USA" vs "United States" vs ISO code "840"). Pass the ISO numeric code as reporter and partner for deterministic resolution. Confirm the commodity code is valid HS (4-, 6-, or 10-digit) and the year is within the COMTRADE coverage range.

CBP ruling search returns truncated results. The default max_results is 20 on trade_customs_rulings. Raise it up to 100 when researching a broad classification topic. Setting include_full_text: true slows the response significantly; pull metadata first, then re-query specific rulings for full text.

Standby instance feels slow on the first call. After STANDBY_IDLE_TIMEOUT_SECS of inactivity (default 300), the MCP exits to release compute. The first call after idle cold-starts a fresh instance, which takes a few seconds. Subsequent calls hit the warm instance.

Responsible use

  • All data accessed by this server comes from publicly available trade and compliance sources: UN COMTRADE, GLEIF, OpenCorporates (with API key), USITC HTS, CBP CROSS, and DOL ILAB.
  • UFLPA and forced-labor signals are screening indicators, not legal determinations. A flagged country or HS code requires human review, supplier audit, and qualified legal advice before any adverse sourcing decision.
  • Tariff and classification results are advisory. CBP NY rulings are non-binding; binding rulings come from the HQ collection or from a formal binding ruling request submitted to CBP.
  • Counterparty data from OpenCorporates and GLEIF reflects the underlying registry state at query time. Always corroborate against the registry of record before relying on it for contracting or compliance decisions.
  • Comply with applicable data protection and export-control regulations when storing or sharing screening outputs.
  • For guidance on web scraping and data use legality, see Apify's guide.

FAQ

How does this compare to Sayari, Panjiva, or Descartes Systems? Sayari, Panjiva (S&P Global Market Intelligence), and Descartes Systems are enterprise compliance platforms with seat licensing in the $25K to $100K+ per analyst per year range, built for human analysts in a desktop console. Global Trade Intelligence MCP is the agent-native equivalent: pay per call, no seat licensing, accessed by AI agents via the MCP protocol. The data sources overlap (tariffs, customs rulings, forced-labor lists, corporate registry) but the consumption model is different. Use the enterprise platforms when a team of analysts works in a desktop UI. Use this MCP when an AI agent or programmatic pipeline needs trade context.

What is UFLPA and how does this MCP help? The Uyghur Forced Labor Prevention Act (UFLPA) creates a rebuttable presumption that goods made wholly or in part in China's Xinjiang region, or by entities on the UFLPA Entity List, were made with forced labor and are therefore inadmissible into the U.S. trade_supply_chain_risk queries the DOL ILAB list of goods produced with forced or child labor, filterable by country, good, HS code, sector, and exploitation type. This supports UFLPA risk-based screening; final compliance decisions require human review and legal advice.

What is the difference between Section 301 and Section 232? Section 301 of the Trade Act of 1974 authorises additional duties on imports from countries determined to engage in unfair trade practices; the current Section 301 list applies to a broad range of Chinese-origin goods. Section 232 of the Trade Expansion Act of 1962 authorises duties on imports that threaten national security; the current Section 232 measures apply to steel and aluminum from most countries. trade_hts_tariff and trade_import_compliance report exposure counts for both, derived from USITC HTS footnotes.

Why does trade_supply_chain_risk cost the same as the composite tool? The DOL ILAB tool performs country-and-good cross-referencing across the full list with HS-code, sector, region, and exploitation-type filters. Compute load is roughly the same as the three-source composite, so the pricing matches. The flat $0.15 keeps the supply-chain tool and the composite consistent for batch budgeting.

How often is USITC HTS tariff data updated? USITC publishes the Harmonized Tariff Schedule revisions on a regular cadence with periodic supplements through the year as duty rates change (notably for Section 301 and Section 232 modifications). This MCP queries the USITC HTS API live per call, so each call reflects the data USITC currently publishes. Re-screen high-exposure SKUs quarterly to catch list changes.

Can this MCP replace a licensed customs broker? No. It informs a customs broker. Classification, country of origin determination, and entry filing remain regulated activities that require a licensed customs broker (in the U.S., a CBP-licensed broker under 19 CFR 111). This MCP gives a broker the tariff, ruling, and risk context faster, and gives importers a preview of compliance signals before engaging the broker, but it does not substitute for the broker's regulated work.

What is the difference between an HQ and an NY CBP ruling? HQ rulings are issued by CBP Headquarters and are binding precedent. NY rulings are issued by the National Commodity Specialist Division in New York and are advisory port-level guidance, not binding precedent across all entries. For binding precedent on a classification question, filter collection: "HQ". The actor returns both by default so you can see the full landscape.

Does trade_gleif_lei cover all global entities? GLEIF covers entities that have requested or are required to hold an LEI, primarily entities engaged in financial transactions in regulated markets (derivatives reporting, securities trading, payment messaging). Coverage is strong for large corporates and financial institutions, weaker for private companies and small entities. For broader corporate registry coverage, pair with trade_opencorporates.

Can I use this to screen for export-controlled or sanctioned entities? This MCP does not include OFAC SDN, BIS Entity List, or similar sanctions and export-control lists. Use a dedicated export-control screening tool for those. This MCP covers tariff, customs classification, counterparty registry, and forced-labor risk; sanctions screening is a separate compliance domain.

Is it legal to use this tool for import compliance screening? All underlying data sources are publicly available: USITC HTS, CBP CROSS, UN COMTRADE, GLEIF, and DOL ILAB are open. OpenCorporates is accessed via its public API under their terms with an API key. Using these sources for import compliance, due diligence, and sourcing decisions is standard practice. See Apify's guide on web scraping legality for broader context.

Help us improve

If you encounter issues, you can help us debug faster by enabling run sharing in your Apify account:

  1. Go to Account Settings > Privacy
  2. Enable Share runs with public Actor creators

This lets us see your run details when something goes wrong, so we can fix issues faster. Your data is only visible to the actor developer, not publicly.

Support

Found a bug or have a feature request? Open an issue in the Issues tab on this actor's page. For custom solutions or enterprise integrations, reach out through the Apify platform.

Last verified: March 27, 2026

Ready to try Global Trade Intelligence MCP Server?

This actor is coming soon to the Apify Store.

Coming soon