Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Tamper-evident records of AI agent decisions. Verify offline, or publish a proof link.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
DARKMATTER_API_KEY, DARKMATTER_SHARE, DARKMATTER_API_URL, DARKMATTER_MCP_STORE_DIR「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"verifiable-agent-audit-trail": {
"command": "npx",
"args": [
"-y",
"@darkmatterhub/mcp-server"
],
"env": {
"DARKMATTER_API_KEY": "your-value",
"DARKMATTER_SHARE": "your-value",
"DARKMATTER_API_URL": "your-value",
"DARKMATTER_MCP_STORE_DIR": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add verifiable-agent-audit-trail --env DARKMATTER_API_KEY=your-value --env DARKMATTER_SHARE=your-value --env DARKMATTER_API_URL=your-value --env DARKMATTER_MCP_STORE_DIR=your-value -- npx -y @darkmatterhub/mcp-server動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"verifiable-agent-audit-trail": {
"command": "npx",
"args": [
"-y",
"@darkmatterhub/mcp-server"
],
"env": {
"DARKMATTER_API_KEY": "your-value",
"DARKMATTER_SHARE": "your-value",
"DARKMATTER_API_URL": "your-value",
"DARKMATTER_MCP_STORE_DIR": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"verifiable-agent-audit-trail": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@darkmatterhub/mcp-server"
],
"env": {
"DARKMATTER_API_KEY": "your-value",
"DARKMATTER_SHARE": "your-value",
"DARKMATTER_API_URL": "your-value",
"DARKMATTER_MCP_STORE_DIR": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
DARKMATTER_SHARE envDARKMATTER_API_URL envDARKMATTER_MCP_STORE_DIR envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月9日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント darkmatter-hub で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:DARKMATTER_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.4.0)がレジストリに届いたのは2 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, WCS Points
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況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.
West Coast Swing WSDC points registry: dancer points, divisions, level-ups, event results and rules.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Universal MCP server that emits Context Passport records for AI agent decisions and actions. Drop into any MCP-compatible client (Claude Code, Cursor, Cline, Continue, ChatGPT Desktop, Zed, Goose, and others) to give your agent a commit / verify / replay / export toolset for verifiable, tamper-evident records.
Built by [DarkMatter](https://darkmatterhub.ai). Implements [Context Passport v2.0](https://github.com/contextpassport/spec), an open CC0 standard. Records emitted by this server use RFC 8785 (JCS) canonicalization and are byte-equivalent across the Python and TypeScript reference SDKs.
In your MCP client's config (claude_desktop_config.json, Cursor's mcp.json, etc.):
{
"mcpServers": { "darkmatter": { "command": "npx", "args": ["-y", "@darkmatterhub/mcp-server"] } } }
Restart the client. Five tools become available to your agent:
darkmatter_commit — record an agent decision or actiondarkmatter_verify — check that the chain has not been tampered withdarkmatter_replay — walk the full chain in orderdarkmatter_export — produce a portable proof bundledarkmatter_list_sessions — see what sessions exist locallydarkmatter_export produces a bundle that a stranger can act on. Alongside the records it carries the format name, a link to the specification, whether the chain was intact at export time, and the exact command to verify it in Python or TypeScript, plus what a failure looks like.
That matters because the bundle is the artifact that leaves your machine. It goes to an auditor, a regulator or a counterparty who has never heard of this format, and the whole claim is that they can check it without trusting whoever sent it. A bundle that does not say how is asking to be trusted.
With no configuration the server keeps every record on your own disk. The chain verifies offline through darkmatter_verify, so you can evaluate the whole idea without an account.
Set an API key to publish records and get a link somebody else can check:
| Variable | Effect |
|---|---|
DARKMATTER_API_KEY | Publishes each record to DarkMatter and returns a verify_url. Get one at darkmatterhub.ai. |
DARKMATTER_SHARE | Set to true to make published records readable by anyone with the link. Off by default, because publishing is not something to do to your records without being asked. |
DARKMATTER_API_URL | Override the API host. Defaults to https://darkmatterhub.ai. |
DARKMATTER_MCP_STORE_DIR | Where local records are written. |
commit reports which of the two happened, in the storage field. If publishing fails the record is still committed locally and the error is returned alongside it, so a network problem cannot cost you the record.
Changed in 0.3.0. Earlier versions returned a
https://darkmatterhub.ai/r/{id}link for every commit while making no
network calls at all, so the link always 404ed. A verification URL is now
returned only when there is a published record behind it.
Whatever the agent (or user) explicitly invokes via darkmatter_commit. Auto-capture of every tool call without explicit invocation is a separate component (see Auto-capture below).
Example agent flow:
User: Approve the refund for order #1247 and record the decision.
Agent: Calls refund_order(1247). Agent: Calls darkmatter_commit({ input: "Approve refund for order #1247", output: "Approved. $84.00 refunded to original payment method.", role: "compliance", event_type: "commit" }) Result: { ok: true, passport: {...}, storage: "local", verify_url: null, note: "Saved locally and verifiable offline..." }
The passport is signed (if a key is configured), hash-chained to the previous commit in the session, and stored locally at ~/.darkmatter/mcp/ /chain.jsonl.
Default: local-only. Passports never leave the machine.
~/.darkmatter/mcp/
├── default/ │ ├── chain.jsonl # append-only stream of all commits │ └── latest.json # most recent passport (used as parent for the next) └── / └── ...
To forward each passport to a DarkMatter receiving server in addition to local storage, set:
export DARKMATTER_API_KEY="dm_sk_..."
The forwarding is best-effort and never blocks the agent's tool call. Local storage remains the source of truth.
The MCP server captures only what the agent explicitly invokes. To auto-capture every tool call and turn boundary in a specific dev tool (without the agent having to remember to call darkmatter_commit), install one of the dev-tool-specific adapters:
Each adapter hooks into its specific dev tool's event lifecycle and routes events through this MCP server's darkmatter_commit tool. One canonical endpoint, many capture surfaces.
Records are valid Context Passport v2.0 artifacts. Verify with any conformant implementation:
pip install context-passport context-passport-conformance
context-passport-conformance --level signed # 9/9 vectors, no --vectors-dir needed
The conformance package ships its vectors inside the wheel, so this is a one-line check against the public reference suite.
Or use the offline reference verifier directly on the JSONL file:
import json
from context_passport import verify_chain
with open("~/.darkmatter/mcp/default/chain.jsonl") as f: chain = [json.loads(line) for line in f]
print(verify_chain(chain)) # True if intact, False if tampered
MCP (Model Context Protocol) is becoming the universal interop layer for AI tools. Writing this server once means it works in every MCP-compatible client without per-client integration code. See the Context Passport for MCP proposal for the broader architectural rationale.
Apache-2.0. See LICENSE.
The Context Passport schema this server implements is released separately under CC0 1.0 at github.com/contextpassport/spec.