mcpField
D
datuma_k

datuma_k

ローカル
github.com開発ツール07 週間前に更新

datuma_k について

datuma_k MCPは、アプリのリポジトリでインストール済みのdatuma_kバイナリを使うエージェント向けのstdio MCPサーバーです。契約やテンプレートの検索、検証、生成プレビュー、生成に加え、言語リソースとプロンプトを提供します。

主な機能

  1. 01プロジェクトの契約・テンプレートパス一覧
  2. 02データ契約の検索
  3. 03契約とキーワードの検証
  4. 04生成計画のプレビュー
  5. 05コード断片の生成
  6. 06パターン推定とルールの助言

活用シーン

  1. 01プロジェクト内の契約とテンプレートの確認
  2. 02モデルやフィールドによる契約検索
  3. 03書き込み前の生成結果の確認
  4. 04モデルやフィールド追加時のガイド

MCP 対応

stdio経由でMCPクライアントにツール、リソース、プロンプトを提供し、一部の処理ではインストール済みのdatuma_kバイナリを呼び出します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"marthvon-datuma-k": {
"command": "npx",
"args": [
"-y",
"@marthvon/datuma-k-mcp"
],
"env": {
"DATUMA_K": "<DATUMA_K>"
}
}
}
}
起動コマンドnpx -y @marthvon/datuma-k-mcp
設定が必要な環境変数
DATUMA_KAbsolute path to the datuma_k binary. Omit if datuma_k is already on PATH.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@marthvon/datuma-k-mcp1.0.0

ツール

7

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
rootstringいいえプロジェクトディレクトリ(デフォルトは MCP プロセスの作業ディレクトリ)

詳細

datuma_k MCP

アプリのリポジトリにインストールされている datuma_k バイナリを使用するエージェント向けの stdio MCP サーバーです。コンパイラーのクレートにはリンクしません。PATH にバイナリがない場合は、DATUMA_K にそのパスを設定してください。

インストール

npm では @marthvon/datuma-k-mcp として、MCP Registry では io.github.marthvon/datuma-k として公開されています。

Cursor / Claude の例(mcp.json):

{
  "mcpServers": {
    "datuma_k": {
      "command": "npx",
      "args": ["-y", "@marthvon/datuma-k-mcp"]
    }
  }
}

datuma_k が PATH に含まれている必要があります。含まれていない場合は、DATUMA_K でバイナリの場所を指定してください。

{
  "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

次に、"command": "node" と "args": ["/ABS/PATH/TO/datuma_k/mcp/dist/index.js"] を指定します。

プロセスの cwd は datuma_k のプロジェクト(.env があるディレクトリ)にするか、各ツール呼び出しで root を渡してください。

ツール

ツールバイナリ備考
list_project(ファイル + .env)ディレクトリとコントラクト/テンプレートのパス
query_contractsdatuma_k catalogtrait / model / field / attribute / type は任意
validatedatuma_k checkパースには data/keywords.md が必要です
previewdatuma_k preview書き込みを行わずに計画を表示
generatedatuma_k run生成された範囲を書き込みます
advise_ngin(ローカルルール)ngin と手書きコードの使い分けを案内します
infer_patternscatalog + keywords.mdtrait、ウィジェット、関連付けのレビュー用メモ、同期リスク、別名

リソース

  • datuma://language/dtct
  • datuma://language/ngin
  • datuma://language/standards
  • datuma://docs/keywords
  • datuma://docs/practices
  • datuma://docs/when-ngin

プロンプト

add-model、add-field、scaffold-ngin、should-use-ngin、infer-contract-patterns

テスト

npm test

公開

公開先は2つのレジストリです。順番を守ってください。npm は tarball をホストし、MCP Registry はメタデータのみをホストして、公開済みの npm パッケージと照合して検証します。そのため、npm を先に公開しないと、2つ目の公開で Registry validation failed for package が発生します。

名前公開先設定場所
@marthvon/datuma-k-mcpnpm パッケージpackage.json の name
io.github.marthvon/datuma-kMCP Registry サーバーpackage.json の mcpName および server.json の name — この2つが一致しないと、レジストリは公開を拒否します

io.github.marthvon/ というプレフィックスは単なる飾りではありません。GitHub のデバイスフロー認証で許可されるのはこの名前空間のみです。別のプレフィックスを使うには、DNS または HTTP 認証が必要です。

初回のみの設定
brew install mcp-publisher            # or a binary from the registry releases page
npm login                             # npm account, scope @marthvon

npm での公開には2要素認証が必要です。アカウントで有効になっていない場合、tarball の確認前に npm publish が 403 ... Two-factor authentication or granular access token with bypass 2fa enabled is required というエラーで失敗します。npm profile get で確認し、npm profile enable-2fa auth-and-writes または npmjs.com で有効にして、リカバリーコードを保管してください。

リリース

バージョンを3か所で更新してください。レジストリは既に登録済みのバージョンを拒否します。また、npm パッケージのバージョンと server.json の packages[0].version が一致しない場合、検証に失敗します。

  • package.json → version
  • server.json → version
  • server.json → packages[0].version

続いて、次を実行します。

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 はトークンを保存するため、通常のリリースでは npm publish の後に mcp-publisher publish を実行します。

確認:

npm view @marthvon/datuma-k-mcp version
curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.marthvon/datuma-k"
公開されるファイル

package.json の files により、tarball に含まれるのは dist、resources、README.md に限定されます。resources/ は実行時に必須です。server.ts は dist/../resources として解決するため、files から省くと、インストールは正常に完了しても、リソースを読み込むたびに失敗します。公開前に npm pack --dry-run で確認してください。

トラブルシューティング
エラー原因
403 ... Two-factor authentication ... is requirednpm アカウントで 2 要素認証が無効になっています。上記を参照してください。
403 ... you do not have access@marthvon スコープは組織に属しています。npm org ls marthvon でメンバーシップを確認してください。
Registry validation failed for packagenpm への公開がまだ行われていないか、package.json の mcpName が server.json の name と一致していません。
Invalid or expired Registry JWT tokenmcp-publisher login github を再実行してください。
You do not have permission to publish this serverサーバー名が io.github.<your-github-username>/ で始まっていません。
expected length <= 100 on body.descriptionserver.json の description は 100 文字までです。npm の description に制限はありません。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。