Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Query, validate, preview, and generate source from *.dtct data contracts and *.ngin templates.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
DATUMA_K你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"datuma-k": {
"command": "npx",
"args": [
"-y",
"@marthvon/datuma-k-mcp"
],
"env": {
"DATUMA_K": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add datuma-k --env DATUMA_K=your-value -- npx -y @marthvon/datuma-k-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"datuma-k": {
"command": "npx",
"args": [
"-y",
"@marthvon/datuma-k-mcp"
],
"env": {
"DATUMA_K": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"datuma-k": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@marthvon/datuma-k-mcp"
],
"env": {
"DATUMA_K": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
DATUMA_K env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 marthvon 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.0)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Zendesk
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Zendesk MCP Pack — tickets, users, organizations via OAuth.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
stdio MCP server for agents using the installed datuma_k binary in an app repo. It does not link the compiler crate. Set DATUMA_K to the binary if it is not on PATH.
Published to npm as @marthvon/datuma-k-mcp and to the MCP Registry as io.github.marthvon/datuma-k.
Cursor / Claude example (mcp.json):
{
"mcpServers": { "datuma_k": { "command": "npx", "args": ["-y", "@marthvon/datuma-k-mcp"] } } }
datuma_k must be on PATH. If it is not, point DATUMA_K at the binary:
{
"mcpServers": { "datuma_k": { "command": "npx", "args": ["-y", "@marthvon/datuma-k-mcp"], "env": { "DATUMA_K": "/ABS/PATH/TO/datuma_k/target/release/datuma_k" } } } }
cd mcp
npm install npm run build
Then use "command": "node" with "args": ["/ABS/PATH/TO/datuma_k/mcp/dist/index.js"].
The process cwd should be the datuma_k project (the directory with .env), or pass root on each tool call.
| Tool | Binary | Notes |
|---|---|---|
list_project | (files + .env) | Directories and contract/template paths |
query_contracts | datuma_k catalog | Optional trait / model / field / attribute / type |
validate | datuma_k check | Parse + data/keywords.md required |
preview | datuma_k preview | Plan without writing |
generate | datuma_k run | Writes generated spans |
advise_ngin | (local rules) | When to use ngin vs handwritten code |
infer_patterns | catalog + keywords.md | Traits, widgets, association review notes, sync risks, aliases |
datuma://language/dtctdatuma://language/ngindatuma://language/standardsdatuma://docs/keywordsdatuma://docs/practicesdatuma://docs/when-nginadd-model, add-field, scaffold-ngin, should-use-ngin, infer-contract-patterns
npm test
Two registries, in this order. npm hosts the tarball; the MCP Registry hosts only metadata and verifies it against the published npm package, so npm must go first or the second publish fails with Registry validation failed for package.
| Name | Where | Set in |
|---|---|---|
@marthvon/datuma-k-mcp | npm package | package.json name |
io.github.marthvon/datuma-k | MCP Registry server | package.json mcpName and server.json name — these two must match, or the registry rejects the publish |
The io.github.marthvon/ prefix is not cosmetic: GitHub device-flow auth only grants that namespace. A different prefix needs DNS or HTTP auth.
brew install mcp-publisher # or a binary from the registry releases page
npm login # npm account, scope @marthvon
npm requires 2FA to publish. If the account does not have it, npm publish fails with 403 ... Two-factor authentication or granular access token with bypass 2fa enabled is required, before it ever looks at the tarball. Check with npm profile get; enable with npm profile enable-2fa auth-and-writes or on npmjs.com, and keep the recovery codes.
Bump the version in three places — the registry rejects a version it has already seen, and a mismatch between the npm package version and server.json packages[0].version fails verification:
package.json → versionserver.json → versionserver.json → packages[0].versionThen:
npm test # tsc + node --test
mcp-publisher validate # checks server.json against the live registry, publishes nothing npm publish --otp=123456 # prepublishOnly runs the build; drop --otp to be prompted mcp-publisher login github # device code → github.com/login/device mcp-publisher publish
mcp-publisher login persists a token, so day-to-day releases are npm publish then mcp-publisher publish.
Verify:
npm view @marthvon/datuma-k-mcp version
curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.marthvon/datuma-k"
files in package.json limits the tarball to dist, resources, and README.md. resources/ is required at runtime — server.ts resolves it as dist/../resources — so dropping it from files produces a package that installs cleanly and fails on every resource read. Confirm with npm pack --dry-run before publishing.
| Error | Cause |
|---|---|
403 ... Two-factor authentication ... is required | 2FA disabled on the npm account. See above. |
403 ... you do not have access | The @marthvon scope belongs to an org; confirm membership with npm org ls marthvon. |
Registry validation failed for package | npm publish did not happen yet, or mcpName in package.json does not match name in server.json. |
Invalid or expired Registry JWT token | Re-run mcp-publisher login github. |
You do not have permission to publish this server | Server name does not start with io.github. /. |
expected length <= 100 on body.description | server.json description is capped at 100 characters. The npm description is not. |