GitHub
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server exposing 11 honesty-SDK kits (grounding, trust, audit, corroboration) as agent tools.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
HONESTY_MCP_ENABLE_CODE_EXEC, HONESTY_MCP_WORKER_TIMEOUT_MSต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"honesty": {
"command": "npx",
"args": [
"-y",
"honesty-mcp"
],
"env": {
"HONESTY_MCP_ENABLE_CODE_EXEC": "ใส่ค่าของคุณ",
"HONESTY_MCP_WORKER_TIMEOUT_MS": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add honesty --env HONESTY_MCP_ENABLE_CODE_EXEC='ใส่ค่าของคุณ' --env HONESTY_MCP_WORKER_TIMEOUT_MS='ใส่ค่าของคุณ' -- npx -y honesty-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"honesty": {
"command": "npx",
"args": [
"-y",
"honesty-mcp"
],
"env": {
"HONESTY_MCP_ENABLE_CODE_EXEC": "ใส่ค่าของคุณ",
"HONESTY_MCP_WORKER_TIMEOUT_MS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"honesty": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"honesty-mcp"
],
"env": {
"HONESTY_MCP_ENABLE_CODE_EXEC": "ใส่ค่าของคุณ",
"HONESTY_MCP_WORKER_TIMEOUT_MS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
HONESTY_MCP_ENABLE_CODE_EXEC envHONESTY_MCP_WORKER_TIMEOUT_MS envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 9 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub lkopietz3-byte ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.3.0) เข้า registry 27 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
MCP server for terminal commands, file operations, and process management
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
[Try the kits in your browser →](https://lkopietz3-byte.github.io/honesty-kits/) · Part of honesty kits, a family of small checks for the claims an AI product makes.
An MCP (Model Context Protocol) server that exposes eleven already-built, zero-runtime-dependency "honesty SDK" TypeScript libraries as tools any MCP-compatible coding agent (Claude Code, Claude Desktop, or any other MCP client) can call while building or auditing a product — grounded-citation checking, evidence corroboration grading, payout/mutation-invariance checks (scenario-tested, not a formal proof for every possible input), trust/ authenticity scoring, provenance-claim validation, a claims registry, a tamper-evident audit chain, and recommendation/decision grading plus engine-vs-human divergence, plus scaffolding for two runtime-library kits that don't fit the "check this content" shape.
This server is thin by design: every tool is a Zod input schema plus a handler that imports and calls the real, unmodified export from the wrapped kit. It does not reimplement any of the underlying logic.
claude mcp add honesty-mcp -- npx -y honesty-mcp
Then ask your coding agent to run check_grounding on a draft answer and its sources. Each sentence comes back as grounded, placeholder, ungrounded or invalid (a citation whose source is missing from the evidence). It checks structure only: it does not decide whether a source is true.
Thirteen tools are listed by default. The three paths that run JavaScript the agent sends are off unless you set HONESTY_MCP_ENABLE_CODE_EXEC=1; read A note on the code-execution tools first.
honesty-mcp is published on npm and wraps its eleven sibling "honesty SDK" kits as ordinary registry dependencies (semver ranges, not local file: paths) — npm install (or a plain npx) resolves everything from the public registry, with nothing else to check out first.
The fastest way to run it, with no install step at all:
npx honesty-mcp
Or add it to a project:
npm install honesty-mcp
Claude Code:
claude mcp add honesty-mcp -- npx -y honesty-mcp
Any other MCP client that reads an mcpServers config (Claude Desktop's claude_desktop_config.json uses the same shape):
{
"mcpServers": { "honesty-mcp": { "command": "npx", "args": ["-y", "honesty-mcp"] } } }
Three of the tools run JavaScript that the calling agent sends, so they are off by default. To use them, add the environment variable HONESTY_MCP_ENABLE_CODE_EXEC=1 to the server's environment (see A note on the code-execution tools first):
claude mcp add -e HONESTY_MCP_ENABLE_CODE_EXEC=1 honesty-mcp -- npx -y honesty-mcp
{
"mcpServers": { "honesty-mcp": { "command": "npx", "args": ["-y", "honesty-mcp"], "env": { "HONESTY_MCP_ENABLE_CODE_EXEC": "1" } } } }
The server runs on the stdio transport — it reads JSON-RPC requests from stdin and writes responses to stdout, logging only a one-line startup banner to stderr so stdout stays a clean JSON-RPC channel. This is the transport Claude Code, Claude Desktop, and most local/CLI MCP client integrations expect for a locally-run server; it is not an HTTP server and has no port to browse to.
honesty-mcp also ships a server.json (validated against the official schema) so it can be listed on the official MCP registry, under the name io.github.lkopietz3-byte/honesty-mcp. Listing is a manual, one-time step the maintainer runs after this package is on npm — it is not run as part of this repo's CI or npm publish. Exact commands, from the registry's own docs (publishing guide, CLI reference):
# 1. Install the publisher CLI (macOS/Linux)
curl -L "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher sudo mv mcp-publisher /usr/local/bin/
mcp-publisher login github
mcp-publisher publish
package.json's mcpName field (io.github.lkopietz3-byte/honesty-mcp) must match server.json's name field exactly — that's how the registry verifies the npm package and the registry listing belong to the same publisher (see package-types.mdx, "Ownership Verification").
9 content-checking kits, 12 tools (kits 1–9: hand one of these real content or data, get back a structured verdict):
| Tool | Wraps | One-line purpose |
|---|---|---|
check_grounding | grounding-kit | Checks citation structure in AI-generated text, sentence by sentence: uncited claims, honest placeholders, and citations whose marker is missing or whose evidence doesn't match lexically. Structural only; it does not verify that the evidence is true. The word-overlap matcher rejects some faithful paraphrases and accepts a wrong figure or a negated claim when most words overlap, so read invalid as "send to a person". |
corroborate_evidence | corroboration-kit | Reports the evidence direction (supports / contradicts / mixed / none) and a graded verdict from distinct sources, not a vote count. With corroboration-kit 0.3 and later, sources count by independent origin (pages of one site count once unless you declare an origin). Independence is not verified, and confirmed can mean confirmed-contradicted, so read the direction first. |
check_payout_invariance | payout-invariance-kit | Checks, for the scenarios you supply, whether a ranking engine's output changes with who pays more (runtime mode, off unless HONESTY_MCP_ENABLE_CODE_EXEC=1) or whether payout identifiers appear in source text you send (static-imports mode, always available; it never reads files from disk). Static matching is whole-word: commission does not match commissionRate, so list full names or, with payout-invariance-kit 0.3 and later, pass matchIdentifierParts: true. Not a formal proof for every possible payout configuration. |
check_mutation_invariance | mutation-invariance-kit | Off unless HONESTY_MCP_ENABLE_CODE_EXEC=1 (it is not listed otherwise). Checks, for the scenarios you supply, whether a decision/score/ranking function's output depends on a variable it claims not to (protected attribute, geography, price, or anything you name). Not a formal proof for every possible input. |
score_trust_identified | trust-core (identified) | Scores an entity from known, identified contributors (reviewer accounts, raters, inspectors), shrinking thin evidence toward a prior. With no weighted evidence it returns the prior with insufficient confidence, not a measured score. |
assess_anonymous_authenticity | trust-core (anonymous) | Scores unattributed/scraped sentiment on how organic it looks, with a heuristic discount for two specific patterns (source concentration, unusually uniform sentiment). It does not detect fabrication or verify independence, it is not a sentiment ranking (a strongly negative corpus scores lower than a positive one), and it reports no score (trustScore: null) when no signal carries weight. |
check_provenance_claims | provenance-kit | Flags certainty-implying language ("(verified)", "guaranteed") not backed by an appropriate provenance tier. The default phrase list is short (eleven phrases) and phrases match as word prefixes. |
check_claims_registry | claims-registry-kit | Buckets public-facing claims as current / stale / unverified against their linked evidence and last-verified date. With claims-registry-kit 0.4 and later, a placeholder reference such as TODO is unverified and the age limit is exact to the millisecond. |
append_audit_entry | audit-chain-kit | Appends one entry to a hash-chained, tamper-evident audit log. |
verify_audit_chain | audit-chain-kit | Independently re-verifies a hash chain from genesis (an empty chain is valid with nothing checked); detects mutation and severed links unconditionally, plain tail deletion with expectedMinLength, and truncate-and-re-append (or a full rewrite) only with anchor; expectedMinLength alone does NOT catch a truncate-and-re-append. |
grade_decision | advice-ledger-kit | Grades one recommendation-and-decision pair against a before/after observation log, exposure-aligned, with separate floors per window and machine-readable refusal codes. holding requires both the exposed bad count to stay under refuteThreshold AND its bad rate to be below the baseline's (exact comparison, not the rounded badRate; with advice-ledger-kit 0.2 an equal rate also held); either failing is not-holding. The refute bar is a fixed count, not a rate (see the tool description). |
compute_divergence | advice-ledger-kit | Measures how often an engine and a human disagreed, and where a later outcome exists, reports engine-right/human-right as separate, never-blended counts. The optional custom groupBySource input is off unless HONESTY_MCP_ENABLE_CODE_EXEC=1. |
2 scaffolding tools (agent-receipt-kit, cost-governor-kit — these are runtime libraries a project *installs and imports into its own running code*, not something checked on-demand the same way; see the code comments in src/tools/agentReceiptScaffold.ts / costGovernorScaffold.ts for why a "check this content" shape would misrepresent them):
| Tool | Wraps | One-line purpose |
|---|---|---|
scaffold_agent_receipts | agent-receipt-kit | Explains the issue-a-packet / verify-the-claim authorization pattern for AI agents, with an install step, a starter snippet, and (optionally) a live accepted/rejected worked example run against the real kit. |
scaffold_cost_governor | cost-governor-kit | Explains the estimated pre-call spend check + cache-aware pricing math (default 0.1x cache-read rate, overridable per model via cacheReadPerMillion) + advisory (not concurrency-safe) check-then-commit usage-counting pattern (a commit failure after a successful call returns commitError instead of discarding the result), with an install step, a starter snippet, and (optionally) a live worked example. |
That's 9 kits, 12 content-checking tool slots (payout-invariance-kit, audit-chain-kit, and advice-ledger-kit each got 2 tools instead of 1, since each bundles two genuinely distinct operations — runtime check vs. static grep; append vs. verify; grading one decision vs. measuring divergence across a whole population — that read better as separate, single-purpose MCP tools than as one tool with a mode switch) plus 2 scaffolding tools = 14 tools total.
That is 14 tools when code execution is enabled. With it off (the default), check_mutation_invariance is not listed, so a client sees 13.
These tools are off by default. check_payout_invariance (runtime mode) and check_mutation_invariance wrap kit functions whose real signature takes an actual JavaScript function (a ranking function, a mutation closure); there is no way to represent a function as MCP JSON arguments. Both tools accept that function as a source-code string and build the real function via the Function constructor, inside the worker that src/lib/runFunctionJob.ts starts after the co
ตัดมาแค่ช่วงต้น อ่านต่อใน repo