mcpField
A
Ares (czech Business Registry) Mcp — Ares Mcp

Ares (czech Business Registry) Mcp — Ares Mcp

本地服务
icovazby.cz商业与营销018 周前更新

关于 Ares (czech Business Registry) Mcp — Ares Mcp

ares-mcp 将 MCP 客户端连接到捷克公共 ARES 企业登记系统,用于企业核查与尽职调查。它支持结构化搜索、跨企业人员关联、可选的来源签名,并可通过本地或 HTTP 方式运行。

主要功能

  1. 01验证 IČO 并查询企业
  2. 02按企业信息或地址搜索
  3. 03核查董事、执照、增值税和破产情况
  4. 04比对不同企业的关联人员
  5. 05生成带风险标记的尽调报告
  6. 06导出开票系统所需数据

适用场景

  1. 01签约前核实捷克企业
  2. 02查找登记在某地址的实体
  3. 03检查多家企业间共用的法定代表人
  4. 04为开票准备企业信息

MCP 相关

该服务通过 stdio 或 Streamable HTTP 向 MCP 客户端提供 14 种 ARES 工具。它查询公共 ARES API,并可选择返回带签名和来源信息的结果。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"ares": {
"command": "npx",
"args": [
"-y",
"@milos106/ares-mcp"
],
"env": {
"ARES_PROVENANCE_PRIVATE_KEY": "<ARES_PROVENANCE_PRIVATE_KEY>",
"ARES_PROVENANCE_KEY_ID": "<ARES_PROVENANCE_KEY_ID>",
"ARES_BASE_URL": "<ARES_BASE_URL>"
}
}
}
}
启动命令npx -y @milos106/ares-mcp
需要配置的环境变量
ARES_PROVENANCE_PRIVATE_KEY密钥Optional Ed25519 private key (base64 PKCS#8 DER) to enable signed provenance envelopes. Omit to run unsigned.
ARES_PROVENANCE_KEY_ID密钥Optional key id advertised in signed envelopes and the JWKS. Defaults to a thumbprint of the public key.
ARES_BASE_URLOptional override of the ARES REST base URL (defaults to the public ares.gov.cz endpoint).

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

安装包
npm@milos106/ares-mcp0.1.2

工具

14

收录的工具列表 · 更新于 2 周前

参数类型必填说明
icostring是捷克 IČO(Identifikační číslo osoby)。接受 1–8 位数字,可带可选的 'CZ' 前缀、空格、连字符或句点。示例:'27074358'、'CZ27074358'、'270 743 58'。

详细介绍

ares-mcp

面向 ARES(捷克商业登记处)的 MCP 服务。 可直接通过 Claude Desktop、Claude Code、Cursor 和其他兼容 MCP 的客户端,验证 IČO/DIČ、查询公司、法定机构、营业执照和地址。

开源(MIT),可自托管。 通过捷克公共 ARES API 运行——查询不会离开你的设备。还可选择生成 Ed25519 签名的、注明来源的答复,任何人都能离线验证其完整性和来源。

托管版本: icovazby.cz——覆盖 10 多个捷克登记处(ARES、公共登记处、营业执照、破产、制裁等)的完整网页版公司核查服务。

ARES(Administrativní registr ekonomických subjektů,经济主体行政登记处)是捷克官方公共企业登记处,由捷克财政部(MFČR)运营。本项目是一个由社区独立构建的 MCP 服务,调用公共 ARES REST API。

与捷克财政部无关联。 本项目与 MFČR 或 ARES 运营方无关联、未获其认可或赞助。“ARES”指公共信息系统;此 MCP 服务是第三方软件。

  • 免费,采用 MIT 许可的代码。 无需 API 密钥(ARES 是公共 API)。
  • 14 个稳定工具,覆盖完整的尽职调查和开票工作流:验证、查询、结构化搜索、按地址搜索(检测虚拟办公室)、法定机构、营业执照、增值税检查、地址标准化、NACE 查询、RES 统计分类(规模区间、ESA 2010 行业)、破产检查、带 Mermaid 的跨公司人员关系图,并可选择启用历史模式以检测名义代持人;还有一个一次性调用的 ares_full_due_diligence 宏,提供 🟢🟡🔴 风险标记,以及一个导出适配器,可生成可直接 POST 的 Fakturoid / iDoklad / Pohoda 载荷。
  • 两种传输方式。 Stdio(默认),适用于本地 AI 客户端;Streamable HTTP(/mcp),适用于远程 / Web 部署。
  • 可验证的来源信息(可选)。 设置签名密钥后,尽职调查、法定机构和破产检查工具会返回签名信封,每条事实都附有登记处来源和日期;可通过已发布的 JWKS 离线验证。这是技术性的完整性和来源证明,并非合格电子签名或官方摘录。
  • 防御性设计。 可感知速率限制(令牌桶 + 带 Retry-After 的指数退避);HTTP 版本按 IP 节流请求;提供结构化错误;默认不存储或记录个人身份信息。

设置

运行 ares-mcp 有两种方式——任选一种:

选项 A — npx(无需安装,推荐)
{
  "mcpServers": {
    "ares": { "command": "npx", "args": ["-y", "@milos106/ares-mcp"] }
  }
}
选项 B — 从源代码运行
git clone [email protected]:milos106/ares-mcp.git
cd ares-mcp
npm install
npm run build
npm test

然后将 MCP 客户端指向 dist/index.js 的绝对路径。下面各客户端的示例使用从源代码运行的方式——如果你更希望采用零安装配置,可将 "command": "node", "args": ["…/dist/index.js"] 替换为上方的 npx 配置。

Claude Desktop

编辑你的 claude_desktop_config.json:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
  • Linux:~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ares": {
      "command": "node",
      "args": ["/absolute/path/to/ares-mcp/dist/index.js"]
    }
  }
}

重启 Claude Desktop。

Claude Code
claude mcp add ares -- node /absolute/path/to/ares-mcp/dist/index.js
Cursor

在 Cursor 设置 → MCP 服务中:

{
  "ares": {
    "command": "node",
    "args": ["/absolute/path/to/ares-mcp/dist/index.js"]
  }
}
获取可直接粘贴的客户端配置

运行 npm run build 后,此命令会输出适用于 Claude Desktop、Cursor、Claude Code 和本地 HTTP 传输的绝对路径配置块:

npm run config

将 JSON 配置块直接复制到客户端的 MCP 配置中——无需编辑路径。

使用 MCP Inspector 交互式试用
npm run inspector

(等同于 npx @modelcontextprotocol/inspector node dist/index.js。)

浏览器会打开 http://localhost:6274,你可以在其中列出工具、填写参数,并对接实时 ARES 运行工具——无需配置客户端。

作为本地 HTTP 服务运行

另一个入口通过 MCP Streamable HTTP 提供相同的工具。适合在多个本地客户端间共享同一个运行中的实例。

PORT=3030 npm run start:http

端点:

  • POST /mcp — Streamable HTTP 传输(通过 HTTP / SSE 传输 JSON-RPC)
  • GET /healthz — 存活状态 + 会话数量

通过环境变量进行配置:

变量默认值说明
PORT3030监听端口
ARES_HTTP_RATE_LIMIT60每个 IP 每分钟的请求数(令牌桶)
ARES_HTTP_MAX_BODY1000000请求正文最大字节数
ARES_HTTP_SESSION_TTL_MS3600000会话空闲超时时间
ARES_HTTP_ALLOW_ORIGIN(unset)如果设置,则作为 Access-Control-Allow-Origin 发送(例如 * 或 https://example.com)

没有内置身份验证——仅将其绑定到 127.0.0.1,或在需要对外开放时在前面部署反向代理。


工具

工具用途
ares_validate_icoMod-11 校验和验证。不发起网络调用。
ares_lookup_company根据 IČO 汇总公司简介。
ares_search_companies按名称、邮政编码、NACE 和法律形式进行结构化搜索。
ares_get_statutory_bodies董事、委员会成员、合伙人(来自 VR)。
ares_get_trade_licenses营业执照(来自 RŽP)。
ares_check_vat_payer增值税纳税人状态,可选交叉核对 DIČ。
ares_standardize_address通过 RÚIAN 将自由格式地址规范化为标准地址。
ares_lookup_cz_nace查询 CZ-NACE 分类。
ares_cross_company_persons给定 2–50 个 IČO,查找在其中两个或更多企业担任现任法定职务的人员。返回 JSON + Mermaid 图。
ares_search_by_address查找指定地址上的所有实体,并标记虚拟办公室/空壳地址集中情况。
ares_get_res_classification来自 RES 的统计分类——规模区间、ESA 2010 部门、NUTS 地区。
ares_check_insolvenci快速风险提示:该实体是否正在进行破产程序(IR),或被标记为破产(CEÚ)。
ares_full_due_diligence一站式尽职调查报告——简介 + 法定信息 + 执照 + 增值税 + 破产情况 + 🟢🟡🔴 风险标记 + Markdown 摘要。
ares_export_for_invoicing将 ARES 简介转换为可供开票系统使用的 Fakturoid / iDoklad / Pohoda 数据载荷。纯转换——不会调用目标系统。
示例提示词

“验证 IČO 27074358,并告诉我它是否为增值税纳税人,以及位于哪个地区。”

“查找在布拉格注册的捷克 IT 公司(CZ-NACE 620)。”

“IČO 26168685 的法定董事有哪些?他们是什么时候获任的?”

“将此地址规范化:‘Za prachárnou 4962/45, Jihlava’。”

“查询软件开发对应的 CZ-NACE 代码。”

“我有以下 IČO:26185610、46967851、46900411、27435148。是否有人在多个企业的董事会任职?请绘制关系图。”

“在我签署任何文件之前,对 IČO 45193258 进行完整的尽职调查。”

尽职调查提示词会调用 ares_full_due_diligence,并返回完整的风险标记报告。真实示例(Liberty Ostrava a.s.,采集于 2026-06-07):

# Due diligence: Liberty Ostrava a.s.

Risk level: 🔴 RED

Findings:
- 🚨 Active insolvency or bankruptcy on record.

## Identification
- IČO: `45193258`
- DIČ: `CZ45193258` (VAT payer: yes)
- Legal form: 121
- Founded: 1992-01-22
- Registered seat: Vratimovská 689/117, Kunčice, 71900 Ostrava

## Governance
- Active statutary members: 3

## Insolvency
- Insolvenční rejstřík: ACTIVE
- Centrální evidence úpadců: NONE
- Currently insolvent.

对经营状况良好的公司(AGROFERT,IČO 26185610)使用相同提示词,会得到 🟢 GREEN,显示 12 名现任法定成员,且没有发现问题。

最后一个提示词会使用 ares_cross_company_persons。该工具会返回 Mermaid 图,Claude Desktop、Claude Code 和 Cursor 可在行内渲染。在上文的 Agrofert 控股集团示例中,该工具报告 Michal Jedlička 在四个董事会中的三个任职,Jaroslav Kurčík 在其中两个任职——这是控股集团的典型特征。

关于按人员→公司搜索的说明

ARES 的公共 REST v3 API 未提供按人员搜索的端点(AngazovanaOsobaFiltr 架构已定义但未使用)。因此,ares_cross_company_persons 只能针对你提供的已知 IČO 集合运行,不会枚举注册信息。完整的反向查询(“Jan Novák 曾在哪些公司任职?”)需要镜像图数据库,不在这个 MIT 许可服务器的范围内。


真实示例——Agrofert 控股公司

使用 Agrofert 集团的四个 IČO(AGROFERT 本身加上三家子公司)运行 ares_cross_company_persons,该工具会返回完整的董事会重叠情况。数据采集自 2026-06-07 的实时 ARES 调用:

zpracovanoIco: 4
totalActivePersons: 29
sharedCount: 3

  • Ing. MICHAL JEDLIČKA (1978-01-06)
       AGROFERT, a.s.            — člen představenstva
       Kostelecké uzeniny a.s.   — předseda představenstva
       Vodňanské kuře, s.r.o.    — Jednatel

  • Ing. JAROSLAV KURČÍK (1969-08-24)
       AGROFERT, a.s.            — člen představenstva
       PENAM, a.s.               — předseda představenstva

  • AGROFERT, a.s. (právnická osoba, IČO 26185610)
       PENAM, a.s.               — člen představenstva
       Kostelecké uzeniny a.s.   — člen představenstva

渲染为 Mermaid 图(Claude Desktop / Claude Code / Cursor 会以内嵌方式渲染):

graph LR
  C_26185610["AGROFERT, a.s.<br/>26185610"]:::company
  C_46967851["PENAM, a.s.<br/>46967851"]:::company
  C_46900411["Kostelecké uzeniny a.s.<br/>46900411"]:::company
  C_27435148["Vodňanské kuře, s.r.o.<br/>27435148"]:::company
  P_0(["Ing. MICHAL JEDLIČKA"]):::person
  P_0 ---|"člen představenstva"| C_26185610
  P_0 ---|"předseda představenstva"| C_46900411
  P_0 ---|"Jednatel"| C_27435148
  P_1(["Ing. JAROSLAV KURČÍK"]):::person
  P_1 ---|"člen představenstva"| C_26185610
  P_1 ---|"předseda představenstva"| C_46967851
  P_2["AGROFERT, a.s. (IČO 26185610)"]:::legal
  P_2 ---|"člen představenstva"| C_46967851
  P_2 ---|"člen představenstva"| C_46900411
  classDef company fill:#e0f7fa,stroke:#006064,stroke-width:2px;
  classDef person fill:#fff3e0,stroke:#bf360c,stroke-width:2px;
  classDef legal fill:#f3e5f5,stroke:#4a148c,stroke-width:2px;

第三种关联——AGROFERT a.s. 本身被列为两家子公司的法人董事——是一个真实的控股公司模式,逐家公司平铺的列表会遗漏这一点,但图助手会自动呈现。


配置

服务器会读取以下可选环境变量:

变量默认值说明
ARES_BASE_URLhttps://ares.gov.cz/ekonomicke-subjekty-v-be/restAPI 基础 URL
ARES_RATE_PER_SECOND5令牌桶请求预算。MFČR 文档规定上限为 500 次请求/分钟(约 8 次请求/秒);默认值设为 5,以留出余量。不要超过 8。
ARES_TIMEOUT_MS15000每次请求的超时时间
ARES_RETRIES3可重试错误的重试预算(不包括初始尝试)

错误处理

错误会作为 JSON 负载在工具结果中返回(带有 isError: true),以便 Agent 对其进行判断。错误代码:

代码触发条件
NOT_FOUNDARES 中不存在该 IČO 或资源。
INVALID_INPUT输入未通过验证(例如 IČO 校验和错误、缺少搜索筛选条件)。
RATE_LIMITEDARES 返回 429,且重试次数已用尽。
UPSTREAM_ERRORARES 返回 5xx。
NETWORK_ERROR请求超时或无法发送。

数据归属与许可

ARES 数据由捷克财政部作为开放数据发布,采用 Creative Commons Attribution 4.0 (CC BY 4.0) 许可。将这些工具的输出用于你自己的产品、内容或分析时,必须注明来源。

建议使用以下署名文本:

来源:ARES — Administrativní registr ekonomických subjektů,© Ministerstvo financí ČR,https://ares.gov.cz/,采用 CC BY 4.0 许可。

为方便使用,每个工具结果都包含一个 _attribution 字段,其中提供完整的引用信息。

此 MCP 服务的代码采用 MIT 许可证(参见 LICENSE);上游数据许可证(CC BY 4.0)独立于此代码许可证,且不受其影响。

ARES API 的可接受使用方式

MFČR 发布了 ARES 公共 API 的运行规则。使用此 MCP 服务并不意味着你可以免于遵守这些规则——你的客户端必须遵守这些规则。摘要如下:

  • 每位用户每分钟最多 500 次请求。超过此限制,MFČR 保留阻止访问的权利。
  • 不要重复发送格式错误的查询。
  • 不要维持过多并发自动化查询。
  • 不要使用多个 IP 地址规避速率限制。
  • 不要随机爬取数据库(例如批量枚举 IČO)。
  • 不要探测安全边界。

此服务器强制采用默认每秒 5 次请求(每分钟 300 次)的预算,并使用指数退避。你有责任确保所有实例合计使用量均不超出 MFČR 限制,尤其是在运行多个实例时。

完整运行条件:wwwinfo.mfcr.cz/ares/ares_podminky.html.cz。

免责声明

  • 数据为公开信息,不适用于法律程序。 根据 MFČR 的说明,所有来自 ARES 的信息“pouze informativního charakteru”(仅供参考)。如需用于法院程序,请从公共登记处 justice.cz 获取正式摘录。
  • ARES 中的增值税纳税人状态最多延迟 24 小时。 权威来源为 MFČR 增值税登记处 adisspr.mfcr.cz。未来的 Premium 层级可能会加入对 MFČR 的直接查询。
  • GDPR。 ARES 包含法定代表人的个人数据(姓名、出生日期)。MFČR 基于公共任务这一合法依据(GDPR 第 6(1)(e) 条)发布这些数据。如果你在后续处理中使用这些数据——包括将其传递给你自己的大模型、存储数据或向最终用户展示数据——你就是数据控制者,必须自行遵守 GDPR。本服务默认不会记录请求或存储响应。

路线图

  • **v0.x(当前):**8 个免费的 MVP 工具,采用 MIT 许可,通过 npm 分发。
  • Premium 层级(计划中):ares_subscribe_changes、ares_bulk_lookup、ares_due_diligence_report、ares_export_to_invoice_systems。

贡献

欢迎提交错误报告和 PR。提交前请运行:

npm run lint
npm run typecheck
npm test

链接

许可证

MIT © Miloš Pospíšil

评论

支持 Markdown

第一次接触 MCP?

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

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