dsh-validate
mario03690/dsh-validate
Offline identifier checks and Chinese money/tax arithmetic. Checksum-verified identifiers (mainland ID, USCC, bank card, plate, VIN, ISBN, IMEI, IBAN, EAN/UPC) plus amount-in-words, IIT, VAT, mortgage schedules and 调休-aware workday counts.
설치
dsh plugin --profile web add github:mario03690/dsh-validateREADME
dsh-validate
Checksum-verified identifiers (mainland ID, USCC, bank card, plate, VIN, ISBN, IMEI, IBAN, EAN/UPC) plus amount-in-words, IIT, VAT, mortgage schedules and 调休-aware workday counts.
What & why
Every tool here is a published algorithm — ISO 7064 MOD 11-2, Luhn, MOD-97, GB 11643 — computed in code, so the same input gives the same answer today and in five years. Nothing calls a model and nothing calls a third-party lookup service, so nothing here can break because someone else changed an API.
What is deliberately not here: phone-number carrier lookup, full administrative-division tables, courier detection. Those need external databases that change, or differ by locality. No reliable data, no tool — a "roughly right" answer would destroy the point of this pack.
Every set ships what_can_you_do — describe a task in any language, get the exact tool plus a ready-to-run call.
What's in this pack
18 tools, read from the live endpoint on 2026-08-22 — this table is generated, not hand-written, so it cannot drift away from what tools/list actually returns. The Arguments column is what the tool genuinely reads; it comes from the tool's own declared input schema.
| Tool | What it does | Arguments | Price / call |
|---|---|---|---|
what_can_you_do | Describe a task in plain language (any language) and get back exactly which tools on this server do it, with ready- | task | — |
unit_convert | Convert units: length, weight, temperature, area, volume, speed, data size. value + from + to (e.g. 100 km mi, 25 c | value, from, to | $0.001 |
pinyin_convert | Convert Chinese text to pinyin: with or without tones, first letters only, or as a slug. text = Chinese text. | text, style | $0.001 |
id_validate | 校验中国居民身份证号(GB 11643 校验位 + 出生日期真实性),并解出生日、年龄、性别、登记地行政区划码。不联网,不存储号码。 | id, number, text | free |
uscc_validate | 校验统一社会信用代码(GB 32100 校验位)。做企业名单去重、发票抬头核对时,先过这一关能挡掉大部分录入错误。 | code, uscc, text | free |
bankcard_validate | 银行卡号 Luhn 校验(ISO/IEC 7812)。只验号码自洽性,不查开户行——那需要会变的 BIN 库,本工具不猜。 | number, card, text | free |
plate_validate | 中国车牌号校验:省份简称 + 发牌机关 + 序号,支持新能源 6 位(D/F 打头或结尾),排除车牌禁用的字母 I/O。 | plate, text | free |
vin_validate | 车架号 VIN 校验(ISO 3779 第 9 位校验位),并拆出 WMI/VDS/VIS 三段。 | vin, text | free |
isbn_validate | ISBN-10 / ISBN-13 校验位验证,自动识别格式,容忍连字符。 | isbn, text | free |
imei_validate | IMEI 校验(15 位 Luhn)。设备台账、以旧换新核对时用。 | imei, text | free |
iban_validate | 国际银行账号 IBAN 校验(ISO 13616 MOD-97)。跨境收款前核对账号,能挡掉抄错一位这类最常见的退汇原因。 | iban, text | free |
barcode_validate | EAN-13 / UPC-A / EAN-8 条码校验位验证,并给出 GS1 前缀所属成员组织。注意:前缀标识分配号码的组织,不等于商品产地。 | barcode, code, text | free |
amount_to_chinese | 人民币金额转中文大写(壹佰万零壹元贰角叁分)。开票、合同、支票场景,手写容易错的那一步。 | amount, value, text | free |
amount_to_english | 金额转英文大写(SAY USD ONE THOUSAND ... ONLY),跨境发票 / 信用证用。currency 默认 USD。 | amount, value, text, currency | free |
tax_calc_cn | 中国个人所得税:综合所得年度汇算(2019 年起税率表,速算扣除法)。income 必填;可传 special_deduction(三险一金)、special_additional(专项附加)、threshold(默认 60000 | income, special_deduction, special_additional, other_deduction, threshold | free |
vat_calc_cn | 增值税价税分离:含税价 ⇄ 不含税价 + 税额。rate 传 0.13 或 13 都可以;inclusive=false 表示传入的是不含税价。结果带勾稽自证。 | amount, rate, inclusive | free |
loan_calc | 贷款测算:等额本息(默认)与等额本金(method=equal_principal)。principal + annual_rate + years/months。返回月供、总利息、总还款与前几期还款计划,带算术自证。 | principal, annual_rate, years, months, method | free |
workday_between | 算两个日期之间的中国法定工作日天数(识别调休补班,不是简单去周末)。start + end,YYYY-MM-DD。数据来自随代码发布的节假日表。 | start, end | $0.001 |
— in the price column means the tool is not metered per call (session/trial-gated instead). Failed calls are never charged. Check it yourself:
curl -s -X POST https://ainetcafe.com/mcp/validate -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Install
dsh plugin --profile <your-profile> add github:mario03690/dsh-validate
Thin config layer only (one @deepseek-ai/dsh-mcp-client row, shipped as cordis.patch.yml) — no tool code runs on your machine. Built against the MCP client config shape of the dsh v0.1 developer preview; verified against the live endpoint on 2026-08-22.
Cost, quota, privacy
Deterministic, no model calls: $0.001 per call, inside the free anonymous quota. Failed calls are not charged.
No signup for the free anonymous quota. Documents are processed in memory and not retained. The config URL carries ?s=dsh-validate — a channel tag identifying the install path, not you.
Disclosure: built and run by the team behind ainetcafe.com — our own service, free tier plus paid usage. Full bundle (everything at once): dsh-netcafe. MIT.
Compatibility & permissions (at a glance)
| Signal | This plugin |
|---|---|
| Runtime | dsh v0.1 developer preview (Cordis v4). Touches only the MCP client config shape — the narrowest surface available. Verified against a live endpoint on 2026-08-22. |
| What runs locally | Nothing. Ships one cordis.patch.yml row; there is no tool code, no build step and no lifecycle script in this package. |
| Filesystem access | None. |
| Shell / process access | None. |
| Network access | Outbound HTTPS to ainetcafe.com only, from the MCP client that dsh already ships. |
| Credentials | None required for the free tier. An optional AllRouter key, if you supply one, is sent by dsh as a request header and is never stored by us. |
| Data retention | Documents and prompts are processed in memory and not retained. |
| Dependencies | One peer dependency: @deepseek-ai/dsh-mcp-client (ships with dsh). |
| License | MIT (see LICENSE). |
| Publisher | The team that runs ainetcafe.com. Issues get a same-day reply. |
A directory listing is not a security review. Read
cordis.patch.yml— it is short enough to read in full in under a minute.