ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Attest MCP

โดย SPAZIO-GENESIรุ่น 0.4.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.SPAZIO-GENESI/attest-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Free proof-of-existence attestation for digital files, MCP tools for the imgauth service.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: เอกสาร ตาราง และงานออฟฟิศ
  • ต้องใส่ค่าเหล่านี้: IMGAUTH_API_KEY

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "attest": {
      "command": "npx",
      "args": [
        "-y",
        "@spazio-genesi/attest-mcp"
      ],
      "env": {
        "IMGAUTH_API_KEY": "ใส่ค่าของคุณ",
        "IMGAUTH_BASE_URL": "ใส่ค่าของคุณ",
        "IMGAUTH_CERT_PAGE_BASE": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add attest --env IMGAUTH_API_KEY='ใส่ค่าของคุณ' --env IMGAUTH_BASE_URL='ใส่ค่าของคุณ' --env IMGAUTH_CERT_PAGE_BASE='ใส่ค่าของคุณ' -- npx -y @spazio-genesi/attest-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "attest": {
      "command": "npx",
      "args": [
        "-y",
        "@spazio-genesi/attest-mcp"
      ],
      "env": {
        "IMGAUTH_API_KEY": "ใส่ค่าของคุณ",
        "IMGAUTH_BASE_URL": "ใส่ค่าของคุณ",
        "IMGAUTH_CERT_PAGE_BASE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "attest": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@spazio-genesi/attest-mcp"
      ],
      "env": {
        "IMGAUTH_API_KEY": "ใส่ค่าของคุณ",
        "IMGAUTH_BASE_URL": "ใส่ค่าของคุณ",
        "IMGAUTH_CERT_PAGE_BASE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • IMGAUTH_API_KEY ความลับ env
    API key credential for the attestation service (optional — bypasses the interactive device-flow authorization).
  • IMGAUTH_BASE_URL env
    Override the API base URL, e.g. for local development against a `wrangler dev` instance.
  • IMGAUTH_CERT_PAGE_BASE env
    Override the base URL used to build permanent certificate-verification page links.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub SPAZIO-GENESI ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด เอกสาร ตาราง และงานออฟฟิศi

  • ดาวมากกว่า 0% ของอีก 3576 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 20% ของอีก 3576 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 3576 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Attest MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: IMGAUTH_API_KEY

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.4.1) เข้า registry 4 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Agent-Native Calendar

Agent-Native Google Calendar - manage events, sync, and public booking

โดย BuilderIOกำลังโต★ 7.6Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์

Excel MCP Server

ให้ AI สร้างและแก้ไฟล์ Excel ได้เอง ทั้งสูตร กราฟ และ PivotTable โดยไม่ต้องมีโปรแกรม Excel ในเครื่อง

โดย haris-musaใช้กันมาก↓ 49.6K/สัปดาห์★ 4.3Kอัปเดต 7 วันที่ผ่านมา

รันบนเครื่อง

MCP Server for Excel

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

โดย sbroenneกำลังโต↓ 4.3K/สัปดาห์★ 847อัปเดต 5 วันที่ผ่านมา

รันบนเครื่อง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

attest-mcp

Listed on the official MCP Registry as io.github.SPAZIO-GENESI/attest-mcp.

MCP server and CLI for Spazio Genesi's attestation service — attest, verify, and check the existence of digital works from any MCP-capable AI agent (Claude Code, Claude Desktop, etc.) or straight from a terminal / CI pipeline.

Full privacy: file bytes never leave your device. The fingerprint (SHA-256) is computed locally, streamed from disk — only the hash and optional metadata are sent.

📖 English documentation: attestazione.spaziogenesi.org/en — site, developer docs, and tiers/terms are all available in English.

What it does

The attestation service timestamps a file's SHA-256 fingerprint, signs it (HMAC), and can produce a signed PDF certificate plus an OpenTimestamps proof anchored in Bitcoin. This server exposes that service as MCP tools, so an agent can attest and verify works on your behalf without a browser.

Why this, not just an OpenTimestamps wrapper

Several MCP servers can submit a hash to an OpenTimestamps calendar. As far as we know, this is the only one that hands back a complete proof of existence — a signed PDF certificate, a recognized RFC 3161 timestamp, and a Bitcoin anchor — for free, with the file's bytes never leaving the caller's machine. No account, no upload, no paid notarization chain. If you know of another MCP server with the same combination (full certificate + free + local hashing), we'd genuinely like to hear about it — open an issue.

Built for the European legal and regulatory context

Spazio Genesi is an Italian non-profit (ETS – *Ente del Terzo Settore*). The attestation service behind this package was designed with the EU regulatory environment in mind, not adapted to it afterwards:

  • GDPR-first, privacy by design: the file itself never reaches our servers — only its SHA-256 fingerprint (and any metadata you choose to declare) is sent.
  • EU data residency: certificates and proofs are archived on Cloudflare R2 under EU jurisdiction.
  • Recognized timestamping, no single point of trust: every certificate carries an RFC 3161 timestamp from an AATL-rooted authority (trusted by Adobe and most PDF readers) *and* an independent Bitcoin anchor via OpenTimestamps.
  • Honest about eIDAS: this is not (yet) an eIDAS qualified trust service — the signer identity is currently self-signed, and a qualified electronic seal is a planned but unimplemented upgrade. See the technical whitepaper for the full, unvarnished breakdown of what is and isn't guaranteed.

Full tiers and terms: attestazione.spaziogenesi.org/en/condizioni.

Install

Claude Desktop — one command, no manual JSON editing:

npx -y @spazio-genesi/attest-mcp-setup

This finds your claude_desktop_config.json (Windows/macOS/Linux), adds the attest-mcp entry, and backs up the original file first. It refuses to touch anything if the existing file isn't valid JSON — it never guesses. Restart Claude Desktop afterwards. To remove it again: add --uninstall. To preview without writing: add --dry-run.

Claude Code:

claude mcp add attest-mcp -- npx -y @spazio-genesi/attest-mcp

Manual / other clients — add this to your MCP client's config:

{

"mcpServers": { "attest-mcp": { "command": "npx", "args": ["-y", "@spazio-genesi/attest-mcp"] } } }

Authentication

Two ways to authenticate, matching the underlying service:

  1. API key (for partner integrations, issued manually by Spazio Genesi): set the IMGAUTH_API_KEY environment variable.
  2. Device flow (for personal/agent use): call the authorize tool with no arguments. It returns a URL — open it, approve with the human-verification widget, then call authorize again with the returned code. The session token (24h, 20 attestations) is saved to ~/.config/attest-mcp/credentials.json (permissions 600 where supported) and used automatically after that.

Either way, the credential only unlocks the anti-bot check on attestation — the server-side timestamp, cryptographic signature, and rate limits are unchanged.

Tools

ToolWhat it does
authorizeStart or continue the device-flow authorization.
attest_fileHash a local file (streamed) and attest it.
get_certificate_pdfMint a fresh signed PDF, or recover an already-archived one, saved to disk.
verify_fileHash a local file and check it against a declared hash + signature.
verify_certificateVerify a certificate's signature without a local file.
check_anchorCheck/download the OpenTimestamps (Bitcoin) proof.
service_statusTraffic-light status of the attestation service.

CLI (sg-attest)

Same package, no separate install. The CLI is a bin alongside the MCP server, sharing the same hashing/API/config code — same full privacy (streamed local hash, file bytes never sent), same credentials.

npx -y -p @spazio-genesi/attest-mcp sg-attest attest ./work.png

npx -y -p @spazio-genesi/attest-mcp sg-attest verify ./work.png --hash

(-p is required: sg-attest is a secondary bin of the package, and plain npx -y @spazio-genesi/attest-mcp runs the MCP server instead.)

One advantage over the site: no 1 GB cap. The browser is limited by WebCrypto (which loads the whole file into memory); this CLI streams from disk on Node, so it can attest files of any size.

CommandWhat it doesCredential
attest [--title --author --year --note] [--pdf ]Hash locally (streamed) → attest → print fingerprint, attestation, HMAC. Nothing is archived and no /c/ page exists without --pdf; only --pdf mints the signed certificate and prints the verification linkYes
verify [--hash ]Hash locally; with --hash, compares (exit 2 if different); also reports archive/anchor statusNo
verify-cert --hash --attestazione --hmac [--titolo --autore --anno --note]Verifies a certificate's HMAC signature, no local file involvedNo
cert [-o ]Recovers an already-archived certificateNo
anchor [-o ]Checks/downloads the OpenTimestamps (Bitcoin) proofNo
statusTraffic-light status of the serviceNo
authorizeDevice flow: prints a URL to approve, polls, saves the token—
--version / --helpVersion (from package.json) and usage—

Every command accepts --json (emits one JSON object on stdout, for scripting) and --quiet (reduces non-essential human-readable output). Errors go to stderr; the CLI never prints a credential (API key or session token) to stdout, stderr, or --json output — same discipline as the MCP server.

Exit codes (a stable contract, for CI/scripting):

CodeMeaning
0Success / positive outcome
1Operational error (network, auth, bad input)
2Negative verification outcome (hash mismatch, invalid signature)

Authentication is the same as the MCP server: IMGAUTH_API_KEY env var, or a session token saved by sg-attest authorize (device flow). There is no --key flag — a credential on the command line ends up in shell history; use the env var (or a CI secret) instead.

A GitHub Action that uses this CLI to attest build artifacts in CI lives in a companion repo: attest-action.

Standalone binaries (no Node required)

For a machine or CI runner without Node.js, download a pre-compiled sg-attest executable from the Releases page — same commands, same behavior, nothing to install.

OSArchitectureFile
Linuxx64sg-attest-linux-x64
Linuxarm64sg-attest-linux-arm64
macOSIntelsg-attest-macos-x64
macOSApple Siliconsg-attest-macos-arm64
Windowsx64sg-attest-windows-x64.exe
WindowsARM64sg-attest-windows-arm64.exe

Each release also includes SHA256SUMS.txt. Verify the download before running it:

sha256sum -c SHA256SUMS.txt --ignore-missing   # Linux/macOS
(Get-FileHash .\sg-attest-windows-x64.exe -Algorithm SHA256).Hash   # compare by eye to SHA256SUMS.txt

⚠️ The binaries are not code-signed: expect an "unknown publisher" warning from Windows SmartScreen or macOS Gatekeeper the first time you run one. The checksum above is the integrity guarantee in the meantime — the binary is built and published by GitHub Actions directly from this repo's source, nothing hand-uploaded.

Usage is identical to the npm-installed CLI, just call the file directly:

chmod +x ./sg-attest-linux-x64          # Linux/macOS only

./sg-attest-linux-x64 attest ./work.png --pdf cert.pdf ./sg-attest-linux-x64 status

npx/npm remain the primary distribution channel (and what attest-action uses in CI) — the binaries are an additional channel, not a replacement.

Build provenance (SLSA/in-toto)

The checksum above answers "is this file intact?" — it says nothing about *where the bytes came from*. Every release since v0.4.2 also carries a signed build provenance attestation (actions/attest-build-provenance, job release in release-binaries.yml): cryptographic proof that the file was built by this repo's own workflow, from a specific commit and tag, not hand-uploaded or swapped afterward.

The GitHub CLI can verify it, but gh attestation verify requires an authenticated gh session even on this public repo (confirmed: it fails with "please run gh auth login" without one) — a real gap if the point is a check anyone can run with zero setup:

gh attestation verify sg-attest-linux-x64 --repo SPAZIO-GENESI/attest-mcp

scripts/verify-provenance.mjs does the same verification with no GitHub credentials at all — only the public attestations REST endpoint (confirmed reachable unauthenticated, even on this public repo) and the sigstore library, which checks the signature against Sigstore's own public infrastructure (Rekor, Fulcio, TUF — no account needed there either):

git clone https://github.com/SPAZIO-GENESI/attest-mcp

cd attest-mcp && npm install node scripts/verify-provenance.mjs ./sg-attest-linux-x64 \ --repo SPAZIO-GENESI/attest-mcp --tag v0.4.2

Exits 0 on success, 1 if the file doesn't match anything the workflow actually built (e.g. a single altered byte makes the digest — and therefore the lookup key itself — no longer match any attestation).

Configuration

Env varDefaultPurpose
IMGAUTH_API_KEY—API key credential, bypasses the device flow.
IMGAUTH_BASE_URLhttps://imgauth.spaziogenesi.orgOverride for local development (http://localhost:8787).
IMGAUTH_CERT_PAGE_BASEhttps://attestazione.spaziogenesi.orgOverride for the permanent-certificate-page base URL.

Troubleshooting

If your client reports "Server disconnected", check its log first: this server writes diagnostics to stderr, which MCP clients capture. On Claude Desktop the log lives in %APPDATA%\Claude\logs\mcp-server-attest-mcp.log (Windows) or ~/Library/Logs/Claude/mcp-server-attest-mcp.log (macOS).

You should see one line per lifecycle event:

[attest-mcp 2026-07-21T11:14:12.948Z]

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx