mcpField
S
SONAR: KYB due diligence

SONAR: KYB due diligence

本地服务
getsonar.report商业与营销06 天前更新

关于 SONAR: KYB due diligence

SONAR: KYB due diligence 是用于核查供应商、合作伙伴和经销商公开企业及风险记录的 MCP 服务。它提供带来源的调查结果或异步书面报告,结果需由人工审阅。

主要功能

  1. 01查询 13 个国家的企业登记
  2. 02筛查制裁名单和 PEP
  3. 03检查 ICIJ Offshore Leaks 记录
  4. 04查询监管登记信息
  5. 05检索近 10 年负面媒体
  6. 06提供结构化结果或完整报告

适用场景

  1. 01供应商入驻前进行核查
  2. 02筛查合作伙伴是否命中制裁或 PEP 名单
  3. 03提交完整 KYB 报告并查询状态

MCP 相关

该 MCP 服务提供五种工具,用于获取调查结果、提交报告及查询状态、检索负面媒体和查看账户余额。它将 MCP 客户端连接到 SONAR REST API。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ivanolegvak-sonar": {
"command": "uvx",
"args": [
"getsonar-mcp"
],
"env": {
"SONAR_API_KEY": "<SONAR_API_KEY>",
"SONAR_API_BASE": "<SONAR_API_BASE>",
"SONAR_API_TIMEOUT": "<SONAR_API_TIMEOUT>"
}
}
}
}
启动命令uvx getsonar-mcp
需要配置的环境变量
SONAR_API_KEY密钥Your SONAR API key (sk-sonar-...). Create one at https://getsonar.report/developer/keys. Your first API call is free.
SONAR_API_BASEAPI base URL. Only change it for a staging or self-hosted SONAR.
SONAR_API_TIMEOUTPer-request timeout in seconds.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypigetsonar-mcp0.2.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

getsonar-mcp

PyPI version MCP Registry License: MIT

用于 SONAR 的 MCP 服务:对供应商、合作伙伴和经销商开展 KYB 尽职调查,可通过 AI 助手调用。

让 Claude、Cursor 或 Windsurf 调查一家公司,即可获取注册记录、制裁和 PEP 匹配结果、ICIJ Offshore Leaks 命中记录及负面媒体信息,每项均附有来源链接。

SONAR 是基于公开记录构建的尽职调查辅助工具。它不是受监管的 AML/KYC 服务提供商,其输出也不是合规决策:调查结果需由人工审核。

功能

  • 公司注册信息:13 个国家的商业注册机构(英国 Companies House 及另外 12 家),可查询法定名称、注册编号、状态、地址和高管
  • 制裁与 PEP 筛查:原生支持 OFAC、UN、英国 OFSI 和瑞士 SECO 名单,以及 OpenSanctions 聚合器
  • ICIJ Offshore Leaks:Panama Papers、Paradise Papers 和 Pandora Papers、Bahamas Leaks
  • 监管登记信息:英国 FCA Register、英国被取消资格的董事、The Gazette 破产公告
  • 负面媒体信息:回溯查询过去 10 年的新闻、投诉和评价
  • 两种调用方式:快速获取结构化调查结果(同步,30-90 秒),或生成完整书面报告(异步,约 3 分钟)

可与 Claude Desktop、Claude Code、Cursor、Windsurf 及其他任何 Model Context Protocol 客户端配合使用。已列入官方 MCP Registry,名称为 io.github.Ivanolegvak/sonar-mcp。

定价

API 按调用次数付费:

调用价格
/findings(kyb_findings、adverse_media)€0.40
/run(kyb_run_submit)€2.00
check_report_status、account_balance免费

首次 API 调用免费(适用于任何端点)。之后的调用从预付余额中扣费:前往 getsonar.report/developer/keys 充值,最低 €5。套餐和 Web 应用的免费额度请参阅 getsonar.report/pricing。

获取 API 密钥

  1. 在 getsonar.report 注册
  2. 打开 Developer → API keys
  3. 点击 Create API Key 并复制 sk-sonar-... 密钥

安装

需要 uv(它提供 uvx)。无需安装其他内容:uvx getsonar-mcp 会获取并运行最新版本。如要改用 pipx:运行 pipx install getsonar-mcp,然后使用 getsonar-mcp 命令。

密钥应设置在服务进程的 SONAR_API_KEY 环境变量中。

Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "sonar": {
      "command": "uvx",
      "args": ["getsonar-mcp"],
      "env": {
        "SONAR_API_KEY": "sk-sonar-YOUR_KEY_HERE"
      }
    }
  }
}

重启 Claude Desktop。工具菜单中会显示五个 SONAR 工具。

Claude Code
claude mcp add sonar --env SONAR_API_KEY=sk-sonar-YOUR_KEY_HERE -- uvx getsonar-mcp

添加 --scope user,即可在每个项目中使用。运行 claude mcp list 查看配置。

Cursor

编辑 ~/.cursor/mcp.json(适用于所有项目)或 .cursor/mcp.json(适用于单个项目):

{
  "mcpServers": {
    "sonar": {
      "command": "uvx",
      "args": ["getsonar-mcp"],
      "env": {
        "SONAR_API_KEY": "sk-sonar-YOUR_KEY_HERE"
      }
    }
  }
}
Windsurf

编辑 ~/.codeium/windsurf/mcp_config.json(或前往 Windsurf Settings → Cascade → MCP servers → View raw config):

{
  "mcpServers": {
    "sonar": {
      "command": "uvx",
      "args": ["getsonar-mcp"],
      "env": {
        "SONAR_API_KEY": "sk-sonar-YOUR_KEY_HERE"
      }
    }
  }
}

其他客户端(Continue.dev、Zed、Cline 等)使用相同的命令、参数和环境变量;有关配置文件位置,请参阅对应客户端的 MCP 文档。

配置

变量默认值用途
SONAR_API_KEY(必填)你的 sk-sonar-... API 密钥
SONAR_API_BASEhttps://api.getsonar.report用于覆盖为暂存环境或可自托管 SONAR 的地址
SONAR_API_TIMEOUT120每个请求的超时时间,单位为秒
SONAR_MCP_LOG_LEVELINFO设置为 DEBUG 可输出详细日志(stderr)

工具

工具功能价格
kyb_findings快速 KYB 检查:提供带来源的结构化调查结果€0.40
kyb_run_submit提交完整 KYB 报告,并返回 run_id€2.00
adverse_media负面新闻、投诉和评论€0.40
check_report_status查询通过 kyb_run_submit 提交的报告状态免费
account_balance余额和剩余免费试用调用次数免费

所有工具都会返回供模型阅读的 Markdown。

kyb_findings

输入:

{ "company_name": "Tesco PLC", "website": "https://www.tesco.com" }

必须提供 company_name。website 为可选项,但强烈建议填写:它有助于将目标公司与名称相同的其他公司区分开来。

输出(节选,示例值仅供说明):

# KYB Quick Lookup: Tesco PLC
Sources checked: 42 · Processing time: 41250ms
**Found data**: registry, regulatory, adverse_media
**Checked, clean** (no findings — collector ran): sanctions, offshore_leaks

## Registry (confidence: HIGH)
- **TESCO PLC (00445790), active**
  Public limited company
  Source: https://find-and-update.company-information.service.gov.uk/company/00445790
kyb_run_submit

输入:与 kyb_findings 相同。输出:

Report submitted.
- Run ID: `3f6c...`
- Status: pending
- Estimated time: 90 seconds

Call `check_report_status` with run_id='3f6c...' and agent_type='kyb-diligence' in 30-60 seconds to get the result.
check_report_status

输入:

{ "run_id": "3f6c...", "agent_type": "kyb-diligence" }

agent_type 为 kyb-diligence(默认值)或 adverse-media。报告处理期间,工具会返回 Report status: running. Still processing — check again in 15-30 seconds.;处理完成后,会返回简要摘要,其中包括总体结论和风险级别、公司详情、包含 PASS / REVIEW / FLAG 的检查表、风险标记、董事及制裁覆盖情况。

adverse_media

输入:与 kyb_findings 相同。输出:格式与 kyb_findings 相同的 Markdown,但仅包含新闻、投诉和评论网站的内容(不含制裁或 PEP 筛查)。

account_balance

输入:无。输出:

# Account usage — 2026-10
- Calls this month: **0**
- Free trial calls remaining: **1** (granted once at signup)
- Pre-paid balance: **€5.00**

提示词示例

“对 Tesco PLC(tesco.com)进行 KYB 检查,并告诉我有哪些情况需要进一步查看。”

模型会调用 kyb_findings,读取结构化调查结果,并指出制裁、登记信息或负面媒体命中项及其来源。

“对 Wise Payments Limited 获取一份完整的 KYB 报告,并在报告完成后为我总结。”

模型会调用 kyb_run_submit,然后反复调用 check_report_status,直到报告完成。

“我还剩多少次免费试用调用?”

模型会调用 account_balance。

验证安装

MCP Inspector 会启动服务并列出其工具:

SONAR_API_KEY=sk-sonar-YOUR_KEY_HERE npx @modelcontextprotocol/inspector uvx getsonar-mcp

无需密钥即可列出工具;调用工具则需要有效密钥。

不使用 MCP,直接调用 API

MCP 服务是 SONAR REST API 的轻量客户端。要直接调用:

export SONAR_API_KEY=sk-sonar-YOUR_KEY_HERE

# Structured findings: sync, 30-90 s, €0.40
curl -X POST 'https://api.getsonar.report/v1/agents/kyb-diligence/findings' \
  -H "X-API-Key: $SONAR_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"company_name":"Tesco PLC","website":"https://www.tesco.com"}'

# Full report: async, about 3 min, €2.00; returns {"run_id": ..., "status": "pending"}
curl -X POST 'https://api.getsonar.report/v1/agents/kyb-diligence/run' \
  -H "X-API-Key: $SONAR_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"company_name":"Tesco PLC","website":"https://www.tesco.com"}'

# Poll until status is "completed"
curl 'https://api.getsonar.report/v1/agents/kyb-diligence/run/RUN_ID' -H "X-API-Key: $SONAR_API_KEY"

# Usage, balance and free trial calls left
curl 'https://api.getsonar.report/v1/usage' -H "X-API-Key: $SONAR_API_KEY"

Agent:kyb-diligence(登记信息、制裁、PEP、UBO、负面媒体)和 adverse-media(仅限负面新闻)。website 字段必须是 http:// 或 https:// URL。完整的 OpenAPI 规范:api.getsonar.report/docs。开发者指南:getsonar.report/developers。

故障排除

工具未显示:检查配置文件是否为有效的 JSON,重启客户端,并在终端中运行 uvx --version,确认已安装 uv。

401 Unauthorized:SONAR_API_KEY 缺失或错误。请在 getsonar.report/developer/keys 检查密钥。

402 Payment Required:免费首次调用已用完,且余额为 €0。请前往 getsonar.report/developer/keys 充值,最低 €5 起。

超时:提高 SONAR_API_TIMEOUT。完整报告可能需要 3 分钟以上;请使用 check_report_status 轮询,而不是等待单次调用完成。

uvx getsonar-mcp 运行的是旧版本:uvx 会缓存环境。运行一次 uvx getsonar-mcp@latest,或运行 uv cache clean getsonar-mcp。

结果中的公司不正确:请传入 website。简短的品牌名称在新闻搜索中可能与无关公司重名;知道域名后,SONAR 会排除这些重名结果。

开发

uv sync
uv run pytest        # stdio smoke test against a fake API, no network

维护者:ARCHITECTURE.md 介绍模块布局以及 stdio / HTTP 传输方式;DIRECTORIES.md 介绍发布流程以及如何在 MCP 目录中收录。

支持

请发送邮件至 [email protected],或在 GitHub 上提交 issue。

许可证

MIT,详见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。