Export Control Screening MCP Server
Export control screening MCP that checks transaction parties, classifies dual-use technologies, and detects diversion routes — all from a single MCP tool call. Built for export compliance officers, defense contractors, semiconductor companies, and customs brokers who need fast, evidence-backed screening decisions.
Maintenance Pulse
90/100Cost Estimate
How many results do you need?
Pricing
Pay Per Event model. You only pay for what you use.
| Event | Description | Price |
|---|---|---|
| screen_transaction_parties | OFAC + OpenSanctions + country risk screening. | $0.08 |
| classify_technology_risk | Patent → CCL category dual-use classification. | $0.10 |
| detect_diversion_routes | COMTRADE anomalies + transshipment hub detection. | $0.10 |
| check_country_restrictions | Country sanctions, embargoes, Entity List check. | $0.06 |
| track_export_regulations | BIS rules + congressional export control bills. | $0.08 |
| assess_end_use_risk | Cross-reference tech classification with end-user. | $0.15 |
| generate_export_compliance_report | All 7 sources, 4 scoring models, APPROVED/DENIED verdict. | $0.40 |
Example: 100 events = $8.00 · 1,000 events = $80.00
Connect to your AI agent
Add this MCP server to Claude Desktop, Cursor, Windsurf, or any MCP-compatible client.
https://ryanclinton--export-control-screening-mcp.apify.actor/mcp{
"mcpServers": {
"export-control-screening-mcp": {
"url": "https://ryanclinton--export-control-screening-mcp.apify.actor/mcp"
}
}
}Documentation
Export control screening MCP that checks transaction parties, classifies dual-use technologies, and detects diversion routes — all from a single MCP tool call. Built for export compliance officers, defense contractors, semiconductor companies, and customs brokers who need fast, evidence-backed screening decisions.
This MCP server orchestrates 7 live data sources in parallel: OFAC SDN list, OpenSanctions (100+ jurisdictions), UN COMTRADE trade flows, USPTO patent database, Federal Register, Congress Bills, and REST Countries. Four independent scoring models — transaction risk, dual-use classification, diversion detection, and regulatory change velocity — combine into a composite export compliance verdict: APPROVED, LICENSE_REQUIRED, ENHANCED_REVIEW, or DENIED.
What data can you access?
| Data Point | Source | Example |
|---|---|---|
| 📋 OFAC SDN list screening | US Treasury OFAC | "Huawei Technologies Co. Ltd — Entity List" |
| 🌐 Global denied party lists | OpenSanctions (100+ lists) | "Mfang Group — EU restrictive measures" |
| 📦 International trade flow data | UN COMTRADE | 42 flows via UAE hub — transshipment flag |
| 📄 CCL/EAR dual-use classification | USPTO Patent Database | "Cat 5 — Information Security (encryption)" |
| 📰 BIS rules and EAR amendments | Federal Register | "EAR Part 744 Entity List Amendment — Apr 2025" |
| 🏛️ Export control legislation | Congress Bills | "CHIPS Act expansion — S.3892, passed Senate" |
| 🗺️ Country risk profiles | REST Countries | Russia — sanctioned, arms embargo, Entity List |
| 🔴 Transaction Risk Score | Composite (0-100) | Score: 87 — BLOCKED (OFAC match) |
| 🟡 Dual-Use Classification Level | Patent scoring model | CONTROLLED — BIS export license required |
| 🔵 Diversion Route Level | COMTRADE anomaly model | SUSPICIOUS — 5 transshipment hub flows |
| 🟢 Regulatory Change Velocity | Federal Register + Congress | HIGH — 4 final rules, 2 enacted bills |
| ✅ Composite Verdict | Weighted 4-model composite | DENIED — composite score 78/100 |
Why use Export Control Screening MCP?
Manual export compliance checks are slow, inconsistent, and expensive. An in-house compliance team manually cross-referencing OFAC, OpenSanctions, COMTRADE, and the Federal Register for a single transaction takes 4-8 hours and requires specialist knowledge of EAR categories, CCL taxonomy, and COMTRADE data formats. Dedicated compliance platforms like Visual Compliance or MK Denial charge $500-2,000/month for similar coverage.
This MCP automates the entire multi-source screening workflow in seconds. Connect it to Claude, Cursor, or any MCP-compatible AI client, then ask in plain English: "Is Shenzhen Microtek safe to export AI chips to?" The MCP handles all 7 data source queries, applies scoring models, and returns a structured verdict with the evidence trail.
Platform benefits:
- Scheduling — run recurring screenings on counterparty watchlists daily or weekly
- API access — trigger screenings programmatically from Python, JavaScript, or any HTTP client
- Standby mode — the server stays warm between requests, eliminating cold-start delays
- Monitoring — get Slack or email alerts when screenings produce DENIED or HIGH risk results
- Integrations — connect to Zapier, Make, Google Sheets, or trade compliance systems via webhooks
Features
- 7 live data sources queried in parallel using
Promise.allSettled, so a single unavailable source never blocks the result - OFAC SDN screening — any match scores 20 points per hit (up to 40) and immediately triggers BLOCKED status and DENIED verdict
- OpenSanctions consolidation — screens against 100+ global denied party lists, EU/UN/OFAC/UK combined, scoring up to 25 points per run
- Country risk tiering — three-tier country classification: sanctioned (Cuba, Iran, DPRK, Syria, Russia: +10 pts), arms embargo (+5 pts), Entity List concern countries including China, UAE, Pakistan, Myanmar (+3 pts)
- Dual-use patent taxonomy — maps USPTO patent text against 35 CCL-relevant keyword patterns across 10 EAR categories (Cat 0 Nuclear, Cat 1 Special Materials, Cat 2 Materials Processing, Cat 3 Electronics, Cat 4 Computers, Cat 5 Information Security, Cat 6 Sensors, Cat 7 Navigation, Cat 8 Marine, Cat 9 Aerospace)
- 5-level classification output — UNRESTRICTED, COMMERCIAL, DUAL_USE, CONTROLLED, MILITARY with critical-category bonuses for nuclear (+10) and biological (+10) technology
- COMTRADE diversion detection — analyzes UN trade flow records for sanctioned destinations, 9 known transshipment hubs (UAE, Malaysia, Singapore, Hong Kong, Turkey, Georgia, Armenia, Kyrgyzstan, Uzbekistan), and unit price anomalies (under $0.01 or over $100,000) indicating potential misclassification
- Trade network layering detection — partner count above 8 countries flags potential layering structures in distribution networks
- Regulatory velocity scoring — counts Federal Register proposed rules (3 pts), final rules (5 pts each), and congressional bill status (passed/enrolled/enacted: 8 pts each) to produce a change level: STATIC through CRITICAL
- 4-model composite score — weighted formula: transaction risk 35% + dual-use 25% + diversion 25% + regulatory 15%
- Structured verdict with blockers and required actions — output includes separate
requiredActionsandblockersarrays so compliance teams know exactly what steps to take next - Spending limit enforcement — every tool call checks
Actor.chargeevent limits before executing, preventing budget overruns in automated workflows
Use cases for export control screening
Pre-transaction party screening
Export compliance officers at manufacturers and distributors need to screen every buyer, freight forwarder, and end-user before processing an order. Manual cross-referencing of OFAC, BIS Entity List, and EU consolidated lists takes hours per transaction. Use screen_transaction_parties to get a Transaction Risk Score and full OFAC/OpenSanctions evidence in seconds, then route only flagged transactions for manual review.
AI chip and semiconductor export compliance
Semiconductor companies face rapidly evolving country-level restrictions on advanced computing exports. The check_country_restrictions tool pulls live OFAC and OpenSanctions data alongside country profiles to produce a current sanctions status for any destination. Combine with track_export_regulations on the topic "AI chips semiconductor" to monitor the latest BIS rules affecting advanced computing exports.
Defense contractor ITAR and EAR compliance
Defense contractors sharing technology with international partners must verify both the partner entity and the technology classification before transfer. Use assess_end_use_risk with the partner entity name and technology description to get a combined end-use risk score that cross-references party screening with dual-use patent classification in a single call.
Transshipment and diversion route detection
Trade compliance analysts investigating suspicious order patterns can use detect_diversion_routes on any commodity or HS code. The tool queries UN COMTRADE for recent trade flows, identifies anomalous routing through known transshipment hubs, and flags unit price irregularities that suggest misclassification or underdeclared value — common diversion indicators.
Export control regulatory monitoring
Legal and compliance teams need to track every EAR amendment, Entity List addition, and export control bill in Congress. Use track_export_regulations on topics like "quantum computing," "drone," or "encryption" to get a regulatory velocity score and the full list of recent Federal Register publications and congressional bills affecting that technology area.
Full compliance due diligence for new counterparties
Before entering a new supplier or customer relationship, compliance teams need a complete picture. Use generate_export_compliance_report with the entity name, technology, and destination country. The tool runs all 7 data sources simultaneously and returns a single structured report with composite score, four sub-scores, all risk signals, required actions, and a compliance verdict — everything needed for a compliance file entry.
How to screen for export control compliance
-
Connect the MCP server to your AI client — Add the server URL
https://export-control-screening-mcp.apify.actor/mcpto Claude Desktop, Cursor, or any MCP-compatible client. You need an Apify API token (free to create at apify.com). -
Ask your compliance question in plain English — Type: "Run a full export compliance check on Shenyang Machine Tool Co. for CNC equipment going to Russia." The AI selects and calls the appropriate tool automatically.
-
Review the structured result — The response includes a composite score (0-100), a verdict (APPROVED/LICENSE_REQUIRED/ENHANCED_REVIEW/DENIED), all risk signals, and a list of required actions. DENIED verdicts include specific blockers explaining why.
-
Export or log the result — Copy the JSON response to your compliance management system, or use Apify webhooks to push results directly to your trade compliance platform.
MCP tools
| Tool | Price | Inputs | What it returns |
|---|---|---|---|
screen_transaction_parties | $0.045 | entity, country (opt.) | Transaction Risk Score 0-100, OFAC hits, sanctions hits, risk level, signals |
classify_technology_risk | $0.045 | technology, domain (opt.) | Dual-use classification level, sensitive patent count, CCL categories matched |
detect_diversion_routes | $0.045 | commodity, country (opt.) | Diversion level, trade anomaly count, transshipment flags, signals |
check_country_restrictions | $0.045 | country | Sanctioned flag, OFAC hit count, international sanctions hits, country profile |
track_export_regulations | $0.045 | topic | Regulatory change level, proposed/final rule counts, bill count, signals |
assess_end_use_risk | $0.045 | entity, technology | Combined end-use risk score 0-100, transaction risk + dual-use sub-scores |
generate_export_compliance_report | $0.045 | entity, technology (opt.), destination (opt.) | Full composite report: 4 sub-scores, verdict, required actions, blockers |
Input tips
- Be specific with entity names — "Huawei Technologies Co. Ltd" returns better results than "Huawei." Include country of incorporation if known.
- Use technology descriptions for classification — for
classify_technology_risk, use a product description like "fiber optic gyroscope navigation system" rather than a product code. - Provide destination country for transaction tools — adding the
countryparameter activates country risk scoring and adds up to 20 points to the transaction risk score. - Use
generate_export_compliance_reportfor new counterparties — it runs all 7 sources in parallel and is priced the same as individual tool calls. - Combine tools in sequence — screen the entity first; if CLEAR, classify the technology; only run the full report for borderline or new relationships.
Output example
{
"entity": "Shenyang Machine Tool Group",
"compositeScore": 62,
"verdict": "ENHANCED_REVIEW",
"transactionRisk": {
"score": 18,
"ofacHits": 0,
"sanctionsHits": 1,
"countryRiskFlags": 3,
"riskLevel": "LOW",
"signals": [
"1 international sanctions matches — enhanced screening required",
"Entity List concern country: China"
]
},
"dualUseClassification": {
"score": 74,
"patentCount": 22,
"sensitivePatents": 9,
"technologyCategories": [
"Cat 2 — Materials Processing",
"Cat 7 — Navigation & Avionics",
"Cat 3 — Electronics"
],
"classificationLevel": "CONTROLLED",
"signals": [
"9 patents with dual-use technology indicators",
"Technology spans 3 CCL categories: Cat 2 — Materials Processing, Cat 7 — Navigation & Avionics, Cat 3 — Electronics"
]
},
"diversionRoute": {
"score": 38,
"tradeAnomalies": 2,
"sanctionedDestinations": 0,
"transshipmentFlags": 4,
"diversionLevel": "WATCH",
"signals": [
"4 trade flows through known transshipment hubs (UAE, Malaysia, Singapore, etc.)",
"2 trade flows with suspicious unit pricing — potential misclassification"
]
},
"regulatoryChange": {
"score": 55,
"totalRegulations": 8,
"proposedRules": 3,
"finalRules": 3,
"congressBills": 4,
"changeLevel": "MODERATE",
"signals": [
"3 final rules — export control framework tightening",
"3 proposed rules — additional restrictions incoming",
"4 export control bills in Congress"
]
},
"allSignals": [
"1 international sanctions matches — enhanced screening required",
"Entity List concern country: China",
"9 patents with dual-use technology indicators",
"Technology spans 3 CCL categories",
"4 trade flows through known transshipment hubs",
"3 final rules — export control framework tightening"
],
"requiredActions": [
"BIS export license required before shipment",
"Enhanced due diligence on all transaction parties",
"Review ICP for compliance with new regulations"
],
"blockers": []
}
Output fields
| Field | Type | Description |
|---|---|---|
entity | string | Entity name submitted for screening |
compositeScore | number | Weighted composite risk score 0-100 (transaction 35%, dual-use 25%, diversion 25%, regulatory 15%) |
verdict | string | APPROVED / LICENSE_REQUIRED / ENHANCED_REVIEW / DENIED |
transactionRisk.score | number | Transaction party risk score 0-100 |
transactionRisk.ofacHits | number | Number of OFAC SDN list matches |
transactionRisk.sanctionsHits | number | Number of OpenSanctions global list matches |
transactionRisk.countryRiskFlags | number | Accumulated country risk flag points |
transactionRisk.riskLevel | string | CLEAR / LOW / MODERATE / HIGH / BLOCKED |
transactionRisk.signals | array | Human-readable risk signal strings |
dualUseClassification.score | number | Dual-use technology concern score 0-100 |
dualUseClassification.patentCount | number | Total patents analyzed |
dualUseClassification.sensitivePatents | number | Patents with CCL-relevant technology keywords |
dualUseClassification.technologyCategories | array | EAR CCL category strings matched (e.g., "Cat 5 — Information Security") |
dualUseClassification.classificationLevel | string | UNRESTRICTED / COMMERCIAL / DUAL_USE / CONTROLLED / MILITARY |
diversionRoute.score | number | Diversion risk score 0-100 |
diversionRoute.tradeAnomalies | number | Trade flows with anomalous unit pricing |
diversionRoute.sanctionedDestinations | number | Trade flows to sanctioned countries |
diversionRoute.transshipmentFlags | number | Trade flows through known transshipment hubs |
diversionRoute.diversionLevel | string | NORMAL / WATCH / SUSPICIOUS / LIKELY_DIVERSION / CONFIRMED_DIVERSION |
regulatoryChange.score | number | Regulatory activity score 0-100 |
regulatoryChange.totalRegulations | number | Total Federal Register entries found |
regulatoryChange.proposedRules | number | Proposed rulemaking entries |
regulatoryChange.finalRules | number | Final rules published |
regulatoryChange.congressBills | number | Relevant bills found in Congress |
regulatoryChange.changeLevel | string | STATIC / LOW / MODERATE / HIGH / CRITICAL |
allSignals | array | Merged signal strings from all four scoring models |
requiredActions | array | Actionable compliance steps based on findings |
blockers | array | Hard-stop conditions preventing transaction approval |
How much does export control screening cost?
Export Control Screening MCP uses pay-per-event pricing — you pay $0.045 per tool call. Platform compute costs are included. Every tool, including generate_export_compliance_report, is priced the same.
| Scenario | Tool calls | Cost per call | Total cost |
|---|---|---|---|
| Quick party screen | 1 | $0.045 | $0.045 |
| Screen + classify tech | 2 | $0.045 | $0.09 |
| Full 3-part pre-transaction check | 3 | $0.045 | $0.135 |
| Onboard 10 new counterparties | 10 | $0.045 | $0.45 |
| Monthly screening of 200 watchlist entities | 200 | $0.045 | $9.00 |
You can set a maximum spending limit per run to control costs. The MCP stops when your budget is reached. The Apify Free plan includes $5 of monthly credits, covering over 100 screening calls at no cost.
Compare this to Visual Compliance or MK Denial at $500-2,000/month — with this MCP, a team running 200 screenings per month pays $9.00 with no subscription commitment.
How to connect this MCP server
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"export-control-screening": {
"url": "https://export-control-screening-mcp.apify.actor/mcp",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}
Cursor / Windsurf / Cline
Add the server URL in your MCP settings panel:
https://export-control-screening-mcp.apify.actor/mcp
Include your Apify API token in the Authorization header. The server uses the MCP Streamable HTTP transport.
Python (Apify Actor API)
from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("ryanclinton/export-control-screening-mcp").call(run_input={})
# The MCP server is accessed via HTTP — use the standby URL directly for tool calls
print("MCP server URL: https://export-control-screening-mcp.apify.actor/mcp")
print(f"Run ID: {run['id']}")
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
// Trigger a screening via the MCP HTTP endpoint
const response = await fetch(
"https://export-control-screening-mcp.apify.actor/mcp",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN",
},
body: JSON.stringify({
jsonrpc: "2.0",
method: "tools/call",
params: {
name: "generate_export_compliance_report",
arguments: {
entity: "Shenyang Machine Tool Group",
technology: "CNC precision machining center",
destination: "Russia",
},
},
id: 1,
}),
}
);
const result = await response.json();
const report = JSON.parse(result.result.content[0].text);
console.log(`Verdict: ${report.verdict} — Score: ${report.compositeScore}/100`);
console.log(`Required actions: ${report.requiredActions.join(", ")}`);
cURL
# Full export compliance report
curl -X POST "https://export-control-screening-mcp.apify.actor/mcp" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "generate_export_compliance_report",
"arguments": {
"entity": "Shenyang Machine Tool Group",
"technology": "CNC precision machining center",
"destination": "Russia"
}
},
"id": 1
}'
# Screen a transaction party only
curl -X POST "https://export-control-screening-mcp.apify.actor/mcp" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "screen_transaction_parties",
"arguments": {
"entity": "Beijing Skyrizon Aviation",
"country": "China"
}
},
"id": 2
}'
How Export Control Screening MCP works
Phase 1 — Parallel data collection
When a tool is called, runActorsParallel dispatches simultaneous requests to up to 7 downstream Apify actors using Promise.allSettled. This means a slow or unavailable source returns an empty array rather than failing the entire call. Each downstream actor runs with 256 MB memory and a 120-second timeout. For generate_export_compliance_report, up to 6 sources run concurrently: OFAC SDN list, OpenSanctions global consolidation, USPTO patents, UN COMTRADE, Federal Register, and Congress Bills. The destination country lookup runs as a 7th parallel call if a destination is provided.
Phase 2 — Four independent scoring models
Each scoring model operates on the collected data and produces an independent score plus signal strings:
Transaction Risk (0-100): OFAC hits score 20 points each (capped at 40), OpenSanctions hits score 8 points each (capped at 25), and country risk flags score based on tier — sanctioned country (+10), arms embargo (+5), Entity List concern (+3) — capped at 20. Any OFAC hit immediately sets riskLevel to BLOCKED regardless of the numeric score.
Dual-Use Classification (0-100): Patent titles and abstracts are scanned against 35 CCL-relevant keywords mapped to 10 EAR categories. The sensitive patent ratio drives a base score (capped at 40), CCL category breadth adds up to 25 points, critical-category bonuses add up to 20 points (nuclear +10, biological +10), and total patent volume adds up to 15 points.
Diversion Route Detection (0-100): COMTRADE trade records are analyzed for sanctioned destination flows (+15 pts each), unit price anomalies above $100,000 or below $0.01 per unit (+5 pts each, capped at 35 total with sanctioned destination component), transshipment hub routing through UAE, Malaysia, Singapore, Hong Kong, Turkey, Georgia, Armenia, Kyrgyzstan, and Uzbekistan (+5 pts each, capped at 25), partner count layering above 3 countries (+3 pts per additional country, capped at 20), and OpenSanctions overlay (+5 pts per hit, capped at 20).
Regulatory Change (0-100): Federal Register entries score 3 points each, final rules add a 5-point bonus each (capped at 40 total). Congressional bills score 3 points each, enacted/passed bills add 8 points each (capped at 35 total). Total regulatory action volume adds an acceleration score up to 25 points.
Phase 3 — Composite verdict assembly
The four model scores combine with fixed weights: transaction risk 35%, dual-use 25%, diversion 25%, regulatory 15%. Hard-stop overrides apply before the numeric threshold: any OFAC hit produces DENIED regardless of composite score; LIKELY_DIVERSION or CONFIRMED_DIVERSION also produces DENIED. Composite score 65+ or CONTROLLED classification triggers DENIED or ENHANCED_REVIEW depending on the combination. The requiredActions array is built from specific signal conditions, and the blockers array lists only hard-stop conditions.
Phase 4 — Response delivery
All tool responses return a structured JSON string wrapped in the MCP content[0].text format. The server uses StreamableHTTPServerTransport from the MCP SDK with a new McpServer instance per request to avoid session state leakage between clients. The actor runs in Apify Standby mode — the Express server stays alive between requests on the standby port, so there is no cold-start delay for recurring queries.
Tips for best results
-
Include the destination country in transaction tools. The
countryparameter activates the country risk scoring tier, which can add up to 20 points. Without it, country risk scores zero and some genuine risks are missed. -
Use
generate_export_compliance_reportfor new counterparties. It costs the same $0.045 as any single tool call but runs all data sources simultaneously. The extra data sources improve accuracy, especially for entities in countries with complex trade networks. -
Treat ENHANCED_REVIEW as a trigger for manual compliance review, not a clear. A composite score of 40-64 means multiple risk signals exist. Route these to a qualified export compliance professional rather than auto-approving.
-
Combine with Sanctions Network Analysis for complex corporate structures. The export control MCP screens the named entity; the network analysis MCP reveals whether parent companies or subsidiaries are sanctioned.
-
Monitor regulatory topics weekly with scheduling. Use
track_export_regulationson technology topics relevant to your product lines. Schedule weekly runs and configure a webhook to alert your compliance team whenchangeLevelreaches HIGH or CRITICAL. -
Do not treat APPROVED verdicts as formal compliance clearance. APPROVED means no risk signals were detected across the screened sources. It is a screening result, not a formal ECCN classification or license determination. Always consult qualified export counsel for final compliance decisions.
-
Use the
domainparameter inclassify_technology_riskto narrow patent results. For example,technology: "gyroscope"withdomain: "navigation"returns more relevant patents than a broad gyroscope search, improving classification accuracy for Cat 7 — Navigation & Avionics.
Combine with other Apify actors
| Actor | How to combine |
|---|---|
| OFAC Sanctions Search | Run direct SDN list batch screening on a list of entities before calling the MCP for borderline cases |
| OpenSanctions Search | Augment MCP results with raw OpenSanctions data for the 100+ list breakdown by jurisdiction |
| Federal Register Search | Pull full Federal Register document text for any BIS rule flagged by track_export_regulations |
| Congress Bill Search | Fetch full bill text and sponsor information for any export control legislation flagged by the regulatory tracker |
| UN COMTRADE Search | Pull multi-year historical trade flow series for any commodity flagged by detect_diversion_routes |
| Patent Search | Export full patent records including claims and drawings for technologies flagged as CONTROLLED or MILITARY |
| Company Deep Research | Run deep company intelligence on any entity flagged as HIGH or BLOCKED to gather additional context for compliance files |
Limitations
- Not a formal ECCN classification tool. The dual-use technology classifier maps patent text to CCL categories as a screening assist. It does not constitute an official Export Control Classification Number (ECCN) determination. Formal classifications require BIS guidance or qualified export counsel.
- OFAC screening is entity-name-based. The tool submits the entity name string to the OFAC actor. It does not perform fuzzy name matching, transliteration, or alias resolution at the same level as dedicated screening platforms with phonetic matching algorithms.
- COMTRADE data has a publication lag. UN COMTRADE trade statistics are typically published 3-12 months after the reporting period. The diversion detection model identifies historical patterns, not real-time transactions.
- Patent classification covers 35 keywords across 10 EAR categories. Technologies using obscure terminology or novel nomenclature not covered by the keyword list may not be flagged. The model errs toward false negatives for genuinely novel technology descriptions.
- Country risk is static-list-based. The sanctioned, arms embargo, and Entity List concern country lists are hardcoded in the scoring model. Countries added to restricted lists after the last code update will not score until the actor is redeployed.
- No USML or ITAR classification. The actor does not screen against the US Munitions List (USML) or provide ITAR classification assessments. For defense articles and services, consult the State Department Directorate of Defense Trade Controls.
- Downstream actor availability. Results depend on the availability of 7 downstream Apify actors. If a source is temporarily unavailable, it returns an empty array and that scoring component defaults to zero. The composite score may understate risk in those cases.
- No adverse media or news screening. The MCP does not search news databases for negative press coverage of entities. For reputation screening, combine with a news search actor before making compliance decisions.
Integrations
- Zapier — trigger an export compliance check when a new customer record is created in your ERP or CRM
- Make — build automated workflows that screen new purchase orders against OFAC and flag DENIED results to a compliance queue
- Google Sheets — push screening results into a compliance log spreadsheet with entity name, verdict, score, and timestamp
- Apify API — call screening tools programmatically from your trade compliance platform or customs brokerage system
- Webhooks — receive webhook notifications when screenings complete, enabling real-time compliance alerts in Slack or email
- LangChain / LlamaIndex — integrate the MCP server into AI compliance agents that reason over screening results alongside internal documentation and policy documents
Troubleshooting
-
Verdict is APPROVED but you expected a flag — The most common cause is an incomplete entity name. Try the full legal name including country of incorporation. Also check whether the entity operates under a different name in trade databases — run
classify_technology_riskwith the product description separately if the entity check is clean. -
dualUseClassification.sensitivePatentsis 0 for a clearly controlled technology — The classifier uses 35 keyword patterns. If the technology uses specialized terminology not in the list (e.g., a proprietary product name or non-English patent terminology), it will not match. Try callingclassify_technology_riskwith a descriptive phrase rather than a product code or brand name. -
Diversion score is low despite known transshipment concerns — COMTRADE data has a publication lag of 3-12 months. If the suspicious trade flows occurred recently, they may not yet appear in the COMTRADE database. Supplement with the UN COMTRADE Search actor directly using specific HS codes for more granular results.
-
Spending limit reached error — The actor returns a structured error JSON rather than throwing when the event charge limit is reached. Increase your spending limit in your Apify account or call
generate_export_compliance_reportinstead of multiple individual tools to get more coverage per charge event. -
Regulatory change score is LOW for an active policy area — The Federal Register and Congress Bill searches use keyword queries. Try more specific topic terms in
track_export_regulations. For example, use "advanced computing AI chips BIS" rather than just "chips" to target the right regulatory documents.
Responsible use
- This MCP accesses publicly available government databases including OFAC, OpenSanctions, Federal Register, Congress.gov, USPTO, and UN COMTRADE.
- Screening results are research tools, not legal advice. All compliance decisions involving export licenses, ECCN classifications, or transaction approvals require qualified export counsel.
- Comply with all applicable export control laws including EAR, ITAR, OFAC regulations, and equivalent laws in your jurisdiction.
- Do not use screening results as the sole basis for denying business relationships without human review of the underlying evidence.
- For guidance on web scraping legality, see Apify's guide.
FAQ
How does export control screening with this MCP compare to dedicated compliance platforms like Visual Compliance or MK Denial? Dedicated platforms offer phonetic name matching, integrated case management, and audit trails designed for compliance program documentation. This MCP offers broader data source coverage (COMTRADE diversion detection, patent dual-use classification, regulatory tracking) and pay-per-use pricing starting at $0.045 per call versus $500-2,000/month subscriptions. Use this MCP for initial screening and research; use a dedicated platform for formal compliance program documentation and audit trails.
Does export control screening with this MCP check the BIS Entity List specifically?
OpenSanctions consolidates the BIS Entity List along with 100+ other global denied party lists. Entity List additions published in the Federal Register also appear in track_export_regulations results. Direct Entity List queries can also be run through the Federal Register Search actor.
How current is the OFAC SDN list data used in export control screening? OFAC and OpenSanctions data is fetched live at query time from the downstream actors, which query the current published state of each database. There is no cached or stale local copy. OFAC updates the SDN list in near-real-time; this MCP reflects those updates without any delay on its side.
Can export control screening detect sanctioned entities operating under aliases or shell companies? The current screening uses direct name-string matching against OFAC and OpenSanctions. It does not perform corporate structure mapping or beneficial ownership tracing. For alias and shell company detection, combine this MCP with Company Deep Research to identify related entities before screening.
How accurate is the dual-use technology classification? The classifier matches patent text against 35 CCL-relevant keywords across 10 EAR categories. It is designed as a screening assist to flag technologies warranting closer review, not as a formal ECCN determination. Accuracy is highest for clearly controlled technologies (nuclear, encryption, guided missile propulsion). Novel or obscure technologies may not match. Always validate flagged classifications with a qualified export compliance professional.
Is it legal to use this export control screening data? All data sources are publicly available government databases: OFAC is a US Treasury public database, OpenSanctions aggregates public government lists, UN COMTRADE is a public UN statistics database, and USPTO, Federal Register, and Congress.gov are all US government public records. See Apify's guide on web scraping legality.
How long does a full export compliance report take to generate?
The generate_export_compliance_report tool runs up to 7 data source queries in parallel. Total response time is typically 15-45 seconds depending on downstream actor response times. The server runs in Apify Standby mode, so there is no cold-start delay for the MCP server itself.
What does an ENHANCED_REVIEW verdict mean — can I proceed with the transaction? ENHANCED_REVIEW means the composite score is between 40-64 or the dual-use classification is CONTROLLED. It does not mean stop — it means the transaction requires review by a qualified export compliance professional before proceeding. Do not auto-approve ENHANCED_REVIEW results.
Can I schedule recurring export control screenings on a watchlist of entities? Yes. Use Apify's scheduling feature to run the MCP on a schedule, or call the tool programmatically from your compliance system. Configure Apify webhooks to push results to your compliance queue when the verdict is not APPROVED. This is the recommended pattern for ongoing counterparty monitoring.
Does this MCP handle deemed export screening for foreign national employees?
The classify_technology_risk tool identifies dual-use characteristics that may trigger deemed export controls when foreign nationals access controlled technology. It does not provide a formal deemed export determination, which requires analysis of the specific technology, the individual's nationality, and the access controls in place.
Can I use export control screening results in an AI compliance agent? Yes. The MCP is designed for AI integration — connect it to Claude, GPT-4, or any MCP-compatible LLM. The AI can call tools, reason over structured JSON results, compare findings against internal policy documents, and draft compliance memoranda. For LangChain and LlamaIndex integration patterns, see Apify's platform integrations.
What happens if one of the 7 data sources is temporarily unavailable?
The runActorsParallel function uses Promise.allSettled, so a failed source returns an empty array instead of throwing an error. The scoring model receives zero data for that source, which means that risk component scores zero. In practice, this means the composite score may understate risk when a source is down. The individual source arrays in the response will be empty, which is a visible indicator that data was missing.
Help us improve
If you encounter issues, you can help us debug faster by enabling run sharing in your Apify account:
- Go to Account Settings > Privacy
- 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.
How it works
Configure
Set your parameters in the Apify Console or pass them via API.
Run
Click Start, trigger via API, webhook, or set up a schedule.
Get results
Download as JSON, CSV, or Excel. Integrate with 1,000+ apps.
Use cases
Sales Teams
Build targeted lead lists with verified contact data.
Marketing
Research competitors and identify outreach opportunities.
Data Teams
Automate data collection pipelines with scheduled runs.
Developers
Integrate via REST API or use as an MCP tool in AI workflows.
Related actors
Bulk Email Verifier
Verify email deliverability at scale. MX record validation, SMTP mailbox checks, disposable and role-based detection, catch-all flagging, and confidence scoring. No external API costs.
GitHub Repository Search
Search GitHub repositories by keyword, language, topic, stars, forks. Sort by stars, forks, or recently updated. Returns metadata, topics, license, owner info, URLs. Free API, optional token for higher limits.
Website Content to Markdown
Convert any website to clean Markdown for RAG pipelines, LLM training, and AI apps. Crawls pages, strips boilerplate, preserves headings, tables, and code blocks. GFM support.
Website Tech Stack Detector
Detect 100+ web technologies on any website. Identifies CMS, frameworks, analytics, marketing tools, chat widgets, CDNs, payment systems, hosting, and more. Batch-analyze multiple sites with version detection and confidence scoring.
Ready to try Export Control Screening MCP Server?
Start for free on Apify. No credit card required.
Open on Apify Store