Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Checks agent traces for evidence-readiness: verifies evidence is present, not that it is true.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"evr": {
"command": "uvx",
"args": [
"evidence-readiness"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add evr -- uvx evidence-readinessวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"evr": {
"command": "uvx",
"args": [
"evidence-readiness"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"evr": {
"type": "stdio",
"command": "uvx",
"args": [
"evidence-readiness"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ผู้ลงทะเบียน (BrienBounded) ไม่ใช่เจ้าของ repo (evidence-readiness) อาจเป็นคนอื่นที่นำมาลงต่อ
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 0 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, LickityClick
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า 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.
Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Checks whether an agent execution trace contains the evidence a post-hoc causal reconstruction would require.
When an AI agent causes a loss — a bad config change, a cross-session data leak, contaminated output cascading between agents, a prompt injection — someone eventually has to reconstruct *why* from the trace. Traces from general-purpose agent instrumentation cannot support that reconstruction: the evidence was never recorded. This repository contains the evidence-readiness specification (SPEC.md), a checker that evaluates a trace against it, and reference fixtures showing what conformant instrumentation looks like.
SOURCE_AVAILABILITY.md.config_drift, session_isolation_failure, cascade_contamination, prompt_injection. A fifth (tool_misuse) was investigated and declined for stated structural reasons — a documented negative result, not a gap (SPEC.md §8).llms.txt, spec.json (the machine-readable spec export, generated — never hand-maintained), and the MCP server in src/evidence_readiness/mcp_server.py (configuration below).# from a clone of this repository
pip install . evr check path/to/trace.json # or a directory of traces evr check --json path/to/traces/ # machine-readable report evr check --require-class prompt_injection path/to/trace.json
The package has zero runtime dependencies; pip install . in any Python ≥3.10 environment is the whole setup. Equivalent uvx forms, both exercised: uvx --from . evr check ./traces from a clone, and uvx --from evidence-readiness evr check ./traces from the package index.
Both need `--from`, and the trailing `evr` is not optional. A bare uvx evidence-readiness ... runs the console script *named for the distribution*, and that script is the MCP server (below), not the checker — it reads standard input, ignores the arguments, and exits successfully without checking anything.
Exit codes carry no reconstruction vocabulary: 0 all requirements met · 1 one or more requirements partially met · 2 one or more requirements unmet · 3 malformed input (SPEC.md §9 is the source of record). Universal requirements (EVR-R1..R6) drive the exit code; per-class evidence readiness is reported separately, and --require-class folds a named class's readiness into the exit code. For every failed requirement the output names the specific missing field and the span kind it belongs on.
Every run ends with the same statement this README opened with: presence, not truth — evidence being present does not make it authentic, and a passing trace is not a safe agent.
A spec is read once; a check that runs on every PR changes instrumentation behavior. Add this to a workflow in the repository that produces your traces (evidence-readiness is this repository's owner once published; from within this repository itself, uses: ./.github/actions/readiness-check):
steps:
That is the whole setup — the default GitHub runner's python3 is sufficient, and the Action installs the (zero-dependency) checker itself. The step fails when the checker's exit code exceeds minimum-passing-exit-level (default 0; exit-code semantics as in the Quickstart above). Optional required-classes folds named classes' evidence requirements into the exit code. Outputs: exit-code, exit-meaning, report-path (full JSON report), and per-class-readiness. PR annotations name each incomplete requirement's specific missing field and span kind. Every annotation is a statement about the trace telemetry, never about the agent: an annotated PR has incomplete evidence, not a detected failure — and a clean run is not a safe agent. This repository's own CI (.github/workflows/ci.yml) dogfoods the Action against fixtures/, asserting the expected — deliberately nonzero — exit codes per bucket.
src/evidence_readiness/mcp_server.py exposes the checker and the requirement data to agents over the Model Context Protocol (stdio). Three tools: check_trace_readiness (file, directory, or inline JSON — inline content is processed in memory and never written anywhere), get_requirement, and list_class_requirements.
Installing the package delivers three console scripts, and it is worth being precise about which is which before you copy anything below:
| script | what it runs |
|---|---|
evr | the checker CLI — this is the one a human wants |
evr-mcp | the MCP server, on stdio |
evidence-readiness | the MCP server, on stdio — same target as evr-mcp, named for the distribution so that per-invocation runners which resolve to a like-named script find it |
So evidence-readiness is not the checker. Typing it at a shell gets a server waiting for JSON-RPC on stdin, which looks like a hang. Use evr.
If the package is installed, the evr-mcp console script is the whole configuration:
{
"mcpServers": { "evidence-readiness": { "command": "evr-mcp" } } }
From a clone, with nothing installed, run the module by path instead:
{
"mcpServers": { "evidence-readiness": { "command": "python3", "args": [ "/absolute/path/to/evidence-readiness/src/evidence_readiness/mcp_server.py" ] } } }
Either way it needs no dependencies, and the second form needs no installation. It is local-only: no network calls, no phone-home, nothing persisted. It deliberately has no submission tool — the server never transmits anything; submitting a trace anywhere is a human decision gated on the CONTRIBUTING.md disclaimer and a redaction judgment an agent cannot make. Every tool description carries the presence-not-truth statement, so a readiness result cannot reasonably be relayed as "this agent is safe."
The specification is versioned (SPEC.md carries its current version and correction log) and the checker is implemented against it, with reference fixtures (fixtures/), the machine-readable export (spec.json), the agent surface (llms.txt, the MCP server), and the CI action (.github/actions/readiness-check/) in place. The methodology and limitations paper is drafted (PAPER.md); its front-matter banner records which sections have had an adversarial read and which have not. The standing disclosure policy is SOURCE_AVAILABILITY.md; reporting and trace-submission terms are CONTRIBUTING.md, with redaction guidance in REDACTION.md and release verification in RELEASING.md. Corrections are logged in CHANGELOG.md. The spec is descriptive: every requirement is backed by an observed outcome in a validation record of 240 reconstruction attempts, 222 of them synthetic — backing is per-requirement, from the specific cases that exercised it, not a property measured across all 240 (18 real-world Who&When cases validate the abstention direction only; the split is stated wherever the count appears — SPEC.md §1).
Brien Buckman
Licensed under Apache-2.0 (see LICENSE).
The substance of this repository's development record is public: corrections that affect published content are logged in CHANGELOG.md, and the development defect record, as it bears on the method, is summarized in PAPER.md §8.6. The commit history in which these files were drafted and revised is not published.