MCP.Market

datuma_k MCP server

by marthvon·io.github.marthvon/datuma-k·v1.0.0

Query, validate, preview, and generate source from *.dtct data contracts and *.ngin templates.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

full report

Adoption
Growing

0 stars30 downloads/wk

Reviews

Write one

Nobody has reviewed datuma_k yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

datuma_k tools (7, 1 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • advise_ngin

    Decide whether a coding task should use the ngin template engine or stay handwritten. Use ngin when two or more platforms must stay in sync on contract-derived types, validation, or UI.

  • generatewrite action

    Run datuma_k run: commit planned files through dkcache. Overwrites text inside generated spans; keeps text between spans.

  • infer_patterns

    Suggest shared Data/Enum traits, field attributes, and UI widgets from the contract. Flag unusual default-vocabulary pairings as association_suggestions (review notes, not errors). Flag single-platform sync risks. Map aliases like text_type to string. Does not write files or reject contracts.

  • list_project

    List .env directories and *.dtct, *.ngin, *.def.ngin, and keywords.md for a datuma_k project.

  • preview

    Plan generated files from ngin without committing. Returns planned paths and content. Does not write disk.

  • query_contracts

    JSON catalog of dtct models, fields, traits, types, and attributes. Optional filters match dk.trait / dk.model / dk.field / dk.attribute / dk.type.

  • validate

    Parse *.dtct / *.ngin / *.def.ngin and require a data/keywords.md table (kind, description, purpose, platforms) for every contract name. Does not write files.

Public scan report

scanner v0.1.10 · 2026-10-14 · same rubric, same numbers if you re-run it

no findings
  • Code scan12 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 23 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 92/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How datuma_k compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
92/100
higher than 93% of 48,243 servers
Tools
7
the typical server has 7
Tools that change things
14%
typical: 0%. Fewer write tools means less an agent can break
Downloads a week
30
more than 18% of 12,306 servers with a package

What its tools let an agent do: 6 read · 1 create

Install datuma_k in Claude Code, Cursor or VS Code

Runs npx -y @marthvon/datuma-k-mcp on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add datuma-k -- npx -y @marthvon/datuma-k-mcp
Add to Cursor

What the publisher says

From the datuma_k repository's README, as published. We do not edit it. Read it on GitHub

datuma_k

A data contract (.dtct) plus templates (.ngin) that generate source. Declare the shape once; each platform gets its own types, validation, and UI instead of copying fields by hand.

An API backend and a React client both need the same records: capacity 1–500, startsat a datetime, title required. Without a shared contract those rules are rewritten in Pydantic, Zod, forms, and serializers, and they drift. datumak keeps the shape in .dtct. Shared attributes (min, max, local, required) mean the same thing everywhere. ngin turns them into different* code on purpose: Pydantic Field(ge=, le=) on Python, Zod .min().max() on TypeScript.

Guide: guide/README.md — getting started, contracts, templates, the scripting language, dk queries, and generation.

Install

The command is datumak. The package name is datuma-k. The Homebrew tap and Scoop bucket use datumak (underscore) — brew tap marthvon/datuma-k clones a repo that does not exist.

More detail: guide/getting-started.md.

macOS (and Linux with Homebrew) — Homebrew 6 ignores untrusted taps, so brew install datuma-k after a bare brew tap will not find it:

brew install marthvon/datuma_k/datuma-k

If that still fails after an earlier brew tap, run brew untap marthvon/datuma_k first.

Fedora

sudo dnf copr enable marthvon/datuma-k
sudo dnf install datuma-k

Debian / Ubuntu — no apt repo:

# x86_64
curl -fsSL -o /tmp/datuma-k.deb https://github.com/marthvon/datuma_k/releases/download/v1.0.0/datuma-k_1.0.0_amd64.deb && sudo apt install /tmp/datuma-k.deb && rm -f /tmp/datuma-k.deb

# arm64
curl -fsSL -o /tmp/datuma-k.deb https://github.com/marthvon/datuma_k/releases/download/v1.0.0/datuma-k_1.0.0_arm64.deb && sudo apt install /tmp/datuma-k.deb && rm -f /tmp/datuma-k.deb

Alpine — musl .apk (unsigned). On Docker Alpine, install curl first; skip sudo if you are root. If a previous glibc apk is installed, apk del datuma-k first.

apk add --no-cache curl
curl -fsSL -o /tmp/datuma-k.apk https://github.com/marthvon/datuma_k/releases/download/v1.0.0/datuma-k_1.0.0_x86_64.apk && apk add --allow-untrusted /tmp/datuma-k.apk && rm -f /tmp/datuma-k.apk

aarch64: datuma-k1.0.0aarch64.apk. The command is datuma_k.

Windows

scoop bucket add datuma_k https://github.com/marthvon/scoop-datuma_k
scoop install datuma-k

Direct binary — download a binary or .rpm from the same release page, rename to datumak (or datumak.exe on Windows), and put it on PATH. On Fedora without Copr: sudo dnf install ./datuma-k--1.x8664.rpm.

From source: cargo build --release → target/release/datuma_k.

Quick start

datuma_k start myapp
cd myapp

start creates data/, engine/, definition/, a .env, data/keywords.md, and a starter definition/cases.def.ngin. The .env is:

ROOT_DIRECTORY=.
DTCT_DIRECTORY=data
NGIN_DIRECTORY=engine
DEF_DIRECTORY=definition

Add .dtct under data/, .ngin under engine/, and extra .def.ngin under definition/ as needed. Document every contract name in data/keywords.md. Then generate from this** project directory (not $HOME or / — if a command asks, type yes):

datuma_k run

Commands

datuma_k start <project-name>
datuma_k check
datuma_k catalog [--trait NAME] [--model NAME] [--field NAME] [--attribute NAME] [--type NAME]
datuma_k preview
datuma_k run

start takes a single directory name (no / or \). check, catalog, and preview print JSON and do not write generated files. catalog filters match dk include filters. run commits planned files through dkcache.

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

datuma_k: common questions

Is datuma_k MCP server safe?
Yes, by our scan: it is graded A (92/100). Read the datuma_k safety report
How do I install datuma_k?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does datuma_k need an API key?
No secret keys are declared. It reads 1 setting from the environment.
Is datuma_k maintained?
The last commit was 45 days ago (2026-09-21). The latest release is v1.0.0.
How does datuma_k compare with other MCP servers?
safety score 92/100 (higher than 93% of 48,243 servers); tools 7 (the typical server has 7); tools that change things 14% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.