ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

ARES (Czech business registry)

โดย milos106รุ่น 0.1.2i★ –iรันบนเครื่อง
ชื่อใน registryio.github.milos106/ares-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

MCP for ARES, the Czech business registry: lookup, due diligence, insolvency, signed provenance

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ
  • ต้องใส่ค่าเหล่านี้: ARES_PROVENANCE_PRIVATE_KEY

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "ares": {
      "command": "npx",
      "args": [
        "-y",
        "@milos106/ares-mcp"
      ],
      "env": {
        "ARES_PROVENANCE_PRIVATE_KEY": "ใส่ค่าของคุณ",
        "ARES_PROVENANCE_KEY_ID": "ใส่ค่าของคุณ",
        "ARES_BASE_URL": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add ares --env ARES_PROVENANCE_PRIVATE_KEY='ใส่ค่าของคุณ' --env ARES_PROVENANCE_KEY_ID='ใส่ค่าของคุณ' --env ARES_BASE_URL='ใส่ค่าของคุณ' -- npx -y @milos106/ares-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "ares": {
      "command": "npx",
      "args": [
        "-y",
        "@milos106/ares-mcp"
      ],
      "env": {
        "ARES_PROVENANCE_PRIVATE_KEY": "ใส่ค่าของคุณ",
        "ARES_PROVENANCE_KEY_ID": "ใส่ค่าของคุณ",
        "ARES_BASE_URL": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "ares": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@milos106/ares-mcp"
      ],
      "env": {
        "ARES_PROVENANCE_PRIVATE_KEY": "ใส่ค่าของคุณ",
        "ARES_PROVENANCE_KEY_ID": "ใส่ค่าของคุณ",
        "ARES_BASE_URL": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • ARES_PROVENANCE_PRIVATE_KEY ความลับ env
    Optional Ed25519 private key (base64 PKCS#8 DER) to enable signed provenance envelopes. Omit to run unsigned.
  • ARES_PROVENANCE_KEY_ID env
    Optional key id advertised in signed envelopes and the JWKS. Defaults to a thumbprint of the public key.
  • ARES_BASE_URL env
    Optional override of the ARES REST base URL (defaults to the public ares.gov.cz endpoint).

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub milos106 ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 0% ของอีก 18386 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 12% ของอีก 18386 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 18386 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

ARES (Czech business registry) ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: ARES_PROVENANCE_PRIVATE_KEY

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 4 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Tethered Trust

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Spec Driven Development

โดย formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

รันบนเครื่อง★ 440MITอัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

Remote Desktop Commander

โดย desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

รันบนคลาวด์★ 211อัปเดต เมื่อวานซืน
ติดตั้ง

Tethered Trust

โดย tetheredtrust.com

Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.

รันบนคลาวด์อัปเดต วันนี้
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

ares-mcp

MCP server for ARES — the Czech business registry. Validate IČO/DIČ, look up companies, statutory bodies, trade licenses and addresses directly from Claude Desktop, Claude Code, Cursor and any other MCP-compatible client.

Open-source (MIT), self-hosted. Runs against the public ARES API — your queries never leave your machine. Optionally emits Ed25519-signed, sourced answers so anyone can verify their integrity and origin offline.

Hosted version: icovazby.cz — full web company-checks across 10+ Czech registers (ARES, Public Register, trade licenses, insolvency, sanctions, …).

ARES (Administrativní registr ekonomických subjektů) is the official public registry of Czech businesses, operated by the Czech Ministry of Finance (MFČR). This project is an independent, community-built MCP server that calls the public ARES REST API.

Not affiliated with the Czech Ministry of Finance. This project is not affiliated with, endorsed by, or sponsored by MFČR or the ARES operator. "ARES" refers to the public information system; this MCP server is third-party software.

  • Free, MIT-licensed code. No API key required (ARES is a public API).
  • 14 stable tools covering the full due-diligence + invoicing workflow: validation, lookup, structured search, search-by-address (virtual-office detection), statutory bodies, trade licenses, VAT check, address standardization, NACE lookup, RES statistical classification (size bracket, ESA 2010 sector), insolvency check, cross-company person graph with Mermaid + optional historical mode for nominee detection, a one-shot ares_full_due_diligence macro with 🟢🟡🔴 risk flag, and an export adapter that emits Fakturoid / iDoklad / Pohoda payloads ready to POST.
  • Two transports. Stdio (default) for local AI clients, Streamable HTTP (/mcp) for remote / web deployment.
  • Verifiable provenance (optional). With a signing key set, the due-diligence, statutory-bodies and insolvency tools return a signed envelope where every fact carries its registry source + date; verify it offline against the published JWKS. A *technical integrity & origin proof — not a qualified e-signature or an official extract.*
  • Defensive by design. Rate-limit aware (token bucket + exponential backoff with Retry-After), per-IP request throttling on the HTTP variant, structured errors, no PII stored or logged by default.

Setup

Two ways to run ares-mcp — pick one:

Option A — npx (no install, recommended)
{

"mcpServers": { "ares": { "command": "npx", "args": ["-y", "@milos106/ares-mcp"] } } }

Option B — from source
git clone git@github.com:milos106/ares-mcp.git

cd ares-mcp npm install npm run build npm test

Then point your MCP client at the absolute path of dist/index.js. The per-client examples below use this from-source form — swap "command": "node", "args": ["…/dist/index.js"] for the npx form above if you prefer a zero-install setup.

Claude Desktop

Edit your 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"] } } }

Restart Claude Desktop.

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

In Cursor settings → MCP servers:

{

"ares": { "command": "node", "args": ["/absolute/path/to/ares-mcp/dist/index.js"] } }

Get ready-to-paste client config

After npm run build, this prints absolute-path config blocks for Claude Desktop, Cursor, Claude Code, and the local HTTP transport:

npm run config

Copy the JSON block straight into your client's MCP config — no path editing needed.

Try it interactively with MCP Inspector
npm run inspector

(Equivalent to npx @modelcontextprotocol/inspector node dist/index.js.)

Opens a browser UI at http://localhost:6274 where you can list tools, fill arguments, and run them against live ARES — no client configuration needed.

Run as a local HTTP service

A second entry point exposes the same tools over MCP Streamable HTTP. Useful when sharing one running instance across multiple local clients.

PORT=3030 npm run start:http

Endpoints:

  • POST /mcp — Streamable HTTP transport (JSON-RPC over HTTP / SSE)
  • GET /healthz — liveness + session count

Configuration via environment variables:

VariableDefaultDescription
PORT3030Listen port
ARES_HTTP_RATE_LIMIT60Per-IP requests per minute (token bucket)
ARES_HTTP_MAX_BODY1000000Max request body bytes
ARES_HTTP_SESSION_TTL_MS3600000Idle session timeout
ARES_HTTP_ALLOW_ORIGIN_(unset)_If set, sent as Access-Control-Allow-Origin (e.g. * or https://example.com)

There is no built-in authentication — bind it to 127.0.0.1 only or put a reverse proxy in front if you ever need to expose it.


Tools

ToolPurpose
ares_validate_icoMod-11 checksum validation. No network call.
ares_lookup_companyAggregated company profile by IČO.
ares_search_companiesStructured search by name, postcode, NACE, legal form.
ares_get_statutory_bodiesDirectors, board, partners (from VR).
ares_get_trade_licensesTrade licenses (from RŽP).
ares_check_vat_payerVAT-payer status with optional DIČ cross-check.
ares_standardize_addressCanonicalize a free-form address via RÚIAN.
ares_lookup_cz_naceCZ-NACE classification lookup.
ares_cross_company_personsGiven 2–50 IČOs, find persons who hold active statutory roles in two or more of them. Returns JSON + Mermaid graph.
ares_search_by_addressFind all entities at a given address. Flags virtual offices / shell-address concentrations.
ares_get_res_classificationStatistical classification from RES — size bracket, ESA 2010 sector, NUTS region.
ares_check_insolvenciFast red-flag: is the entity currently in insolvency proceedings (IR) or marked as bankrupt (CEÚ)?
ares_full_due_diligenceOne-shot DD report — profile + statutary + licenses + VAT + insolvency + 🟢🟡🔴 risk flag + Markdown summary.
ares_export_for_invoicingTransform an ARES profile into a Fakturoid / iDoklad / Pohoda payload ready for invoicing systems. Pure transformation — no calls to the target system.
Example prompts

"Validate IČO 27074358 and tell me if it's a VAT payer and which region it's based in."

"Find Czech IT companies (CZ-NACE 620) registered in Prague."

"Who are the statutory directors of IČO 26168685? When were they appointed?"

"Standardize this address: 'Za prachárnou 4962/45, Jihlava'."

"Look up the CZ-NACE code for software development."

"I have IČOs 26185610, 46967851, 46900411, 27435148. Are any people on the boards of more than one? Draw it."

"Run a full due-diligence check on IČO 45193258 before I sign anything."

The DD prompt calls ares_full_due_diligence and returns a complete risk-flagged report. Real example (Liberty Ostrava a.s., captured 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.

The same prompt on a healthy company (AGROFERT IČO 26185610) yields 🟢 GREEN with 12 active statutary members and no findings.

The last prompt uses ares_cross_company_persons. The tool returns a Mermaid graph that Claude Desktop, Claude Code, and Cursor will render inline. On the Agrofert holding example above, the tool reports that *Michal Jedlička* sits on three of the four boards and *Jaroslav Kurčík* on two — a classic holding-group fingerprint.

A note on person→companies search

ARES's public REST v3 API does not expose a search-by-person endpoint (the AngazovanaOsobaFiltr schema is defined but unused). ares_cross_company_persons therefore operates over a known set of IČOs that you provide — it does not enumerate the registry. Full reverse lookup ("which companies has Jan Novák ever sat on?") requires a mirrored graph database and is out of scope for this MIT-licensed server.


Real example — the Agrofert holding

Run ares_cross_company_persons with four IČOs from the Agrofert group (AGROFERT itself + three subsidiaries) and the tool returns the full board overlap. Captured from a live ARES call on 2026-06-07:

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

Rendered as Mermaid (Claude Desktop / Claude Code / Cursor render this inline):

graph LR

C_26185610["AGROFERT, a.s. 26185610"]:::company C_46967851["PENAM, a.s. 46967851"]:::company C_46900411["Kostelecké uzeniny a.s. 46900411"]:::company C_27435148["Vodňanské kuře, s.r.o. 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;

The third connection — AGROFERT a.s. itself listed as a corporate director in two of its subsidiaries — is a real holding-company pattern that flat per-company listings miss but the graph helper surfaces automatically.


Configuration

The server reads optional environment variables:

VariableDefaultDescription
ARES_BASE_URLhttps://ares.gov.cz/ekonomicke-subjekty-v-be/restAPI base URL
ARES_RATE_PER_SECOND5Token-bucket budget. MFČR documents a ceiling of 500 req/min (~8 req/s); we default to 5 for headroom. Do not exceed 8.
ARES_TIMEOUT_MS15000Per-request timeout
ARES_RETRIES3Retry budget (on top of the initial attempt) for retriable errors

Error handling

Errors are returned as a JSON payload inside the tool result (with isError: true) so the agent can reason about them. Codes:

CodeWhen
NOT_FOUNDThe IČO or resource does not exist in ARES.
INVALID_INPUTThe input failed validation (e.g. IČO checksum, missing search filter).
RATE_LIMITEDARES returned 429 and retries were exhausted.
UPSTREAM_ERRORARES returned 5xx.
NETWORK_ERRORThe request timed out or could not be sent.

Data attribution & license

ARES data is published by the Czech Ministry of Finance as open data under the Creative Commons Attribution 4.0 (CC BY 4.0)

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx