关于 nordic-data
nordic-data 是面向 AI Agent 的 MCP 服务,可查询 15 个欧洲国家的官方企业数据。它涵盖企业核验、合规筛查和地址查询,并通过 Nordic Data API 提供数据。
主要功能
- 01查询企业登记信息
- 02验证欧盟 VAT 号码
- 03生成 KYB 报告
- 04筛查制裁与 PEP 名单
- 05地址自动补全与 LEI 查询
- 06发现并调用只读 API 端点
适用场景
- 01核查欧洲企业身份及登记信息
- 02验证 VAT 号码或生成 KYB 报告
- 03筛查客户名称及关联方制裁风险
MCP 相关
向 MCP 客户端提供 11 项工具,用于企业查询、VAT 验证、KYB、制裁筛查、地址补全、LEI 查询及只读 API 发现和调用。支持 stdio 与 Streamable HTTP 传输。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://nordic-data-mcp-production.up.railway.app/mcp/authclaude mcp add --transport http mnymann-nordic-data https://nordic-data-mcp-production.up.railway.app/mcp/auth{"mcpServers":{"mnymann-nordic-data":{"type":"http","url":"https://nordic-data-mcp-production.up.railway.app/mcp/auth"}}}在 Cursor 中打开{"servers":{"mnymann-nordic-data":{"type":"http","url":"https://nordic-data-mcp-production.up.railway.app/mcp/auth"}}}在 VS Code 中打开{"mcpServers":{"mnymann-nordic-data":{"type":"http","url":"https://nordic-data-mcp-production.up.railway.app/mcp/auth"}}}{"mcpServers":{"mnymann-nordic-data":{"serverUrl":"https://nordic-data-mcp-production.up.railway.app/mcp/auth"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://nordic-data-mcp-production.up.railway.app/mcp/auth需要授权工具
11| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 国家/地区企业标识符。DK=CVR(8 位数字),NO=orgnr(9 位),SE=orgnr(10 位),FI=Y-tunnus(NNNNNNN-D),IE=CRO(1-7 位),UK=8 个字符,FR=SIREN(9 位),DE=HRB 编号,CZ=IČO(8 位),PL=NIP(10 位)或 KRS(10 位),LV=11 位数字,EE=8 位数字,NL=KvK(8 位数字),BE=BCE/KBO(10 位数字),LU=RCSL(B + 数字)。 |
| country | enum | 是 | ISO 3166-1 alpha-2 国家/地区代码,小写。可选值:dk、no、se、fi、ie、uk、fr、de、cz、pl、lv、ee、nl、be、lu。dk | no | se | fi | ie | uk | fr | de | cz | pl | lv | ee | nl | be | lu |
详细介绍
Nordic Data MCP Server
一个 Model Context Protocol 服务,可让 AI Agent(Claude、Cursor、Claude Code、ChatGPT、Copilot 等)直接访问 15 个欧洲国家的官方企业数据。
在 AI 助手中即可查询企业、验证 VAT 号码、生成 KYB 报告、筛查制裁名单、自动补全地址,以及查询 LEI 所有权信息。
DK · NO · SE · FI · IE · UK · FR · DE · CZ · PL · LV · EE · NL · BE · LU
NL 和 DE 需要 Starter+ 订阅(免费层级的 API 密钥会收到 HTTP 402
upgrade_required)。付费层级中,NL 调用消耗 5 倍配额单位,DE 调用消耗 3 倍;其他所有国家均消耗 1 倍。
快速开始
1. 获取 API 密钥
在 addonnordic.com 注册并获取 NORDIC_API_KEY。提供免费层级。
2. 添加到 Claude Desktop
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%/Claude/claude_desktop_config.json(Windows):
{
"mcpServers": {
"nordic-data": {
"command": "npx",
"args": ["-y", "nordic-data-mcp"],
"env": {
"NORDIC_API_KEY": "YOUR_KEY_HERE"
}
}
}
}
重启 Claude Desktop。你应该会在工具菜单中看到“nordic-data”。
3. 添加到 Cursor
在 Cursor 设置 → MCP → 添加新服务,或编辑 ~/.cursor/mcp.json:
{
"mcpServers": {
"nordic-data": {
"command": "npx",
"args": ["-y", "nordic-data-mcp"],
"env": {
"NORDIC_API_KEY": "YOUR_KEY_HERE"
}
}
}
}
4. 添加到 Claude Code
claude mcp add nordic-data --env NORDIC_API_KEY=YOUR_KEY_HERE -- npx -y nordic-data-mcp
5. 添加到 ChatGPT(Pro、Business 或 Enterprise)
ChatGPT 支持将远程 MCP 服务作为自定义连接器。你无需提供 API 密钥 — 托管服务会处理上游身份验证。
- ChatGPT → 设置 → 连接器 → 添加自定义连接器
- URL:
https://nordic-data-mcp-production.up.railway.app/mcp - 完成 — 所有 11 个工具都可立即使用。
自定义连接器需要 ChatGPT Pro、Business、Team 或 Enterprise 方案。
6. 添加到 Claude.ai(网页)
使用相同的托管端点,无需本地安装:
- Claude.ai → 设置 → 连接器 → 添加自定义连接器
- URL:
https://nordic-data-mcp-production.up.railway.app/mcp - 完成。
可用工具
| 工具 | 功能 |
|---|---|
lookup_company | 从官方登记机构获取基本企业数据(CVR、Brønnøysund、Bolagsverket、Companies House、INSEE 等) |
validate_vat | 根据 VIES 验证 27 个欧盟成员国的 VAT 号码 |
screen_sanctions | 批量筛查最多 1000 个名称,核对 UN/EU/UK/OFAC/PEP 名单(UK = FCDO UK Sanctions List;条目超过 745K) |
kyb_full | 综合 KYB(了解你的企业)报告 — 身份、人员、财务、LEI、VAT、制裁、不利媒体、风险评分 |
autocomplete_address | 地址自动补全并提供坐标,适用于 DK(DAWA)、NO(Kartverket)、FR(BAN)、SE 和 FI(OpenStreetMap Nominatim) |
lookup_lei | GLEIF 法人机构标识符查询 — 正向、反向,以及母公司/子公司关系 |
company_enriched | 一次调用获取企业登记数据和国家行业统计数据(DK、NO、SE、FI) |
fr_history | 根据 INSEE Sirene 双时态数据生成法国企业历史时间线(名称、业务、状态、法律形式变更) |
list_endpoints | 发现:列出底层 API 中所有只读数据端点(230+),可选关键词筛选 |
get_endpoint_schema | 发现:调用端点前获取其完整参数和响应架构 |
call_endpoint | 发现:对任意已发现端点执行只读请求(GET/HEAD,以及三个允许列表中的 POST 筛查查询) |
Agent 提示词示例
“查询丹麦的 CVR 61056416” → 调用
lookup_company { country: "dk", id: "61056416" }→ Carlsberg A/S
“对 Equinor(NO 923609016)运行完整的 KYB 报告” → 调用
kyb_full { country: "no", id: "923609016" }
“
LU26375245是有效的增值税号码吗?” → 调用validate_vat { country: "LU", vat_number: "26375245" }
“针对制裁名单筛查这些名称:Vladimir Putin、Acme Corp、John Smith” → 调用
screen_sanctions { names: [...] }
“查找 Tesco UK(00445790)的 LEI,并包含母公司和子公司” → 调用
lookup_lei { mode: "reverse", country: "uk", id: "00445790" }
国家 / ID 格式参考
| 国家 | ID 类型 | 格式 |
|---|---|---|
| DK | CVR | 8 位数字 |
| NO | Organisasjonsnummer | 9 位数字 |
| SE | Organisationsnummer | 10 位数字(带或不带连字符) |
| FI | Y-tunnus | NNNNNNN-D(7 位数字 + 校验位) |
| IE | CRO number | 1–7 位数字 |
| UK | Companies House | 8 个字符(数字,或以 SC、NI、OC 等为前缀) |
| FR | SIREN | 9 位数字 |
| DE | LEI or HRB | LEI = 20 位字母数字;HRB = 前缀 + 数字 |
| CZ | IČO | 8 位数字 |
| PL | NIP / REGON / KRS | NIP=10 位,REGON=9/14 位,KRS=10 位 |
| LV | Reģistrācijas nr. | 11 位数字 |
| EE | Registrikood | 8 位数字 |
| NL | KvK-nummer | 8 位数字 |
| BE | BCE/KBO | 10 位数字 |
| LU | RCSL | B + 数字 |
上表适用于 lookup_company、kyb_full 和 lookup_lei(reverse 模式)。company_enriched 覆盖 DK、NO、SE 和 FI;autocomplete_address 覆盖 DK、NO、SE、FI 和 FR。
对于 validate_vat,国家代码使用 27 个欧盟成员国的 大写 VIES 代码——希腊使用 EL(而不是 GR)。不支持英国和挪威。
配置
你只需要设置以下环境变量:
| 变量 | 必需 | 描述 |
|---|---|---|
NORDIC_API_KEY | 是 | 你从 addonnordic.com 获取的 API 密钥 |
就这么简单。MCP 服务会为你连接托管的 Nordic Data API。
自托管(远程 HTTP 传输)
对于远程 MCP 托管(例如 Anthropic Connectors、Smithery、基于 Web 的客户端),请部署随附的 Streamable HTTP 传输:
npm install
npm run build
NORDIC_API_KEY=sk_... npm run start:http # listens on :$PORT (default 3000)
端点:
GET /healthz— 健康检查(返回版本 + 状态)ALL /mcp— 公开 MCP 端点。无需密钥;所有上游调用均计入服务自身的NORDIC_API_KEY(免费增值 / 发现)。按 IP 限流。ALL /mcp/auth— 经过身份验证的 MCP 端点。每个请求都需要Authorization: Bearer ndk_...;每次调用均计入该客户自己的密钥 + 配额。
两个端点都通过 Mcp-Session-Id 标头基于会话工作。
连接远程客户端
此服务使用**静态 API 密钥身份验证,而非 OAuth。**连接方式取决于你的客户端:
- 支持标头的客户端(Claude Code、Cursor、Smithery、Claude.ai / ChatGPT 自定义连接器):将其指向
…/mcp/auth,并提供密钥Authorization: Bearer ndk_...。每个请求均计入你自己的租户 + 配额。 - 通用 / 自动发现客户端(仅支持“URL + OAuth”):将其指向公开的
…/mcp(无需密钥)。否则,此类客户端会尝试 OAuth Dynamic Client Registration(POST /register)并失败——此服务按设计不提供 OAuth 端点,并会返回清晰的 JSONoauth_not_supported错误(而非登录流程)。 - **本地客户端:**优先使用 stdio 包——设置
NORDIC_API_KEY后运行npx -y nordic-data-mcp(参见上方的快速开始)。
完整 OAuth 2.1(让任意外部客户端都能使用自己的密钥自行注册)计划作为 Phase-2 项目,目前尚未实现。
包含 railway.toml,可在 Railway 上一键部署:
- New Project → Deploy from GitHub repo → 选择
Mnymann/nordic-data-mcp - 将 Root Directory 设置为
nordic-data-mcp - 添加环境变量
NORDIC_API_KEY - Railway 会自动检测配置、构建并公开 HTTPS URL
设计说明
- 轻量适配器。 不包含业务逻辑、缓存或转换。每个工具都与一个 Nordic Data API 端点一一对应。
- 日志中不包含个人身份信息。 不记录请求或响应正文。
- 必须提供 API 密钥。 未设置
NORDIC_API_KEY时,进程将拒绝启动。 - 速率限制。 后端按密钥实施配额;HTTP 传输层还会对公开的
/mcp端点施加按 IP 限制,作为纵深防御措施(可通过PUBLIC_RATE_LIMIT/PUBLIC_RATE_WINDOW_MS调整)。缓存由上游处理。 - 发起任何 HTTP 调用之前,都会使用 zod 验证输入。
贡献
欢迎在 github.com/Mnymann/nordic-data-mcp 提交问题和 PR。
请勿在错误报告中包含 API 密钥、请求正文或响应内容。
免责声明
Nordic Data 返回从官方和公开来源汇总的信息性决策支持内容。这不是法律、合规、财务或专业建议,也不是最终判定。KYB 报告、制裁/PEP 匹配、不利媒体报道和风险评分都是需要审查的信号,而非判决——请独立核实,并在采取行动前运用自己的专业判断。服务的使用受 AddonNordic 条款约束。
许可证
MIT © AddonNordic ApS
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。