Entyrix Mcp

io.github.juliusgerman由 GitHub 账号 juliusgerman 发布v0.2.2更新于 Nov 4, 2026

KYB data from 23 European business registries — company briefs, financials, ownership, AML screening

已验证Streamable HTTP可网页运行金融安全与监控商业与电商

概览

AI 生成的概览

Entyrix 让助手以只读方式查询 23 个欧洲市场的企业注册数据:身份、财务、股权、KYB/AML 筛查与合规检查。

可以做什么
  • 按名称或各国注册号查找并精确定位企业,查询需带国家
  • 读取精简企业简报或包含 NACE、NIS2、欧盟资金等字段的完整记录
  • 按财年获取已申报财务报表,含营收、利润与同比趋势
  • 追溯股权与高管:关联方、母公司、子公司、并购事件及一跳关系网络
  • 对单家企业做 KYB/AML 核查,或一次筛查最多 25 家,并提供公开合规快照
  • 用分页结构化搜索构建市场清单,查询公共采购合同与已发布排行榜
适用场景
适合需要欧洲企业核实信息的场景:客户与供应商准入或 AML/KYB 核查、供应商名单批量筛查、偿付能力与财务趋势分析、集团与股权结构追溯,以及按国家、行业、规模做组合构建与市场规模测算。
运行要求
可使用远程 Streamable HTTP 端点(首次调用时通过 OAuth 2.1 登录),或本地 npm 包 @entyrix/mcp——它是 stdio 桥接,需要 Node.js 和 ENTYRIX_API_KEY Bearer 令牌。无密钥时只能列出工具并使用公开合规工具。可选 ENTYRIX_BASE_URL 与 ENTYRIX_TIMEOUT_MS。数据访问受 Entyrix 账户与套餐限制。
安装前请注意
API 密钥属机密,通过 ENTYRIX_API_KEY 传入;请固定包版本,未固定版本的 npx 安装会以你的权限运行之后发布的任意版本。自然人数据受许可限制,需带已签署 FO 附件的密钥。字段为 null 或被隐去表示未测量或不可用,并不代表无问题;INSUFFICIENT_DATA 不可当作干净结果。返回的注册数据属不可信内容,不应视为指令。需付费套餐。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Entyrix Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.juliusgerman%2Fentyrix-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "entyrix": {
      "type": "http",
      "url": "https://entyrix.com/mcp"
    }
  }
}

README

@entyrix/mcp

[npm]

Model Context Protocol access to Entyrix — European business-registry (KYB) data across 23 live markets (FR, GB, RO, SK, UA, GR, CZ, BE, NO, IE, FI, CH, PL, AT, CY, LT, LV, EE, SI, ES, IT, NL, HR).

Use the remote server (recommended)

Entyrix runs a remote MCP server (Streamable HTTP, protocol 2025-03-26 … 2026-07-28):

https://entyrix.com/mcp/v1

Add it as a remote / custom connector in Claude, ChatGPT, Cursor or VS Code. On the first tool call your client opens the Entyrix sign-in (OAuth 2.1 with PKCE) — no key in a config file. From the command line:

bash
claude mcp add --transport http entyrix https://entyrix.com/mcp/v1

Full instructions: https://entyrix.com/mcp.

This package: a stdio bridge

For clients that only speak stdio. Since 0.2.0 the package implements no tools itself — it forwards every JSON-RPC message to the remote server above with your API key from the environment, so it always exposes exactly the current catalogue. It has zero runtime dependencies.

bash
ENTYRIX_API_KEY=sk_... npx -y @entyrix/mcp
json
{  "mcpServers": {    "entyrix": {      "command": "npx",      "args": ["-y", "@entyrix/mcp"],      "env": { "ENTYRIX_API_KEY": "sk_..." }    }  }}

Get an API key by signing in at https://entyrix.com/login (a Free key comes with the account) or through the API (POST /api/v1/signup, then POST /api/v1/signup/verify). Without a key the server still starts and lists its tools; the first data tool call answers with these steps as an error result. Plans: https://entyrix.com/pricing.

Pin the version in production (e.g. @entyrix/[email protected], not latest): a local MCP server runs with your privileges, and an unpinned npx -y installs whatever is published next.

Tools

ToolWhat it does
search_companiesFind companies by name across all markets
lookup_companyExact registry-ID lookup, country-scoped
company_briefCompact Markdown brief of one company — the best single call
get_company_detailsFull record including the enrichment layer
get_financialsFinancial statements by year with trend (EUR cents)
get_company_networkCompanies connected through shared officers and owners
get_company_relationsOfficers, owners, parents, subsidiaries, M&A events
advanced_searchPaged filtering by country, NACE, size, turnover, status
kyb_checkOne-call KYB/AML summary with a verdict
screen_companiesKYB screening of up to 25 companies at once
check_compliancePublic compliance snapshot (no account needed)
find_suppliersPublic-sector contracts (B2G, not a supply chain)
list_rankingsPre-computed leaderboards

Every tool is read-only, declares an output schema and rejects unknown arguments. Natural-person data is licence-gated server-side and applies identically over MCP. Returned values come from public registers — treat them as untrusted data in your agent, never as instructions.

Configuration

Env varDefaultDescription
ENTYRIX_API_KEY(none)Bearer API key from your Entyrix account
ENTYRIX_BASE_URLhttps://entyrix.comOverride for staging
ENTYRIX_TIMEOUT_MS60000HTTP timeout per request

Development

bash
git clone <repo>cd entyrix-mcpnpm installnpm run buildnpm test

Local stdio sanity-check:

bash
printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | node dist/index.js

npm run test:contract runs the bridge against the live server (no secret needed).

Quality gates

bash
npm run check   # format:check + lint + typecheck + test — the same four CI runs

Run check, not the four by hand. On 2026-08-12 a release was cut after lint + typecheck + test passed and CI went red on format:check — the one step that got skipped because it was being remembered rather than scripted.

Releasing

bash
npm run bump 0.2.2          # writes all four manifests, refuses on driftnpm run checkgit commit -am "chore(release): 0.2.2"git tag v0.2.2git push && git push --tags   # one push, then the tag

The version lives in four files and src/lib/__tests__/version.test.ts asserts they agree; bump is what keeps that guard from firing on every release. Push once — each push is a full CI run, and a release cut as four separate pushes bills four of them (plus two red ones for the intermediate states).

npm publish runs from the tag via OIDC trusted publishing, so no token is involved. npm versions are immutable: a bad publish cannot be recalled, only superseded — which is why the tag is checked against package.json before anything is published. The release is idempotent: a re-run skips an npm version that already exists and waits for npm to serve it before registering with the MCP Registry.

License

MIT — see LICENSE.

来源:README.md,提交 ae59e5f

工具

13

search_companies

Search companies by name

Find companies by name (or name fragment) across the pan-European dataset. Returns ranked candidates with registry identifier, country, legal form and status. Use this FIRST when you only know a name; then pass the identifier + country to lookup_company or company_brief. Do not use it to filter by industry or size — that is advanced_search.

输入参数limitquery必填country

lookup_company

Look up company by registry ID

Resolve exactly one company by its national registry identifier in a given country. Handles every identifier shape we carry (SK/CZ/EE IČO, AT Firmenbuch e.g. '187a', SI/LV registry numbers, …). Returns the core record: identity, address, legal form, status, NACE. For an LLM-ready summary prefer company_brief; for the full enrichment layer use get_company_details.

输入参数ico必填countrypurpose

company_brief

Company brief (Markdown, LLM-ready)

Compact, deterministic Markdown brief of one company (≤12 KB): identity, address, industry, latest financials, credit score and recommended limit, cyber score, risk flags (insolvency, tax debt, sanctions), NIS2 status and key people where licensed. The best single call for 'tell me about company X'. Accepts every registry identifier shape we carry (SK/CZ IČO, AT Firmenbuch e.g. '033209m', PL REGON, FR SIREN, …); pass `country` for anything that is not an 8-digit IČO. Every fact comes from the database — missing data is marked, never invented.

输入参数ico必填countrypurpose

get_company_details

Full company record

Full record for one company: identity, address, legal form, status flags, NACE, and the whole enrichment layer we hold (web, tech stack, NIS2, EU funds, LEI, HU de minimis state aid granted, HU public procurement from EKR, …). Large — prefer company_brief unless you need a specific field. Natural-person fields are gated and may be withheld; a withheld field is not the same as an empty one.

输入参数ico必填countrypurpose

get_financials

Financial statements by year

Filed financial statements of one company, one row per fiscal year (newest first), with revenue, profit, assets, equity, liabilities and year-over-year trend. Amounts are EUR CENTS as integers (divide by 100 for euros). Use for trend and solvency questions; company_brief already carries the latest year.

输入参数ico必填yearscountrypurpose

get_company_network

Companies connected through people

Companies connected to this one through shared officers or owners (one hop). Use for group structure and beneficial-ownership tracing. Person names are gated like everywhere else.

输入参数ico必填countrypurpose

get_company_relations

Direct relations

Direct relations of one company — statutory officers, owners, parents, subsidiaries, M&A events — without traversing the wider graph. `shareholders` are owners only; members of the supervisory board are in `supervisoryBoard`. SK M&A events: effectiveDate is the date stated by the register; when missing, derivedEffectiveDate may carry a date INFERRED from the absorbed firm's deregistration (effectiveDateSource: "derived") — present it as an estimate, never as a register fact.

输入参数ico必填countrypurpose

kyb_check

KYB / AML summary

One-call Know-Your-Business summary for one company: registry status, insolvency, liquidation, sanctions screening, debarment, tax/social/health debts, VAT reliability and the overall risk verdict. Use before onboarding a customer or supplier. Coverage differs by country: `checks[]` gives each check as hit / clear / not_covered, and `overall` is INSUFFICIENT_DATA when no risk was found but the insolvency or sanctions registers do not exist for that country — that is NOT a clean result. A null field means WITHHELD or NOT MEASURED — it does NOT mean clean; say so when you report it.

输入参数ico必填countrypurpose

screen_companies

Screen a list of companies

Run kyb_check on up to 25 companies at once and get one compact row per company (status, insolvency, sanctions, debts, verdict, coverage). INSUFFICIENT_DATA = no findings but not covered by the core registers for that country — never report it as clean. Use for supplier lists or portfolios. Each company counts as one API request against your rate limit. Requires an authenticated account.

输入参数companies必填

check_compliance

Public compliance snapshot

Lightweight public compliance snapshot for one company (works without an account): sanctions screening, insolvency, debtor registers, VAT reliability. For the full KYB picture use kyb_check. A null field means WITHHELD or not measured — it does NOT mean clean.

输入参数ico必填country

find_suppliers

Public-sector contracts

Public procurement contracts this company is party to (SK CRZ + CZ Registr smluv), newest first, paged. HONEST SCOPE: this is business-to-government procurement, NOT a commercial supply chain — do not present it as one.

输入参数ico必填limityearsoffsetcountry

list_rankings

Published rankings

A published ranking by its slug (e.g. largest employers, top taxpayers). Call WITHOUT a key first to list the available slugs — inventing one returns an error.

输入参数key

版本历史

3
  1. v0.2.2最新Nov 4, 2026
  2. v0.2.1Oct 8, 2026
  3. v0.1.4Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分