GitHub
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Gives a coding agent a record it did not write: what changed on disk and in git, versus its claims.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"murphy": {
"command": "npx",
"args": [
"-y",
"murphy-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add murphy -- npx -y murphy-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"murphy": {
"command": "npx",
"args": [
"-y",
"murphy-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"murphy": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"murphy-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub lucianomanetta ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.0) เข้า registry วันนี้
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
An MCP server that gives a coding agent a record it did not write.
A coding agent finishes a task and tells you what it did. The report is coherent, well structured, and usually correct. It is also the only account you have, written by the party being assessed.
This server produces the other account. It records the workspace before the work starts, reads it again afterwards, and reports what actually changed: every file added, modified or deleted, plus what moved in git. Then it holds the agent's own account against that record and reports the disagreements.
It does not ask the agent what happened. That is the point.
Built on the 2026-07-28 MCP specification with the v2 TypeScript SDK. MIT licensed.
The failure mode is not a lying agent. An agent's report is a summary written from its own context window, and that context is a partial view of a system with far more state than the agent can hold. The report is usually accurate about intent and less reliable about effect.
Three things show up again and again:
This server names all three, separately.
Published builds:
npx -y murphy-mcp
Claude Code:
claude mcp add murphy -- npx -y murphy-mcp
Any MCP client, by config:
{
"mcpServers": { "murphy": { "command": "npx", "args": ["-y", "murphy-mcp"] } } }
From a clone:
npm install && npm run build
then point the client at node /absolute/path/to/murphy-mcp/dist/index.js.
Take a checkpoint before the work, then check the account afterwards.
checkpoint { root: "/path/to/project", label: "refactor auth" }
-> checkpointId
... the agent works ...
check_claims { root, checkpointId, claimedPaths: ["src/auth.ts", "src/session.ts"], claimedStatements: ["All tests pass."] }
What comes back:
# Evidence report
2 unreported · 1 contradicted · 1 confirmed · 1 unverifiable
b.txt (deleted)generated/out.bin (added)never_touched.ts — no such file at checkpoint time and none nowa.txt (modified)
Disagreements come first, because that is what a person is for. Nobody reviews a flat log of 50,000 events; anyone can scan a list of four disagreements in a minute.
They are kept apart on purpose. Collapsing them is what makes a claim read as evidence.
| Bucket | Meaning |
|---|---|
| confirmed | Claimed, and observed on disk |
| contradicted | Claimed, and nothing changed |
| unreported | Changed on disk, and never mentioned |
| unverifiable | Nothing in a filesystem or git record can settle it |
unverifiable is stated explicitly instead of being quietly guessed. Presenting a guess at the same confidence as a fact is the failure this is meant to stop.
checkpointRecords the workspace as it is now: path, size, modification time and SHA-256 for every file, plus git HEAD, branch and status --porcelain. Returns a checkpoint id.
root (required) · label · ignore · noDefaultIgnores · maxFiles · maxFileBytes
evidence_sinceRescans and reports what changed since the checkpoint. The observed record alone, with no claims involved.
root (required) · checkpointId (required) · the same scan options
check_claimsHolds the agent's account against the record and returns the four buckets.
root (required) · checkpointId (required) · claimedPaths · claimedStatements · the same scan options
list_checkpointsLists the checkpoints stored under a workspace, most recent first.
root (required)
Build output is not ignored. Only .git, node_modules and the server's own .murphy store are skipped by default. Ignoring dist, .next, target or coverage would hide exactly the writes that tend to fall outside an agent's account. If you want them skipped, pass them in ignore.
Checkpoints are written to disk, under .murphy/checkpoints in the workspace, with a .gitignore that keeps the store out of the repository. The 2026-07-28 protocol core is stateless, so nothing that has to outlive a single call is kept in the process. It also means the evidence survives the session it describes, which is when anyone actually wants to read it.
Symbolic links are recorded and never followed. A snapshot that can wander outside its root cannot say where it looked.
Hashing has limits, and they are reported. Files over 8 MiB are not hashed; for those a change is inferred from size and modification time, which is weaker evidence, and the report says so. Every truncation, skipped directory and unhashed file appears under "What this report does not cover".
Honest scope, so nobody is surprised:
MURPHY is a separate, commercial, local-first Windows tool that reconstructs agent activity from process ancestry, filesystem activity, workspace boundaries and network behaviour. This server is an independent, cross-platform, open implementation of the filesystem and git half of the same idea, usable from any MCP client.
The reasoning behind both is written up in An agent's report is not evidence.
npm install
npm run build node test/smoke.mjs
The smoke test builds a throwaway git workspace, drives the server over a real stdio MCP connection, makes three changes, reports one of them, and asserts that the other two come back as unreported.
MIT. See LICENSE.