EU Business Data (VAT, EORI, company, sanctions, KYB)

EU VAT (VIES) and EORI validation, company registry, sanctions screening, KYB. Free tier, x402.

我该使用它吗

质量与安全性

A
描述质量
98%
模式完整度
76%
命名质量
92%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(1)

  • MEDIUMTool 'verify_vat' description contains placeholder text在 verify_vat 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,478token 数(工具定义)
~731 B典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.94%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "eu-business-data-mcp": {
      "url": "https://api.wsystem.dev/mcp/"
    }
  }
}

远程端点

https://api.wsystem.dev/mcp/streamable-http

它能做什么

工具清单

工具(13)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢verify_vat(vat, requester)

Validate an EU VAT number against the official European Commission VIES service (27 EU states + XI Northern Ireland). Use when asked whether a VAT ID is valid/active, before zero-rated reverse-charge B2B invoices, or to get a company's registered name/address from its VAT number. Input: VAT with country prefix, e.g. 'IE6388047V', 'DE811193231' (spaces/dots ok). Returns status: valid | invalid | invalid_format | member_state_unavailable (VIES/member state down - retry later, valid=null) | error, plus name, address (if the member state discloses them; DE/ES often don't) and consultation_number (audit proof) when requester is set. UK (GB) VAT checks are coming soon: until HMRC live access is granted, GB numbers return status member_state_unavailable, valid=null, error HMRC_LIVE_ACCESS_PENDING (not charged). For >1 number use verify_batch.

输入模式

{
  "type": "object",
  "properties": {
    "vat": {
      "title": "Vat",
      "type": "string"
    },
    "requester": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": "HU33119856",
      "title": "Requester"
    }
  },
  "required": [
    "vat"
  ],
  "title": "verify_vatArguments"
}
🟢verify_batch(vats, requester)

Validate up to 100 EU VAT numbers in one call via VIES (supplier/customer list cleanup, onboarding, invoice runs). Same per-item result as verify_vat; items with member_state_unavailable should be retried later (GB items stay member_state_unavailable until HMRC live access is granted; they are not charged).

输入模式

{
  "type": "object",
  "properties": {
    "vats": {
      "items": {
        "type": "string"
      },
      "title": "Vats",
      "type": "array"
    },
    "requester": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": "HU33119856",
      "title": "Requester"
    }
  },
  "required": [
    "vats"
  ],
  "title": "verify_batchArguments"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Result",
      "type": "array"
    }
  },
  "required": [
    "result"
  ],
  "title": "verify_batchOutput"
}
🟢lookup_company(query, country, limit)

Look up a company in official European business registers by name or registry number. country: FR (SIREN), NO (org.nr), FI (Y-tunnus), CZ (ICO), PL (KRS number), EE, or any other ISO code / 'LEI' (GLEIF). Returns legal name, ID, status/active, address, VAT ID, activity code and official source link. Use to confirm a company exists and is active, find its registry number, or map a name to a VAT ID.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "country": {
      "default": "",
      "title": "Country",
      "type": "string"
    },
    "limit": {
      "default": 3,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "lookup_companyArguments"
}
⚪screen_sanctions(name, threshold, birth_year, country)

Screen a person or company name against official EU, UN, OFAC SDN and UK sanctions lists. Fuzzy matching with transliteration; returns candidate matches with 0-100 scores, list, programme, DOB. A potential match needs human review; this is a screening aid, not legal advice.

输入模式

{
  "type": "object",
  "properties": {
    "name": {
      "title": "Name",
      "type": "string"
    },
    "threshold": {
      "default": 85,
      "title": "Threshold",
      "type": "number"
    },
    "birth_year": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Birth Year"
    },
    "country": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Country"
    }
  },
  "required": [
    "name"
  ],
  "title": "screen_sanctionsArguments"
}
🟢kyb_check(company, country, requester)

One-call KYB check of a supplier/customer: EU VAT validation (VIES) + official business register + EU/UN/OFAC/UK sanctions screening, returning a pass / review / fail verdict with reasons. company: a VAT ID ('FR40303265045'), a company name, or a registry id; country: optional ISO code (e.g. 'NO').

输入模式

{
  "type": "object",
  "properties": {
    "company": {
      "title": "Company",
      "type": "string"
    },
    "country": {
      "default": "",
      "title": "Country",
      "type": "string"
    },
    "requester": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": "HU33119856",
      "title": "Requester"
    }
  },
  "required": [
    "company"
  ],
  "title": "kyb_checkArguments"
}
⚪verify_eori(eori)

Validate an EU EORI (customs Economic Operators Registration and Identification) number, e.g. 'SE5560360793', 'DE1234567890123', against the official European Commission EOS service. Use for import/export, customs declarations and freight-forwarder onboarding. Returns valid/invalid and trader name/address only when the trader consented to publication. UK (GB) EORIs are not in EOS (HMRC checks those); XI EORIs are.

输入模式

{
  "type": "object",
  "properties": {
    "eori": {
      "title": "Eori",
      "type": "string"
    }
  },
  "required": [
    "eori"
  ],
  "title": "verify_eoriArguments"
}
⚪verify_eori_batch(eoris)

Validate up to 100 EU EORI numbers in one call via the official EC EOS service (customs / import-export KYB).

输入模式

{
  "type": "object",
  "properties": {
    "eoris": {
      "items": {
        "type": "string"
      },
      "title": "Eoris",
      "type": "array"
    }
  },
  "required": [
    "eoris"
  ],
  "title": "verify_eori_batchArguments"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "title": "Result",
      "type": "array"
    }
  },
  "required": [
    "result"
  ],
  "title": "verify_eori_batchOutput"
}
🟡validate_einvoice(xml, rules)

Validate an EU e-invoice XML (UBL 2.1 Invoice/CreditNote or UN/CEFACT CII, e.g. XRechnung, Factur-X/ZUGFeRD XML) against the official CEN EN 16931 rules and, for XRechnung, the KoSIT XRechnung 3.0 rules. Returns valid, and every error with its rule ID (e.g. BR-CO-10), a plain-English message, XPath and a fix hint. rules: auto | en16931 | xrechnung. Slovak sellers also get eFaktúra field checks (FR SR transposition v1.12, warnings with ruleset SK-FS); Norwegian sellers get NO-LAW field checks. Peppol-specific rules are not checked yet. For PDFs use the REST endpoint POST /einvoice/validate.

输入模式

{
  "type": "object",
  "properties": {
    "xml": {
      "title": "Xml",
      "type": "string"
    },
    "rules": {
      "default": "auto",
      "title": "Rules",
      "type": "string"
    }
  },
  "required": [
    "xml"
  ],
  "title": "validate_einvoiceArguments"
}
🟡create_einvoice(invoice)

Create a validated EU e-invoice (UBL 2.1) from simple JSON. invoice = {format: en16931|xrechnung|peppol-bis3, invoice_number, issue_date (YYYY-MM-DD), due_date?, tax_point_date?, delivery_date?, currency (EUR), buyer_reference?, seller: {name, vat_id, street, city, postal_code, country, email, phone, contact_name, company_id?, company_id_scheme?, legal_form?}, buyer: {...}, lines: [{description, quantity, unit_price, unit?, vat_category (S|Z|E|AE|K|G|O), vat_rate}], payment: {iban, bic?, terms?}}. Totals and VAT breakdown are computed; returns {valid, xml, totals, errors}.

输入模式

{
  "type": "object",
  "properties": {
    "invoice": {
      "additionalProperties": true,
      "title": "Invoice",
      "type": "object"
    }
  },
  "required": [
    "invoice"
  ],
  "title": "create_einvoiceArguments"
}
🟡einvoice_route(id)

'Can I e-invoice this company?' id = EU VAT number (e.g. 'BE0403170701') or Peppol id ('0208:0403170701'). Returns VIES VAT status, Peppol registration (Peppol Directory, then SML/SMP; BIS 3 invoice support), the country's B2B e-invoice mandate (dates, format, source) and the recommended format for create_einvoice. France's PPF directory is not included yet.

输入模式

{
  "type": "object",
  "properties": {
    "id": {
      "title": "Id",
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "title": "einvoice_routeArguments"
}
🟡send_einvoice_sandbox(invoice, transport)

SANDBOX ONLY - never reaches a real buyer. Runs the full send flow on an invoice (same JSON as create_einvoice): VIES check of the buyer VAT, sanctions screen of the buyer name, EN 16931 create + validate, route lookup (Peppol/mandate), transport hand-off and an Ed25519-signed evidence receipt (JWS). transport: "mock" (simulated, default), "recommand" or "e-invoice-be" (the UBL is really submitted to that Peppol access point's sandbox, addressed to W System's own sandbox company; the partner document id is returned). Use it to build and test an integration before live sending exists.

输入模式

{
  "type": "object",
  "properties": {
    "invoice": {
      "additionalProperties": true,
      "title": "Invoice",
      "type": "object"
    },
    "transport": {
      "default": "mock",
      "title": "Transport",
      "type": "string"
    }
  },
  "required": [
    "invoice"
  ],
  "title": "send_einvoice_sandboxArguments"
}
⚪due_diligence_report(company, country)

Counterparty due-diligence report in one call: VIES VAT, official business register, EU/UN/OFAC/UK sanctions, EC EORI, GLEIF LEI and Peppol e-invoice route, with deterministic risk flags, 0-100 risk score, pass/review/fail verdict, sources and UTC timestamp. company: VAT ID (best), registry number or name; country: ISO code for names.

输入模式

{
  "type": "object",
  "properties": {
    "company": {
      "title": "Company",
      "type": "string"
    },
    "country": {
      "default": "",
      "title": "Country",
      "type": "string"
    }
  },
  "required": [
    "company"
  ],
  "title": "due_diligence_reportArguments"
}
🟢check_fr_pa_registry(name, website, limit)

Is this e-invoicing platform on France's official list of Plateformes Agréées (PA)? name = platform or company name (e.g. 'Pennylane'), website = its site (e.g. 'https://www.acubeapi.com/'); give at least one. Checks the DGFiP lists on impots.gouv.fr: registered PAs (with registration date) and operators awaiting interoperability tests. Returns on_official_list, status (approved | awaiting_interop_tests | possible_match | not_found), scored matches, list date and the official source. Use for supplier due diligence before the French reform (receive from 1 Sep 2026, SMEs issue from 1 Sep 2027). A 'solution compatible' is not a PA itself. Unofficial copy; the official lists prevail.

输入模式

{
  "type": "object",
  "properties": {
    "name": {
      "default": "",
      "title": "Name",
      "type": "string"
    },
    "website": {
      "default": "",
      "title": "Website",
      "type": "string"
    },
    "limit": {
      "default": 5,
      "title": "Limit",
      "type": "integer"
    }
  },
  "title": "check_fr_pa_registryArguments"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本13 个工具