Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Checks a Markdown folder's OKF frontmatter tier, locally. No-egress is a vendor claim: see README.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"jidoseal": {
"command": "uvx",
"args": [
"jidoseal-mcp"
]
}
}
}Run this in your terminal
claude mcp add jidoseal -- uvx jidoseal-mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"jidoseal": {
"command": "uvx",
"args": [
"jidoseal-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"jidoseal": {
"type": "stdio",
"command": "uvx",
"args": [
"jidoseal-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified against the domain jidoseal.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.2.0) reached the registry 11 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Foliosio
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
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.
Read your support inbox, tag conversations and save draft replies from your AI agent. Never sends.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Check a folder of markdown notes against Open Knowledge Format (OKF) v0.2 — from inside Claude Code, Claude Desktop, Cursor, GitHub Copilot, OpenAI Codex, Gemini CLI, Zed, Cline, Continue, JetBrains AI Assistant or a local model, on your own machine.
Pick a folder, scan it. jidoseal-mcp is a local Model Context Protocol server that reads the YAML frontmatter of every *.md file under a folder, reports which tier the knowledge base reaches (Bronze / Silver / Gold), and lists — per file — the exact frontmatter fields missing for the next tier. The scan sends nothing over the network: no file, no file name, no file content. That is JidoSeal's own claim about its engine; below is how to check it.
pip install jidoseal-mcp
claude mcp add jidoseal -- jidoseal-mcp # Claude Code; every other tool is below
Then ask your assistant: *"Scan ~/notes with JidoSeal and tell me what's missing for Silver."*
New: [State of OKF, October 2026](https://github.com/Jidoseal/jidoseal-mcp/blob/main/reports/state-of-okf/2026-10/README.md). All 900 bundles listed on BundleDex, checked against OKF v0.2 on 2026-10-22: conformance, which of the two v0.2 texts each bundle's timestamps follow, trust fields, and a leaderboard, with the method and a page per bundle.
Free and local; the scan engine is proprietary; JidoSeal also sells optional certificates.
Pick a folder, scan it. Watch the 76-second run first: Check an OKF v0.2 folder in 60 seconds (free, local). To try it on the three-file sample in this repository:
git clone --depth 1 https://github.com/Jidoseal/jidoseal-mcp && cd jidoseal-mcp/examples/tiers/mixed
pip install jidoseal-mcp claude mcp add jidoseal -- jidoseal-mcp # Claude Code; Cursor, Copilot, Codex, Gemini CLI, Zed and local models are below claude
(claude mcp add registers the server for the folder you run it in, so run it there, or add -s user.) Then ask: *"Scan this folder with JidoSeal. Which tier does it reach, and what does each file need for Silver?"*
The jidoseal_scan result it gets back, from a real run of jidoseal-mcp 0.1.4 (engine 0.1.4) on that folder on 2026-10-22 (UTC), trimmed to the summary and the Silver gaps:
{
"corpus": { "file_count": 3, "tier": "none", "coverage": { "bronze": 66.7, "silver": 33.3, "gold": 33.3 } }, "files": [ { "name": "expenses.md", "tier": "bronze", "present": [ "type", "title" ], "missing": { "silver": [ { "field": "description", "fix": "AUTO" }, { "field": "timestamp", "fix": "AUTO" }, { "field": "owner", "fix": "NEEDS-CLIENT" } ] } }, // gold gaps trimmed { "name": "leave-policy.md", "tier": "gold", "missing": { "silver": [], "gold": [] } }, { "name": "notes.md", "tier": "none", "present": [], "missing": { "silver": [ { "field": "title", "fix": "AUTO" }, { "field": "description", "fix": "AUTO" }, { "field": "timestamp", "fix": "AUTO" }, { "field": "owner", "fix": "NEEDS-CLIENT" } ], // gold gaps trimmed "bronze": [ { "field": "type", "fix": "AUTO", "value": "note", "confidence": "MEDIUM", "inferred": true } ] } } ], "skipped": [], "certified_eligible": false, "score": 44 // … plus audit id, rubric, file hashes, Merkle root and the paths of the two files written under .jidoseal/ }
The folder reaches no tier yet because notes.md has no frontmatter: a corpus's tier is that of its weakest file. AUTO marks a value JidoSeal can propose; NEEDS-CLIENT marks one only you can answer (here, owner).
Independent. OKF is an open specification from Google Cloud. JidoSeal is not affiliated with, sponsored by, or endorsed by Google or ISO. ISO names no fields: the Bronze/Silver/Gold tiers and their fields are defined by JidoSeal, as one way of evidencing selected ISO clauses. A JidoSeal tier or certificate is not an ISO certification.
*.md files under the folder you give it (hidden files and folders are skipped), plus /.jidoseal/config.yaml if present. The server refuses a folder that contains a symlink to a directory or to a file outside the folder. /.jidoseal/manifest.json (replaced on each scan) and /.jidoseal/progress.ndjson (appended to). Nothing else; your notes are not modified.jidoseal_trust and jidoseal_changes read only and write nothing. jidoseal_changes runs the local git program, with transports disabled, to read the folder's history.jidoseal_start_checkout runs only with confirm: true. It sends eight fields to jidoseal.com: company, name and email as typed, the tier, a 0–100 score, the corpus's Merkle root, the local scan's id, and one flag saying which Bronze price applies. jidoseal.com copies them into the Stripe Checkout session it creates (the email as the session's customer email, all eight as session metadata), when the session is created, before any payment. No file contents, file names, per-file hashes or paths. No card data passes through this server.jidoseal package, under a proprietary licence. It ships as plain Python source and is pinned here to one version (0.1.4), with its sha256 in ENGINE-SHA256SUMS and an SBOM in sbom.cdx.json. So "nothing leaves your machine" is JidoSeal's own claim: you can check it with the commands under What leaves your machine and the tests in tests/, but it has not been independently audited.The scan is deterministic — presence of populated frontmatter fields, no model calls, no scoring by opinion. A field counts only if it has real content (title: with nothing after it earns nothing).
| Tier | A file must have (populated) | What it evidences |
|---|---|---|
| Bronze | type | OKF v0.2 as written — type is its one required field |
| Silver | Bronze + title, description, timestamp, owner | ISO 9001 §7.5.2, which asks for appropriate identification and description of a document and gives examples ("a title, date, author, or reference number"). These four fields are one reasonable way to evidence it. |
| Gold | Silver + status, review_policy, reviewed_at, next_review_at | ISO 30401's kept-current knowledge governance. The standard sets no review interval; a stated review policy with real review dates is how you evidence it, and the cadence is yours to choose. |
A corpus's tier is the tier of its weakest file. Coverage is the share of files that reach each tier. The full field reference — accepted aliases, what counts as "populated", what is excluded — is in docs/tiers.md.
A minimal Gold-tier file:
---
type: policy title: Leave policy description: How leave accrues and how to request it. timestamp: 2026-09-01 owner: dept:people-ops status: stable review_policy: yearly reviewed_at: 2026-09-01 next_review_at: 2027-09-01
Worked examples for each tier, and a mixed folder, are in examples/tiers/.
| Tool | What it does | Network |
|---|---|---|
jidoseal_scan | The free Self-Check over a folder on this machine: corpus tier, per-file missing fields for the next tier (each marked AUTO — a value JidoSeal can propose — or NEEDS-CLIENT — only the owner can answer), coverage per tier, a 0–100 score, and a Merkle root of the corpus. | none (JidoSeal's claim; see below) |
jidoseal_certification_offer | What optional certification would cost for this corpus, why, what it includes, and exactly which facts a purchase would send. Computes locally; starts nothing. | none (same claim) |
jidoseal_start_checkout | Only on your explicit go-ahead, passed as confirm: true (without it, nothing is sent): asks jidoseal.com to create a Stripe Checkout session and returns the link for you to open. Takes no payment. | jidoseal.com, which passes the fields to Stripe |
jidoseal_trust | Before an agent relies on a document: stale, unverified or ok, with the reasons, from its OKF v0.2 trust and lifecycle fields (stale_after, status, verified, generated). Also its trust tier (§5.3), whether it meets OKF v0.2 conformance, and which text of v0.2 its timestamps follow. One file, or every *.md in a folder. Reads only. Plain Python in this package; does not use the scan engine. | none |
jidoseal_changes | After an edit: every *.md that differs from a git commit (default HEAD, so the uncommitted edits and new files), what changed in its frontmatter and body, and what that did to its trust: a verified document whose text changed while verified did not, verified or type removed, generated.at not updated, status or stale_after changed. Reads only. Runs the local git with protocol.allow=never and no lazy fetch. | none |
Example jidoseal_scan result for examples/tiers/mixed (three files, one Gold, one Bronze, one with no frontmatter):
{
"corpus": { "file_count": 3, "tier": "none", "coverage": { "bronze": 66.7, "silver": 33.3, "gold": 33.3 } }, "score": 44, "certified_eligible": false, "files": [ { "name": "expenses.md", "tier": "bronze", "missing": { "silver": [ { "field": "description", "fix": "AUTO" }, { "field": "timestamp", "fix": "AUTO" }, { "field": "owner", "fix": "NEEDS-CLIENT" } ] } } // … ] }
frontmatter_ok: false on a file means its frontmatter block exists but does not parse; no field write can close its gaps until it is fixed by hand.
Ask: *"Before you use ~/notes/policies/leave.md, check it with jidoseal_trust."* or, after an agent has edited your notes, *"Run jidoseal_changes on ~/notes: what did you change, and which verified documents did it leave unconfirmed?"* A jidoseal_trust answer for one file:
{
"verdict": "unverified", "reasons": [ "content changed at 2026-10-01T00:00:00Z, after its latest verification at 2026-06-25T09:00:00Z" ], "okf_conformant": true, "trust_tier": "human-reviewed", "status": "stable", "stale": false, "which_0_2": "2026-08-21" // … plus each timestamp as written and which v0.2 text it follows }
OKF v0.2 changed on 2026-08-21 without a version bump: stale_after, sources[].last_modified and usage_window went from bare dates to datetimes with a UTC offset. Both forms are accepted, and which_0_2 says which one a document uses.
Requires Python 3.9+. pip install jidoseal-mcp also installs jidoseal (the scan engine and CLI, pinned to the tested version) and puts a jidoseal-mcp command on your PATH. No account and no API key. The scan itself needs no network — it runs the same offline.
Every tool below launches the same local command, jidoseal-mcp, over stdio. Only the place you write it down differs.
Claude Code
Only the beginning is shown; read the rest in the repo