Puter MCP
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ
Hold your code to what your Markdown says: the rules on a path, asked before an agent writes it.เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผลตรวจผ่าน 3/3 · ทำงานบนเครื่องคุณ
ขั้นแรก: คุณใช้ AI ตัวไหน
เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง
ต่อกับ Claude ได้ แต่ต้องเตรียมก่อน
ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ
SettingsDeveloperEdit Config
{
"mcpServers": {
"spec-guard": {
"command": "npx",
"args": [
"-y",
"@spec-family/spec-guard",
"mcp"
]
}
}
}ใช้ spec-guard บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude บอกว่ากำลังใช้ spec-guard หรือมีชื่อเครื่องมือของ spec-guard ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ChatGPT ยังต่อ spec-guard ไม่ได้
spec-guard ต้องติดตั้งในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะตัวที่ทำงานบนเว็บ
ก · ใช้แอปที่ต่อ spec-guard ได้
ต่อกับ Claude Code ได้ แต่ต้องเตรียมก่อน
ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell
claude mcp add --scope user spec-guard -- npx -y @spec-family/spec-guard mcpต้องเห็น spec-guard ในรายการและขึ้นว่าเชื่อมต่อแล้ว
ใช้ spec-guard บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude Code บอกว่ากำลังใช้ spec-guard หรือมีชื่อเครื่องมือของ spec-guard ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Cursor ได้ แต่ต้องเตรียมก่อน
ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
ใช้ spec-guard บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Cursor บอกว่ากำลังใช้ spec-guard หรือมีชื่อเครื่องมือของ spec-guard ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ VS Code ได้ แต่ต้องเตรียมก่อน
ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
ใช้ spec-guard บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า VS Code บอกว่ากำลังใช้ spec-guard หรือมีชื่อเครื่องมือของ spec-guard ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
Claude Code
claude mcp add --scope user spec-guard -- npx -y @spec-family/spec-guard mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"spec-guard": {
"command": "npx",
"args": [
"-y",
"@spec-family/spec-guard",
"mcp"
]
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"spec-guard": {
"command": "npx",
"args": [
"-y",
"@spec-family/spec-guard",
"mcp"
]
}
}
}VS Code (mcp.json)
{
"servers": {
"spec-guard": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@spec-family/spec-guard",
"mcp"
]
}
}
}ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ติดตั้งบนเครื่องได้ใน
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 12 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub spec-family ซึ่งเป็นเจ้าของ repo
มีการแก้โค้ดล่าสุด วันนี้
ใช้ MIT
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์
ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย
ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx
ยังไม่มีรีวิว
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด วันนี้ และส่งรุ่นล่าสุด (0.34.0) เข้า registry วันนี้
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Puter MCP, XcodeBuildMCP, XcodeBuildMCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
ให้ AI จัดการโปรเจกต์ Xcode สั่ง build และใช้ iOS Simulator
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Hold your code to what your Markdown says about it.
Specs, ADRs, READMEs, agent instructions: the claims they make about your codebase become assertions that run in CI, in milliseconds, with no runtime dependencies.
The retired payment gateway is gone from the service layer.
If someone reintroduces LegacyPaymentGateway, CI fails and points at the line of the ADR that promised it was gone.
The words the spec-* tools share are defined in concepts, and the tutorial runs spec-guard beside its siblings through one round of work on a small repository.
Architecture Decision Records, RFCs and technical briefs are full of hard claims about a repository:
LegacyPaymentGateway no longer exists anywhere in the service layer."*UserSessionManager."*process.env outside src/config."*Every one of those claims is true on the day it is written and unverified from the day after. Prose does not fail a build. Six months later the document is still confidently asserting something the code stopped doing in March.
That has always been an annoyance. It became a defect multiplier the moment coding agents started reading these documents as ground truth. An agent that reads *"module X does not exist yet"* will happily build a second X. A reviewer who trusts *"this symbol occurs zero times"* skips the grep. Stale documentation is now executable in the worst sense: it executes inside someone's head, or inside a model's context window, and produces work that has to be thrown away.
spec-guard makes the claims executable in the good sense. It reads directives written as ordinary HTML comments - invisible in every Markdown renderer - and checks them against the real tree with ripgrep. A stale claim becomes a failing build with a line number, not a landmine.
npm install --save-dev @spec-family/spec-guard
npx --no-install @spec-family/spec-guard "docs/**/*.md"
npx is given the package's full name, here and in every command below: Names says why the command's name alone is not written.
Add a directive to any Markdown file, here docs/adr/0007-sessions.md, directly under the sentence it makes executable:
## Decision
Session state has exactly one owner.
Run it:
npx --no-install @spec-family/spec-guard "docs/**/*.md" --verbose
spec-guard 1 spec · 1 assertion · javascript
✔ docs/adr/0007-sessions.md:5 @assert-count "UserSessionManager" (1 match) in src
1 passed · 11ms ✔ every spec assertion holds
And when it drifts:
spec-guard 1 spec · 1 assertion · javascript
✖ docs/adr/0007-sessions.md:5 @assert-count "UserSessionManager" must appear exactly 1 time in src expected exactly 1 match, found 3 src/auth/UserSessionManager.ts:12:14 export class UserSessionManager { src/legacy/sessions.ts:3:10 import { UserSessionManager } from '../auth'; src/workers/refresh.ts:8:30 const manager = new auth.UserSessionManager(store);
0 passed · 1 failed · 12ms
Exit code 1. The ADR is now a test. A Windows console other than Windows Terminal or VS Code's writes +, x, ! and o for the marks (ASCII and the marks).
The package is @spec-family/spec-guard, and the command it installs is spec-guard. The name without the scope is not this project: on npm, spec-guard belonged to nobody on 2026-10-07, and whoever registers it decides what it runs.
npx fetches and runs the package of whatever name it is given when the project has none installed - a fresh clone, a worktree before npm ci, a CI job without the install step - and without a terminal it does not ask first. So give npx the full name:
npx --no-install @spec-family/spec-guard in a project that installed it: it runs that install, the version the lockfile pins, and where there is none it stops with an error that names this package.npx @spec-family/spec-guard, without --no-install, where nothing is installed: it fetches this package and runs it.Never npx spec-guard, and not npx --no-install spec-guard either: --no-install stops a download, and npm still runs a copy of the bare name's package that an earlier fetch left in its cache. The family's adopting guide has what was measured, under npm 10, 11 and 12.
The command alone, spec-guard, is what a package.json script holds - npm fetches nothing for a script - and what a global install puts on the path:
npm install -g @spec-family/spec-guard # then: spec-guard "docs/**/*.md"
Every directive is an HTML comment, written directly under the sentence it makes executable. It is read only where a renderer shows Markdown: in code and in front matter it is text, so documentation that shows the syntax, like this README, never executes it. There are eight kinds, and each makes one claim about the tree:
| Directive | Claim |
|---|---|
@assert-absence | this text is gone, or occurs at most N times |
@assert-count | this text occurs exactly, at least or at most N times |
@assert-import-absence | no file in scope depends on this module |
@assert-import-count | exactly, at least or at most N files depend on it |
@assert-layers | dependencies point one way through these layers |
@assert-import-cycle | no file depends on itself |
@assert-structure | files are named by a pattern, directories hold their entries, files have their partners |
@assert-present | these paths exist |
The import rules read the dependency rather than the text, in JavaScript and TypeScript, Python, Go, Rust and C#, and say what they could not resolve rather than counting it clean. A match inside a comment does not count unless a rule asks for it, a rule that inspects no file fails, and a baseline adopts a rule the code already breaks without hiding what is added (attributes). A draft, a proposal or a superseded ADR is read and reported, and its directives are not executed (document status).
spec-guard [patterns...] [options] # execute the directives
spec-guard --watch [patterns...] # execute them again whenever the tree changes spec-guard query [options] # the rules in force for files or directories spec-guard mcp [options] # serve the rules over MCP on stdio spec-guard prove [patterns...] # show each rule a violation of itself, in memory spec-guard cites [paths...] # check each spec a code comment cites exists and is in force spec-guard claims [options] # hold each claim a specification labels to the evidence its label asks for spec-guard impact # the files that depend on each path, and the rules in play there
io.github.spec-family/spec-guard.Exit code 0 is every assertion held, 1 is an assertion that failed, and 2 is a run that could not be trusted: bad usage, a malformed configuration, no spec matched. CLI has every option and every exit code.
The options that are a project's policy can live in package.json, under "specGuard", so CI, a pre-commit hook and the MCP server an agent starts all hold the same rules the same way:
{
"specGuard": { "specs": ["docs/**/*.md", "README.md"], "strict": true } }
A root with no package.json keeps the same options, at the top level, in .spec-guard.json. The command line wins over either, and every report says what it took from the file. Configuration has every key.
# .github/workflows/specs.yml
name: Specs on: push: branches: [main] pull_request:
jobs: spec-guard: runs-on: ubuntu-latest permissions: contents: read steps:
That job needs nothing else installed: without ripgrep the built-in scanner runs, and gives the same answer. CI integration has why the actions and spec-guard are pinned, installing ripgrep, a pre-commit hook, and --format sarif, github and gitlab, which place each finding on its line of a pull request or a merge request.
The full reference is in docs/reference/, a topic to a page, which the package ships beside this README:
exclude, comments, allow-empty and baseline; regular expressions, the one dialect both engines read; what gets searched; and document status, drafts and superseded ADRs.query and the MCP server; prove; cites; claims; and impact.