跳过主要内容
M

dsh-devkit

mario03690/dsh-devkit

The small deterministic operations an agent needs mid-task. JSON/YAML round-trip, JSON Schema validation, text diff, JWT decode, regex testing, SQL dialect transpiling, QR codes, timezone and unit conversion, page screenshots.

安装

dsh plugin --profile web add github:mario03690/dsh-devkit

README

dsh-devkit

npm 上的包名是 dsh-netcafe-devkit —— dsh-devkit 已被他人占用。 仓库名不变,dsh plugin add github:... 的装法照旧。

JSON/YAML round-trip, JSON Schema validation, text diff, JWT decode, regex testing, SQL dialect transpiling, QR codes, timezone and unit conversion, page screenshots.

What & why

These are the operations an agent reaches for in the middle of something else. Doing them by prompting a model is slower, costs more and is not reproducible. transpile_sql runs a real parser (mysql, postgres, bigquery, snowflake, clickhouse, doris, starrocks), so syntax errors come back with line and column instead of a confident rewrite.

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

14 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.

ToolWhat it doesArgumentsPrice / call
what_can_you_doDescribe a task in plain language (any language) and get back exactly which tools on this server do it, with ready-task
redact_textStrip emails, phone numbers, ID numbers, API keys, private keys, JWTs, card numbers and IPs out of text, returningtext, only$0.002
json_yamlConverts JSON to YAML or YAML to JSON. It works out which one you gave it, so you do not have to say. A parse failutext, to$0.001
validate_jsonChecks that text parses as JSON, and optionally that required keys are present with the right top-level types. Retutext, schema$0.001
diff_textReturns which lines were added and which were removed, with line numbers — computed with a longest-common-subsequena, b$0.002
jwt_decodeDecodes the header and payload of a JWT and reports issued-at / expiry as readable timestamps plus seconds remainintoken$0.001
regex_testRuns a regular expression against sample text and returns every match with its position and capture groups (named gpattern, text, flags$0.001
transpile_sqlConvert a SQL statement from one dialect to another — mysql, postgres, sqlite, tsql, oracle, snowflake, bigquery, rsql, read, write$0.001
make_qrAny text or URL → a QR code PNG you can embed or download. Stateless URL form: https://ainetcafe.com/i/qr/text$0.001
json_formatValidate and pretty-print JSON (2-space indent). Reports the error location if invalid.json, url, indent$0.001
timezone_convertConvert a time between time zones, or get current time in any zone. from/to = IANA zone (Asia/Shanghai), time = YYYto, from, time$0.001
unit_convertConvert units: length, weight, temperature, area, volume, speed, data size. value + from + to (e.g. 100 km mi, 25 cvalue, from, to$0.001
sql_from_descriptionPlain-language request + table schema → ready-to-run .sql file with comments.request, schema, dialect$0.01
screenshot_urlFull-page screenshot of any URL → PNG. The same job screenshot APIs charge $7-79/month for.url, width$0.003

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/dev -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Install

dsh plugin --profile <your-profile> add github:mario03690/dsh-devkit

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

Mostly $0.001 per call and deterministic. Two exceptions that are not: sql_from_description ($0.01) calls a model, screenshot_url ($0.003) renders a page. 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-dev — 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)

SignalThis plugin
Runtimedsh 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 locallyNothing. Ships one cordis.patch.yml row; there is no tool code, no build step and no lifecycle script in this package.
Filesystem accessNone.
Shell / process accessNone.
Network accessOutbound HTTPS to ainetcafe.com only, from the MCP client that dsh already ships.
CredentialsNone 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 retentionDocuments and prompts are processed in memory and not retained.
DependenciesOne peer dependency: @deepseek-ai/dsh-mcp-client (ships with dsh).
LicenseMIT (see LICENSE).
PublisherThe 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.

相关插件