SanctionsNorth: US, UK and Canada sanctions screening
Screen people, companies and vessels against US OFAC, UK and Canadian sanctions lists.
作者提供的说明(英文原文)
EU AI Act compliance scanner for Python AI agents — scan, analyze, and remediate
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"air-blackbox": {
"command": "uvx",
"args": [
"air-blackbox-mcp"
]
}
}
}在终端中运行这条命令
claude mcp add air-blackbox -- uvx air-blackbox-mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"air-blackbox": {
"command": "uvx",
"args": [
"air-blackbox-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"air-blackbox": {
"type": "stdio",
"command": "uvx",
"args": [
"air-blackbox-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
发布者(shotwellj)不是仓库所有者(airblackbox);可能是其他人代为上架的
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 0 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.2)于8个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:SanctionsNorth: US, UK and Canada sanctions screening, Private Law Wiki, VMware Harden
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Screen people, companies and vessels against US OFAC, UK and Canadian sanctions lists.
Sourced answers, search and bank-case assessment for wiki.private.law by the Mothership runtime.
VMware compliance scanning (CIS, vSphere SCG, GB/T 22239, PCI-DSS) with drift detection.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
EU AI Act compliance scanning for Claude Desktop, Claude Code, Cursor, and any MCP-compatible client.
Unlike other compliance scanners that only report problems, AIR Blackbox also remediates - generating working code fixes, trust layer integrations, GDPR compliance checks, bias analysis, and full compliance reports. Under the hood, the scanning feeds into air-trust, a cryptographic audit chain (HMAC-SHA256) with Ed25519 signed handoffs that ensures compliance data integrity.
| Tier | Tool | What it does | Requires SDK |
|---|---|---|---|
| Scanning | scan_code | Scan a code string for all 6 EU AI Act articles (Python, notebooks, TypeScript, JavaScript, Java, Kotlin with the SDK; Python without) | Recommended |
| Scanning | scan_file | Read and scan a single source file | Recommended |
| Scanning | scan_project | Recursively scan a project directory | Recommended |
| Analysis | analyze_with_model | Deep analysis via local fine-tuned model (Ollama) | No |
| Analysis | check_injection | Detect prompt injection attacks (15 patterns) | No |
| Analysis | classify_risk | Classify tools by EU AI Act risk level | No |
| Remediation | add_trust_layer | Generate trust layer integration code | No |
| Remediation | suggest_fix | Get article-specific fix recommendations | No |
| Documentation | explain_article | Technical explanation of EU AI Act articles | No |
| Documentation | generate_compliance_report | Full markdown compliance report | No |
| GDPR | scan_gdpr | GDPR-specific compliance scan | Yes |
| Bias | scan_bias | Bias and fairness analysis | Yes |
| Validation | validate_action | Validate agent actions before execution (Article 14) | Yes |
| History | compliance_history | View past scans, trends, and compliance scores | Yes |
LangChain, CrewAI, AutoGen, OpenAI, Haystack, LlamaIndex, Semantic Kernel, Google ADK, Claude Agent SDK, and generic RAG pipelines.
pip install air-blackbox-mcp[full]
Installs the air-blackbox SDK (>=1.17,<2). The scanning tools then run the same engine as the air-blackbox CLI and read Python, Jupyter notebooks, TypeScript, JavaScript, Java and Kotlin, with the same verdict the CLI gives the same code. The floor is the version this package is tested against, and the major cap means a 2.x SDK cannot silently change your findings.
pip install air-blackbox-mcp
Works standalone with the lightweight built-in scanner: Python files only, a smaller rule set.
This package supports both MCP SDK generations — `mcp>=1.0`, no upper bound.
mcp 2.0 removed mcp.server.fastmcp and replaced FastMCP with MCPServer. Rather than pin away from it, the server detects which generation is installed and binds to the right class, so it runs on 1.x and 2.x alike:
| installed | server class |
|---|---|
mcp 1.x | FastMCP |
mcp 2.x | MCPServer |
Both paths are covered by tests that launch python -m air_blackbox_mcp as a real subprocess and drive it over stdio — the same way Claude Desktop and Cursor do — and the full suite runs green on both.
If you are on 0.2.3, upgrade. That version declared an unpinned mcp>=1.0.0, so once mcp 2.0 shipped, every fresh install produced a server that died on import:
ModuleNotFoundError: No module named 'mcp.server.fastmcp'
pip install --upgrade air-blackbox-mcp
0.2.4 fixed it by capping at mcp<2; 0.3.0 removes the cap entirely, so this server no longer conflicts with anything built for mcp 2.x sharing the same environment.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "air-blackbox": { "command": "python3", "args": ["-m", "air_blackbox_mcp"] } } }
Restart Claude Desktop. The 14 tools will appear automatically.
Add to .cursor/mcp.json in your project:
{
"mcpServers": { "air-blackbox": { "command": "python3", "args": ["-m", "air_blackbox_mcp"] } } }
Or add to .claude/mcp.json for Claude Code.
In Claude Desktop, Claude Code, or Cursor, just ask:
send_email"The full air-blackbox SDK unlocks 4 additional tools:
scan_gdpr)scan_bias)validate_action)compliance_history)For AI-powered analysis beyond regex patterns:
# Install Ollama
brew install ollama
ollama pull air-compliance-v2
Other MCP compliance tools only scan. AIR Blackbox:
Which engine runs is decided once, at import, by what is installed, and every result says which one ran. Until 0.4.0 the scanning tools always used the built-in scanner even when the SDK was installed; the two had drifted (fewer checks here, Python only, and a hiring-detection bug the SDK had fixed), so the same code got different verdicts from the CLI and from Claude.
| Tools | Engine | If the SDK is missing |
|---|---|---|
scan_code, scan_file, scan_project (and the rule-based part of analyze_with_model) | The air-blackbox SDK when installed, otherwise the built-in rule-based scanner | Built-in scanner: Python only, smaller rule set |
check_injection, classify_risk | Always the built-in rules | No effect |
Tier 5 (scan_gdpr, scan_bias, validate_action, compliance_history) | Always the full air-blackbox SDK | Explicit error telling you to install [full] |
The choice is made when the server starts, not per call, and provenance.engine names it on every result, so two reports are comparable exactly when their engine and ruleset_version match.
Because a compliance finding is only comparable to another if you know what produced it, every machine-readable result carries a `provenance` block:
{
"findings": [ ... ], "provenance": { "engine": "builtin-rules", "scanner_version": "0.2.4", "ruleset_id": "eu-ai-act-art9-15", "ruleset_version": "cee71577c486", "sdk_version": null } }
engine — builtin-rules or air-blackbox-sdk, whichever actually ran.ruleset_version — a content hash of the active rules, not a hand-maintained string. Change a regex and it changes by itself; a version someone must remember to bump is one that eventually misreports which rules ran.sdk_version — the SDK that *produced* this result, so it is null for built-in results even when the SDK is installed alongside. Reporting a version that contributed nothing would imply its rules ran.Two reports with the same engine + ruleset_version were produced by byte-identical rules and can be diffed directly. Different values mean the rules moved, and the diff needs that context to be meaningful.
Errors carry provenance too — knowing which version produced an error is as useful as knowing which version produced a finding.
Install [full] to unlock the Tier 5 SDK tools; the base install works standalone.
This MCP server is part of the AIR Blackbox ecosystem: