关于 Adversarial Corporate Opacity
Adversarial Corporate Opacity 是面向合规团队和调查人员的 MCP 服务,用于分析企业所有权与隐匿结构。它结合注册资料、制裁名单、图谱及基础设施分析,生成不透明度评分和 EDD 报告。
主要功能
- 01所有权图遍历
- 02基于转写的制裁筛查
- 03空壳地址聚类
- 04共享基础设施关联
- 05受益所有人推断
- 06不透明度评分与 EDD 报告
适用场景
- 01梳理多层企业所有权
- 02查找制裁名单名称变体
- 03识别空壳公司地址集群
- 04编制强化尽职调查文件
MCP 相关
向 MCP 客户端提供八种工具,涵盖所有权分析、制裁筛查、异常检测、受益所有人推断、不透明度评分和 EDD 报告生成。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcpclaude mcp add --transport http adversarial-corporate-opacity https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp{"mcpServers":{"adversarial-corporate-opacity":{"type":"http","url":"https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp"}}}在 Cursor 中打开{"servers":{"adversarial-corporate-opacity":{"type":"http","url":"https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp"}}}在 VS Code 中打开{"mcpServers":{"adversarial-corporate-opacity":{"type":"http","url":"https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp"}}}{"mcpServers":{"adversarial-corporate-opacity":{"serverUrl":"https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
对抗性企业不透明性 MCP
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf):
{
"mcpServers": {
"adversarial-corporate-opacity-mcp": {
"url": "https://ryanclinton--adversarial-corporate-opacity-mcp.apify.actor/mcp"
}
}
}
通过模型上下文协议进行受益所有权检测和企业不透明性分析,专为调查跨越 6 个国际登记机构和 4 个制裁观察名单的实体的 AI Agent 而构建。此 MCP 服务实现了六种各不相同的反隐匿算法——从 BFS 所有权图遍历到贝叶斯信念传播——并提供结构化的不透明性评分以及符合合规工作流要求的正式强化尽职调查报告。
当企业结构通过代名董事、保密司法管辖区、共享注册地址或对抗性名称变体被刻意掩盖时,标准筛查往往会漏掉相关信息。本服务专门针对这些规避模式。它在每次工具调用中并行协调 15 个 Apify Actor,针对 OFAC 和 Interpol 执行跨语言音译匹配,使用 DBSCAN 对空壳公司地址网络进行聚类,并通过多证据因子图上的循环信念传播推断受益所有权。
可以访问哪些数据?
| 数据点 | 来源 | 示例 |
|---|---|---|
| 📁 全球企业登记记录 | OpenCorporates | 140 多个司法管辖区、公司名称、高管、备案状态 |
| 📁 英国公司备案和 PSC 人员 | UK Companies House | 高管、具有重大控制权的人员、备案历史 |
| 📁 加拿大联邦公司 | Canada Corporation Search | 董事、注册成立日期、联邦状态 |
| 📁 澳大利亚商业编号 | Australia ABN Lookup | 实体类型、GST 注册、ABN 状态 |
| 📁 新西兰公司注册信息 | NZ Companies Office | NZBN、董事、注册地址 |
| 🔗 法律实体标识符 | GLEIF LEI | 全球母子公司关系 |
| ⚠️ 美国财政部 SDN 制裁名单 | OFAC Sanctions Search | 实体名称、别名、识别编号 |
| ⚠️ 全球制裁名单和 PEP | OpenSanctions | 100 多项计划、政治公众人物 |
| ⚠️ 国际通缉人员 | Interpol Red Notices | 对象资料、指控、发布国家 |
| ⚠️ 美国联邦通缉人员 | FBI Most Wanted | 指控、描述、已知别名 |
| 🌐 域名注册记录 | WHOIS Lookup | 注册人、注册商、创建日期、名称服务器 |
| 🌐 DNS 配置记录 | DNS Record Lookup | 可揭示共享托管的 A、MX、NS、TXT 记录 |
| 🌐 IP 地理位置和 ASN 数据 | IP Geolocation | ISP、ASN、国家、托管服务提供商 |
| 🔒 TLS 证书透明度日志 | crt.sh Search | 证书颁发者和共享 SSL 资产 |
| 📍 地理坐标 | Nominatim Geocoder | 用于地址聚类分析的纬度/经度 |
用于分析企业不透明度的 MCP 工具
| 工具 | 价格 | 算法 | 适用场景 |
|---|---|---|---|
unfold_ownership_graph | $0.045 | 带司法管辖区跳数惩罚的 BFS | 多层空壳结构、代名董事检测 |
screen_with_transliteration | $0.040 | 5 阶段语音处理流程 | 通过姓名变体规避制裁、相似的西里尔字母字符 |
detect_registration_bursts | $0.040 | Kleinberg 无限状态自动机 | 协同创建空壳公司的行动 |
cluster_shell_addresses | $0.045 | DBSCAN 空间聚类 | 注册代理地址农场、共同地址检测 |
correlate_infrastructure | $0.040 | Weisfeiler-Lehman 图核 | 通过共享域名、IP、TLS 发现隐藏的实体关系 |
infer_beneficial_owner | $0.050 | 循环置信传播 | 基于多源证据识别最终受益所有人 |
compute_entity_opacity_score | $0.045 | 加权综合评分 | 为合规决策提供单一不透明度评级 |
generate_edd_report | $0.050 | 完整的 6 算法流程 | 正式的 EDD/KYC 文档、监管申报 |
为什么使用此 MCP 服务进行受益所有权分析?
手动调查受益所有权需要逐一搜索各公司注册机构、手动交叉比对制裁名单,并尝试将基础设施数据与所有权记录关联起来。对于一家在开曼群岛注册、拥有英国和加拿大子公司的实体,在开始任何分析前就需要花费 4-6 小时研究。标准合规工具使用精确匹配或基础模糊筛查,会漏掉蓄意利用转写规避筛查的情况。
此服务通过一次工具调用自动完成整个调查流程:
- 并行数据收集 — 每次工具调用可同时运行 3-15 个执行方,将数小时的研究工作压缩到 30-120 秒
- 对抗性规避检测 — 5 阶段转写流程可捕捉相似的西里尔字母字符、变音符号剥除和姓名重排,而标准匹配会漏掉这些情况
- 结构化不透明度评分 — 每个实体都会获得一个带等级(LOW/MEDIUM/HIGH/EXTREME/CRITICAL)的数值评分,以及用于审计文档的加权因素明细
- 原生 AI 接口 — 可直接集成 Claude、Cursor、Windsurf 及任何兼容 MCP 的 Agent
- 按次付费 — 无月度订阅;完整的 7 工具 EDD 调查费用低于 $0.35
功能
- BFS 所有权图遍历:跨 6 个注册机构进行遍历,并根据每一跳施加不透明度惩罚:同一司法辖区内跳转为 0.1,跨司法辖区跳转为 0.3,经过 22 个已识别的保密司法辖区(包括开曼群岛(KY)、英属维尔京群岛(VG)、巴拿马(PA)、泽西岛(JE)、列支敦士登(LI)等 17 个地区)跳转为 0.5
- 代名董事检测:使用 15 种注册代理机构名称模式,包括 Trident Trust、Mossack Fonseca 模式名称、Portcullis、Asiaciti,以及“corporate services”“registered agent”“company formation”等通用术语
- 循环所有权检测:标记并统计实体 A 持有实体 B、而实体 B 又持有实体 A 的循环结构
- 5 阶段转写筛查:Unicode NFKD 规范化并剥离变音符号、Double Metaphone 语音编码、Caverphone 编码、带前缀加权的 Jaro-Winkler 距离,以及当 metaphone 编码匹配时附加语音加权的 token-set 比率
- Kleinberg 突发检测:使用 Viterbi 风格动态规划的无限状态自动机,寻找最优状态序列,其中高发生率状态代表可疑的注册突发;自相关分析可检测周期性注册模式
- DBSCAN 地址聚类:epsilon=50m(0.00045 度),minPts=3;同址可疑度 = 集群中的实体数 ×(1 − 多样性指数)× 司法辖区风险权重,其中多样性指数为实体类型的 Shannon 熵除以 log(n)
- DNS/SSL 子图上的 Weisfeiler-Lehman 图核:构建基础设施图(域名 → IP → 名称服务器 → SSL 颁发者),通过对邻居标签进行哈希迭代 3 轮来重新标记节点,并计算标签直方图的归一化点积;核值高于 0.7 表示很可能由同一方控制
- 因子图上的 Loopy 信念传播:包含 6 个证据变量:所有权登记、高管重叠、地址同址、基础设施共享、制裁共同出现和时间上的共同注册;使用 0.5 的阻尼因子进行最多 50 轮迭代,直至收敛
- 加权综合不透明度评分:所有权深度(25%)、转写风险(15%)、突发异常(10%)、同址(15%)、基础设施隐匿(15%)、受益所有人不确定性(20%)
- 正式 EDD 报告生成:列出按严重程度分级的发现(低/中/高/严重),并提供可执行的合规档案记录建议
- 待机模式部署:MCP 服务在 Apify 上保持预热状态,实现亚秒级响应启动
受益所有权调查的使用场景
AML 和 KYC 合规工作流
银行、支付处理商和基金管理机构的合规专员需要在客户开户期间识别最终受益所有人。通过离岸司法辖区构建的多层结构可能经过 4-8 层公司实体来掩盖真实所有权。unfold_ownership_graph 最多遍历深度 10,覆盖所有注册机构,在每一跳计算不透明度惩罚并标记代名董事,生成可直接纳入合规档案的结构化证据。
制裁规避检测
金融机构筛查交易对手时面临的问题是,受制裁实体会故意变换名称以规避标准名单。俄罗斯寡头的实体可能显示为“Ivanов”(西里尔字母 О)、“Ivánov”(带变音符号的 A)或“Vanovi”(词元重新排序)。screen_with_transliteration 会通过 5 阶段语音处理流程,在 OFAC、OpenSanctions、Interpol 和 FBI 数据库中进行筛查,一次调用即可捕获所有这些变体,并针对每个匹配项返回 CLEAR/MODERATE/HIGH/CRITICAL 严重程度评级及证据。
空壳公司集群识别
特拉华州、怀俄明州、开曼群岛和英属维尔京群岛的注册代理有时会在同一地址托管数千个实体。cluster_shell_addresses 对与某个实体关联的所有注册地址进行地理编码,运行 DBSCAN 空间聚类,并计算每个集群的共址可疑度评分。借此可识别注册代理集群;这些集群代表的是虚构的公司多样性,而非真正独立经营的企业。
调查新闻与企业研究
调查离岸金融结构的记者和研究人员需要关联那些看似无关、却拥有共同实益所有人的实体。correlate_infrastructure 使用 Weisfeiler-Lehman 图核映射实体间共享的域名、IP 地址和 TLS 证书,从而发现企业注册机构记录中不存在的关联。随后,infer_beneficial_owner 通过置信传播整合所有可用证据,计算后验所有权概率。
协同注册活动检测
调查企业欺诈的私募股权分析师、监管机构和情报团队,可通过检测实体是否以协同批次注册获益;这种模式常与空壳公司创建活动有关。detect_registration_bursts 将 Kleinberg 自动机应用于注册日期序列,识别具有统计显著性的时间集群,并进行自相关分析,以检测周期性(非随机)模式。
强化尽职调查文档
对于正式监管申报、代理行关系或高价值交易审批,generate_edd_report 会依次运行全部六种算法,并生成完整报告,其中包含所有权图、制裁调查结果、批次分析、地址集群、基础设施关联、实益所有权推断,以及包含分级严重程度调查结果和建议的综合不透明度评分。JSON 输出采用结构化格式,可直接纳入合规审计跟踪记录。
如何连接此 MCP 服务以检测实益所有权
- 获取 Apify API 令牌 — 在 apify.com 注册,前往 Settings > Integrations,然后复制 API 令牌。
- 将服务添加到 MCP 客户端 — 将以下配置粘贴到客户端的 MCP 设置文件中。将
YOUR_APIFY_TOKEN替换为你的实际令牌。 - 启动 Agent 会话 — 这 8 个工具会自动显示在 Agent 的工具列表中。无需进一步设置。
- 进行首次调用 — 请 Agent 调查某个实体:“使用 unfold_ownership_graph 绘制 Meridian Holdings Ltd 在 KY 的所有权结构。”
MCP 客户端配置
Claude Desktop
添加到 claude_desktop_config.json:
{
"mcpServers": {
"adversarial-corporate-opacity": {
"url": "https://adversarial-corporate-opacity-mcp.apify.actor/mcp",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}
Cursor / Windsurf / Cline
添加到 MCP 设置中:
{
"mcpServers": {
"adversarial-corporate-opacity": {
"url": "https://adversarial-corporate-opacity-mcp.apify.actor/mcp",
"headers": {
"Authorization": "Bearer YOUR_APIFY_TOKEN"
}
}
}
}
直接使用 HTTP(cURL)
curl -X POST "https://adversarial-corporate-opacity-mcp.apify.actor/mcp" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "unfold_ownership_graph",
"arguments": {
"entity_name": "Meridian Holdings Ltd",
"jurisdiction": "KY"
}
},
"id": 1
}'
MCP 工具参考
unfold_ownership_graph
使用 BFS 遍历 6 个国际注册机构的企业所有权图。在每个节点,根据司法辖区跳转惩罚、代持人检测(15 种设立代理模式)和循环所有权识别计算不透明度评分。当深度达到 10 或累计不透明度超过阈值时停止扩展。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
entity_name | string | 是 | — | 要追溯所有权的目标实体名称 |
jurisdiction | string | 否 | — | 主要司法辖区 ISO 代码(例如 “GB”、“KY”、“PA”),用于优先查询特定注册机构 |
company_number | string | 否 | — | 已知时提供公司注册号,并传递给相关注册机构 |
max_depth | number | 否 | 10 | BFS 遍历的最大深度(1–10) |
调用示例:
{
"entity_name": "Meridian Offshore Holdings Ltd",
"jurisdiction": "KY",
"max_depth": 8
}
screen_with_transliteration
针对 OFAC、OpenSanctions、Interpol 和 FBI 监控名单进行 5 阶段跨语言名称匹配。可捕捉对抗性转写,包括西里尔字母形近字、变音符号规避和名称词元重排。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
names | string[] | 是 | — | 要筛查的实体或个人名称(每次调用 1–50 个名称) |
include_interpol | boolean | 否 | true | 筛查时包含 Interpol 红色通缉令 |
include_fbi | boolean | 否 | true | 筛查时包含 FBI 最高通缉名单 |
调用示例:
{
"names": ["Viktor Petrenko", "Viktоr Petrеnko", "V. Petrenkov"],
"include_interpol": true,
"include_fbi": false
}
detect_registration_bursts
对注册日期序列应用 Kleinberg 无限状态自动机。使用 Viterbi 式动态规划识别高频突发状态,然后运行自相关分析,检测周期性(非随机)的注册模式。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
entity_name | string | 是 | — | 要分析其公司注册情况的实体或个人名称 |
jurisdiction | string | 否 | — | 聚焦于特定司法管辖区 ISO 代码 |
cluster_shell_addresses
对地理编码后的注册地址进行 DBSCAN 空间聚类(epsilon=50m,minPts=3)。使用 Shannon 熵多样性指数和司法管辖区风险加权,计算每个集群的共同位置可疑度评分。每次调用最多通过 Nominatim 对 20 个地址进行地理编码。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
entity_name | string | 是 | — | 要查找关联地址的实体或个人名称 |
jurisdiction | string | 否 | — | 聚焦于特定司法管辖区 |
correlate_infrastructure
构建实体基础设施图(域名 → IP → 名称服务器 → SSL 颁发者),应用 3 轮 Weisfeiler-Lehman 重新标记,并计算标签直方图的归一化点积。核值高于 0.7 表示高度可能由同一方控制。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
entities | string[] | 是 | — | 要比较基础设施指纹的实体名称(1–20 个) |
domains | string[] | 否 | — | 已知域名,格式为 "EntityName:domain.com" |
调用示例:
{
"entities": ["Meridian Holdings Ltd", "Atlas Capital Partners"],
"domains": ["Meridian Holdings Ltd:meridian-hld.com", "Atlas Capital Partners:atlas-cap.io"]
}
infer_beneficial_owner
使用因子图上的循环置信传播进行贝叶斯受益所有权推断。对每个人与实体组合,综合 6 种证据类型:所有权登记、高管重合、共同地址、基础设施共享、共同出现在制裁名单中,以及同期注册。使用 0.5 阻尼因子,最多迭代 50 次。
参数:
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
entity_name | string | 是 | — | 要识别其受益所有人的目标实体 |
known_persons | string[] | 否 | — | 已知关联人员(董事、股东、代持人) |
jurisdiction | string | 否 | — | 主要司法管辖区 ISO 代码 |
compute_entity_opacity_score
运行全部六种算法,并返回加权后的综合不透明度评分。各项权重:所有权层级深度 25%、转写风险 15%、突发异常 10%、共同注册地 15%、基础设施隐匿 15%、受益所有人不确定性 20%。等级:LOW(<0.15)、MODERATE(0.15–0.35)、ELEVATED(0.35–0.55)、HIGH(0.55–0.75)、CRITICAL(>0.75)。
参数:
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
entity_name | string | 是 | — | 要计算不透明度评分的实体 |
jurisdiction | string | 否 | — | 主要司法管辖区 ISO 代码 |
domains | string[] | 否 | — | 已知的关联域名,用于基础设施分析 |
known_persons | string[] | 否 | — | 已知的关联人员,用于推断受益所有人 |
generate_edd_report
完整的增强尽职调查报告,整合全部六种算法。对注册机构、观察名单和基础设施来源中的全部 15 个参与方进行查询。返回结构化调查结果,包含严重程度等级(low/medium/high/critical)、总体风险评分和可执行建议。
参数:
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
entity_name | string | 是 | — | 增强尽职调查的目标实体 |
jurisdiction | string | 否 | — | 主要司法管辖区 ISO 代码 |
domains | string[] | 否 | — | 已知域名,用于基础设施分析 |
key_persons | string[] | 否 | — | 要调查的关键人员(董事、UBO) |
输出示例
同一开曼群岛注册实体的 compute_entity_opacity_score 响应:
{
"entity": "Meridian Offshore Holdings Ltd",
"opacityScore": {
"entity": "Meridian Offshore Holdings Ltd",
"overallOpacity": 0.71,
"ownershipDepthScore": 0.85,
"transliterationRisk": 0.20,
"burstAnomalyScore": 0.60,
"coLocationScore": 0.75,
"infraConcealmentScore": 0.55,
"beneficialOwnerUncertainty": 0.80,
"grade": "HIGH"
},
"dataSources": {
"corporateRecords": 47,
"leiRecords": 3,
"watchlistEntries": 0,
"geocodedAddresses": 8
}
}
同一实体的 unfold_ownership_graph 摘要:
{
"entity": "Meridian Offshore Holdings Ltd",
"summary": {
"totalNodes": 14,
"totalEdges": 13,
"maxDepthReached": 6,
"circularOwnership": true,
"nominees": 3,
"formationAgents": 2,
"secrecyHops": 4,
"totalOpacity": 3.4,
"riskIndicator": "HIGH"
}
}
screen_with_transliteration 严重程度结果:
{
"severity": "HIGH",
"result": {
"matches": [
{
"entityName": "Viktor Petrenko",
"watchlistName": "Viktor Petrenkо",
"stage": "double_metaphone",
"similarity": 0.94,
"phoneticBonus": 0.08,
"finalScore": 0.91,
"source": "OFAC-SDN"
}
],
"totalScreened": 3,
"totalMatches": 1,
"pipelineStats": [
{ "stage": "unicode_normalization", "matchesFound": 0 },
{ "stage": "double_metaphone", "matchesFound": 1 },
{ "stage": "caverphone", "matchesFound": 0 },
{ "stage": "jaro_winkler", "matchesFound": 0 },
{ "stage": "token_set_ratio", "matchesFound": 0 }
]
},
"watchlistSources": {
"ofac": true,
"opensanctions": true,
"interpol": true,
"fbi": false
}
}
输出字段
| 字段 | 类型 | 描述 |
|---|---|---|
entity | 字符串 | 调查的实体名称 |
opacityScore.overallOpacity | 数字 | 加权综合不透明度评分(0.0–1.0) |
opacityScore.grade | 字符串 | LOW / MODERATE / ELEVATED / HIGH / CRITICAL |
opacityScore.ownershipDepthScore | 数字 | BFS 遍历不透明度分项(权重:25%) |
opacityScore.transliterationRisk | 数字 | 制裁名单语音匹配风险分项(权重:15%) |
opacityScore.burstAnomalyScore | 数字 | Kleinberg 突发检测分项(权重:10%) |
opacityScore.coLocationScore | 数字 | DBSCAN 地址共址分项(权重:15%) |
opacityScore.infraConcealmentScore | 数字 | WL 图核隐匿分项(权重:15%) |
opacityScore.beneficialOwnerUncertainty | 数字 | 信念传播不确定性分项(权重:20%) |
summary.totalNodes | 数字 | 所有权图中找到的实体节点数 |
summary.totalEdges | 数字 | 发现的所有权关系数 |
summary.circularOwnership | 布尔值 | 是否存在循环所有权结构 |
summary.nominees | 数字 | 检测到的代名董事/高管数量 |
summary.formationAgents | 数字 | 检测到的公司设立代理模式数量 |
summary.secrecyHops | 数字 | 经过保密司法管辖区的跳数 |
summary.riskIndicator | 字符串 | STANDARD / ELEVATED / HIGH |
result.matches[].finalScore | 数字 | 综合转写匹配评分(0.0–1.0) |
result.matches[].stage | 字符串 | 生成匹配结果的管线阶段 |
result.matches[].source | 字符串 | 观察名单来源(OFAC-SDN、OpenSanctions、Interpol、FBI) |
severity | 字符串 | CLEAR / MODERATE / HIGH / CRITICAL |
bursts[].burstLevel | 数字 | Kleinberg 状态级别(越高表示异常程度越高) |
bursts[].periodicity | 数字 | null | 检测到的注册周期,单位为天 |
clusters[].suspicionScore | 数字 | 每个地址簇的共址可疑评分 |
clusters[].diversityIndex | 数字 | 簇内实体类型的 Shannon 熵 |
inferences[].posteriorProbability | 数字 | 实益所有权的贝叶斯后验概率 |
inferences[].converged | 布尔值 | 此推断的信念传播是否收敛 |
实益所有权调查的运行成本是多少?
此 MCP 服务采用按事件付费定价——按工具调用次数付费。平台计算成本已包含在内。无论每个工具在内部查询多少个注册机构或观察名单,价格都固定不变。
| 场景 | 工具 | 价格 | 备注 |
|---|---|---|---|
| 快速制裁筛查(10 个姓名) | screen_with_transliteration | $0.040 | OFAC + OpenSanctions + Interpol + FBI |
| 所有权图遍历 | unfold_ownership_graph | $0.045 | 最多并行查询 6 个注册机构 |
| 空壳公司地址簇分析 | cluster_shell_addresses | $0.045 | 包含通过 Nominatim 进行地理编码 |
| 实益所有人推断 | infer_beneficial_owner | $0.050 | 完整收集 15 个主体的证据 |
| 完整 EDD 报告 | generate_edd_report | $0.050 | 全部 6 种算法,全部 15 个主体 |
| 完整的 7 工具调查 | 所有工具各调用一次 | $0.355 | 完整的反隐匿分析 |
| 每月合规工作流(50 个实体) | 混合工具 | ~$10–18 | 费用因工具组合而异 |
在 Apify 账户中为每次运行设置最高支出限额,以防止产生意外费用。服务会遵守限额,并返回结构化错误,而不会继续运行。
相比之下,专用 KYC/AML 平台每月费用为 $500–2,000,此外还会收取单次查询费用。每次工具调用仅需 $0.04–0.05,大多数合规团队每月的调查查询费用低于 $20。
此 MCP 服务的工作原理
阶段 1:并行数据收集
每次工具调用都会使用 Promise.all 并行调度 3 到 15 个 Apify actors。注册机构的选择会考虑司法管辖区:GB 实体会查询 UK Companies House、OpenCorporates 和 GLEIF;KY 实体默认查询 OpenCorporates、GLEIF 以及完整扫描模式下的所有注册机构。Actor 调用的超时时间为 120 秒(完整 EDD 流程为 180 秒),失败时会优雅地回退为空数组,因此即使只有部分数据,也总能生成结果。
阶段 2:算法执行
原始注册记录、制裁名单条目和基础设施数据会输入 scoring.ts 中实现的六种专用算法:
所有权图(BFS): 实体会成为图节点。OpenCorporates 的高管数组以及 GLEIF 的父子关系会成为边。每次转换都会分配跳数惩罚:0.1(同一司法管辖区)、0.3(跨司法管辖区)、0.5(来自硬编码的 22 个地区的保密司法管辖区)。系统会使用子字符串搜索,将高管姓名与 15 种公司设立代理模式进行匹配,以识别代名人。BFS 遍历期间通过跟踪已访问的节点 ID 来检测循环所有权。
转写管道: 每个输入姓名都会依次经过 5 个阶段。Unicode NFKD 规范化会去除变音符号,并规范化形似西里尔字母的字符。Double Metaphone 和 Caverphone 会生成语音编码,并与观察名单条目进行比较。Jaro-Winkler 会计算字符级相似度,对于共享相同起始序列的姓名提供前缀加分。Token-set ratio 会在词元级别计算词袋重叠度;当 Metaphone 编码一致时,还会增加语音加分。
Kleinberg 突发检测: 从所有记录中提取并排序公司注册日期。Kleinberg 自动机对状态转换进行建模,其中较高状态代表较高的注册速率。Viterbi 动态规划会找出最佳状态序列。系统会计算滞后 1–30 的自相关,以检测周期性模式。
DBSCAN 聚类: 使用字符串相似度函数比较地址字符串(EPS=0.7 相似度阈值,minPts=2)。系统会迭代扩展聚类。每个聚类的空壳评分按 entities_per_address × (1 − diversity_fraction) 计算。在完整流程中,会使用来自 Nominatim 的实际地理坐标,并采用 50 米的 epsilon。
Weisfeiler-Lehman 核: 将每个实体的域名组合转换为子图。通过对当前标签和排序后的邻居标签进行哈希,迭代地重新标记节点,共 3 轮。系统会为每个实体计算标签直方图向量,并通过归一化点积进行比较。较高的核值表示实体的数字基础设施图在结构上相似。
循环置信传播: 变量表示 is_beneficial_owner(person, entity) 布尔状态。因子节点会组合 6 个证据势函数。消息会在变量节点和因子节点之间迭代传递,并采用 0.5 的阻尼系数。每轮都会检查是否收敛;算法会在收敛时停止,或在达到 50 轮时停止。后验概率高于 0.7 的结果会标记为 HIGH。
阶段 3:综合评分和响应组装
computeOpacityScore 会接收六种算法的输出,并应用加权公式,生成单一的不透明度评分及其类别等级。generate_edd_report 工具还会将所有六项输出组装到统一的 EDDReport 结构中,其中包含按严重程度分级的发现和自然语言建议。
获得最佳结果的提示
-
已知司法管辖区代码时请提供。 指定“KY”会将查询路由到 OpenCorporates + GLEIF(速度更快,内部成本更低);省略代码则会触发对全部 6 个注册机构的完整扫描(更全面,但耗时是 2 倍)。
-
向
correlate_infrastructure和compute_entity_opacity_score提供已知域名。 未提供域名时,基础设施分析返回的结果很少。格式为“EntityName:domain.com”——每个实体支持多个域名。 -
先使用
screen_with_transliteration,再使用infer_beneficial_owner。 制裁命中会更新信念传播中的 sanctions_co_occurrence 证据因子。先运行筛查,再将这些名称传递给推断工具,可获得质量更高的后验概率。 -
进行大规模批量调查时,并行调用工具。 Apify API 支持并发运行。逐个筛查 50 个实体需要 50 × 60 秒;并行运行 10 个可将实际耗时缩短至 300 秒。
-
先使用
compute_entity_opacity_score进行分类。 该工具会运行所有算法并返回单一等级。仅将 HIGH 和 CRITICAL 实体转交给成本更高的generate_edd_report,以生成完整文档。 -
为你的 Apify 账户设置支出上限。
generate_edd_report等工具会在内部触发最多 15 次子 Actor 运行。设置支出上限可确保实体复杂度意外偏高(地址众多、管理人员众多)时不会导致成本失控。 -
对已知人员而不只是实体使用
detect_registration_bursts。 无论实体名称如何,若某个代名董事在同一个 3 个月窗口内担任 40 家公司的管理人员,都是强烈的空壳公司农场信号。
与其他 Apify Actor 结合使用
| Actor | 结合方式 |
|---|---|
| 交易对手尽职调查 MCP | 先运行广泛的 KYB 筛查,再将高风险实体升级至此服务进行深入的反隐匿分析 |
| OFAC 制裁搜索 | 需要不经过转写流程开销直接获取原始 SDN 记录时,直接查询 OFAC |
| OpenSanctions 搜索 | 直接查询完整的 OpenSanctions 数据集,以支持自定义 PEP 或监控名单工作流 |
| 英国 Companies House | 直接获取英国 PSC(具有重大控制权的人员)记录,用于英国实体调查 |
| OpenCorporates 搜索 | 在 MCP 界面之外获取原始注册机构数据,用于自定义分析流程 |
| GLEIF LEI 查询 | 直接通过法人识别编码查询母公司/子公司关系 |
| WHOIS 域名查询 | 获取域名注册数据,用于自定义基础设施调查 |
| 公司深度研究 | 获取全面的公司情报报告,以补充 EDD 调查结果 |
不透明度评分参考
| 等级 | 分数范围 | 含义 | 建议措施 |
|---|---|---|---|
| LOW | 0.00–0.15 | 结构透明,隐匿指标极少 | 标准尽职调查 |
| MODERATE | 0.15–0.35 | 存在一定复杂性,不透明信号有限 | 建议加强文档记录 |
| ELEVATED | 0.35–0.55 | 存在多个不透明因素 | 必须进行强化尽职调查 |
| HIGH | 0.55–0.75 | 检测到显著的隐匿指标 | 生成 EDD 报告,由高级合规人员审核 |
| CRITICAL | 0.75+ | 检测到多种正在使用的隐匿手法 | 升级处理,考虑拒绝建立业务关系 |
限制
- 仅限公共登记机构。 该服务仅访问公开可用的公司登记数据。在没有公开受益所有人登记册的司法管辖区(特拉华州有限责任公司、怀俄明州有限责任公司、2023 年前的英属维尔京群岛),私人公司的所有权可能无法完全追溯。
- 制裁名单不会实时更新。 监控名单数据反映底层 Actor 的缓存。OFAC 和 OpenSanctions Actor 会定期刷新;新指定对象出现在结果中可能会延迟数小时至数天。
- 不记名股票结构。 使用不记名股票的实体(大多数司法管辖区已废除此类股票,但仍存在历史遗留结构)无法通过公共登记数据追溯。
- 信托结构。 酌情信托通常没有公开的受益所有人记录。系统会将信托结构识别为不透明因素,但无法穿透这类结构。
- 名称消歧。 “John Smith”或“Zhang Wei”等常见姓名会匹配到公司记录中的许多无关人士。转写流程的评分在姓名具有明显独特性时最为可靠。
- 子 Actor 的速率限制。 每次工具调用都会在内部调用多个 Apify Actor。在高频调用场景中,底层 Actor 可能接近速率限制。服务会通过返回空数组妥善处理这种情况,但对于非常大的实体名称查询(一次筛查调用包含 50 个名称),结果可能不完整。
- 英文姓名匹配。 语音匹配流程(Double Metaphone、Caverphone)针对使用拉丁字母书写且符合英语语音特征的姓名进行了优化。中文、阿拉伯语及其他非拉丁文字会经过 Unicode 规范化处理,但语音匹配准确度较低。
- 基础设施分析需要已知域名。 如果未提供域名,
correlate_infrastructure和compute_entity_opacity_score中的基础设施分析组件只会返回极少结果,从而降低总体评分准确度。
集成
- Apify API — 通过
/mcp端点发送 HTTP POST,从合规系统以编程方式调用工具 - Webhooks — 在运行完成或不透明度评分超过阈值时配置提醒
- Apify Schedules — 设置按日或按周定期监控高风险实体
- 数据集导出 — 将 EDD 报告下载为 JSON,以便存储审计跟踪并归档合规文件
- LangChain / LlamaIndex — 集成到 RAG 工作流中,用于构建自动化合规研究 Agent
负责任地使用
- 此服务仅访问公开可用的政府登记信息、公开制裁数据库和公开披露的证书透明度日志。
- 使用结果辅助合规决策;未经合格合规专业人员审查,不要仅凭不透明度评分作出不利判定。
- 处理公司高管记录中返回的个人数据时,请遵守 GDPR 及适用的数据保护法律。
- 转写筛查结果是概率性指标,而非已确认的匹配结果。对于高分匹配,请务必对照一手来源文件进行核实。
- 请勿使用此服务监视或骚扰个人。
- 关于网页抓取合法性的指导,请参阅 Apify 的指南。
常见问题
受益所有权检测覆盖多少个司法管辖区? 直接登记信息访问覆盖英国、澳大利亚、加拿大和新西兰。OpenCorporates 将覆盖范围扩展到 140 多个司法管辖区,但数据深度各不相同。GLEIF 提供全球 LEI 母子关系信息,不依赖国家登记机构。对于没有公共登记机构的司法管辖区中的实体,服务会依赖跨境高管和地址关联作为代理证据。 转写筛查与标准制裁名单匹配有何不同? 标准筛查使用精确字符串匹配或简单的 Levenshtein 距离,无法发现蓄意规避行为。本服务的 5 阶段流水线依次应用 Unicode 规范化(捕捉西里尔字母同形异义字符,例如“o”和“о”)、Double Metaphone 语音编码(捕捉语音等价形式,例如“Petrov”/“Petroff”)、Caverphone 编码、带前缀加权的 Jaro-Winkler 字符级相似度,以及用于发现姓名顺序调换的 token-set ratio。这些方法结合起来,能够捕捉需要人工专家手动识别的规避模式。
服务能否识别所有受益所有人? 不能。服务根据可用的公开数据推断可能的受益所有人,并返回后验概率及证据明细。涉及不记名股票、全权信托,或没有公开登记处的司法管辖区的所有权链无法被完全穿透。不透明度评分会量化结构中被隐藏的部分,因此 CRITICAL 等级表示要确定最终受益所有人(UBO),必须查阅一手来源文件,不能仅依靠公开数据。
Kleinberg 突发检测的准确度如何? 该自动机会识别相对于数据集整体登记率而言具有统计异常的登记聚集情况。当大量登记集中在较短时间窗口内发生时,它能可靠地标记突发事件。准确度取决于数据的完整性——来自公开数据有限的司法管辖区的登记处结果较少,可能导致突发事件漏报。
每次工具调用需要多长时间?
screen_with_transliteration 和 detect_registration_bursts 通常需要 30–60 秒。由于会并行查询登记处,unfold_ownership_graph 和 cluster_shell_addresses 需要 60–120 秒。infer_beneficial_owner 和 generate_edd_report 会运行完整的 15 个 Actor 流水线,因此需要 90–180 秒。服务采用待机模式,因此不会有冷启动延迟。
访问这些数据合法吗? 所有数据源均为公开的政府登记处、开源制裁数据库和证书透明度日志。请参阅 Apify 关于网页抓取合法性的指南。访问制裁名单不受限制。公司登记数据属于公开记录。在大多数司法管辖区,将这些数据用于合规目的符合 AML/KYC 监管义务。
这与 Comply Advantage 或 Dow Jones Risk & Compliance 等专用 KYC 合规软件有何不同? 企业级 KYC 平台每月收费 500–2,000 美元,还按查询收费,采购周期也很长。本服务每次查询收费 0.04–0.05 美元,无订阅费、无最低消费,也无需集成项目。取舍在于,企业级平台维护经过整理且持续更新的数据集,并进行人工审核;本服务则使用开放的公开数据。对于调查研究和辅助筛查,本服务以极低成本提供了相当的算法深度。
我能否同时对多个实体开展批量调查?
每次工具调用处理一个实体(screen_with_transliteration 最多可处理 50 个姓名)。进行批量调查时,可使用 Apify API 触发多个并发运行。Apify 平台支持并行执行 Actor,因此你可以通过单独的 API 调用同时处理 10–20 个实体。
Weisfeiler-Lehman 核函数值在实际应用中意味着什么?
核函数值是两个实体的基础设施标签直方图之间的归一化点积。数值高于 0.7 表示两个实体拥有结构相似的数字基础设施图——例如相同的 IP 范围、名称服务器或 SSL 证书颁发者——这表明它们可能由同一方控制。数值为 1.0 表示基础设施指纹完全相同。数值低于 0.4 则表示基础设施没有显著重叠。
当注册信息源不可用或未返回数据时,会发生什么?
所有子 Actor 调用都包含完善的错误处理,失败时会返回空数组。算法会处理所有可用数据,并在响应中注明数据缺口。空的所有权图不会产生 HIGH 不透明度评分——数据不足会被视为无法提供信息,而非可疑情况。响应中的 dataSources 字段会显示每个来源提供的记录数。
我可以为实体关注列表安排定期不透明度监控吗? 可以。使用 Apify Schedules 按每日或每周计划通过 HTTP API 触发工具调用。将结果存储在 Apify Datasets 中,并配置 Webhook,以便在不透明度评分超过阈值或出现新的制裁匹配时通知团队。
此服务可以取代合规官吗? 不可以。它提供调查情报和结构化证据,以支持合规工作流。履行 AML/KYC 义务时,监管决策需要由合格的合规专业人员解读调查结果、运用判断并记录结论。请将输出视为研究材料,而非合规结论。
故障排除
尽管结构看起来很复杂,不透明度评分似乎偏低。 综合评分权重是根据公共数据所能提供的证据进行校准的。在公共注册信息完善的司法管辖区(英国、澳大利亚),即使结构复杂,多层结构的评分也可能低于预期,因为这些注册信息的透明度降低了实际不透明度。尝试使用 generate_edd_report 获取完整的叙述式调查结果,其中会区分结构复杂性与蓄意隐瞒。
unfold_ownership_graph 只返回 1–2 个节点。 这通常表示该实体名称在 OpenCorporates 或 GLEIF 中没有强匹配项。请尝试使用官方注册信息中的准确注册名称;如果知道公司编号,也请一并提供;或者检查司法管辖区代码——搜索 GB 公司时若未包含 “Ltd” 或 “Limited”,可能无法匹配。部分司法管辖区的 OpenCorporates 覆盖范围有限。
screen_with_transliteration 对一个已知有别名的名称返回 CLEAR。 语音匹配流程对拉丁字母名称的效果最佳。非拉丁文字名称(阿拉伯语、中文)主要依赖 Token Set Ratio。对于已知有别名的名称,请在 names 数组中传入所有已知别名变体,而不要依赖流程生成这些变体。
infer_beneficial_owner 返回“数据不足”消息。 这表示公司记录中没有高管或董事姓名。未公开披露高管信息的司法管辖区注册的实体通常会出现这种情况。请通过 known_persons 参数提供已知人员,以便为推断图提供初始数据。
工具调用在 180 秒后超时。 对于公司关系图非常庞大的实体(100 个以上相关实体),完整的 EDD 流程可能超过超时时限。请先使用 compute_entity_opacity_score 评估复杂程度,然后使用特定的 jurisdiction 参数调用 generate_edd_report,以限制注册信息查询范围。
帮助我们改进
如果遇到问题,可以在 Apify 账户中启用运行共享,帮助我们更快地调试:
- 前往 账户设置 > 隐私
- 启用 与公开 Actor 创建者共享运行记录
这样一来,出现问题时我们就能查看运行详情,从而更快修复问题。你的数据仅对 Actor 开发者可见,不会公开。
支持
发现 Bug 或有功能请求?请在此 Actor 页面上的 Issues 选项卡中提交问题。如需定制合规集成或企业部署,请通过 Apify 平台联系我们。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。