Sellat

io.github.skanthemore由 GitHub 帳號 skanthemore 發布v0.3.3更新於 Nov 7, 2026

為任意 MCP 客戶端的檔案提供存在性證明:本機雜湊,錨定於 Polygon 和 Bitcoin。

AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。

原文描述

Proof of existence for files from any MCP client: hashed locally, anchored on Polygon and Bitcoin.

已驗證STDIO僅桌面金融

概覽

Sellat 的本機 MCP 服務;無需登入;STDIO;9 個工具。

暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Sellat,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

sellat-mcp

[tests] [M8ven Score]

The official MCP server for SELLAT: ask Claude, Cursor or any MCP client to protect a file, follow its proof, add the qualified eIDAS seal or verify a proof, all from the chat.

"Protect ~/Contracts/draft-v3.pdf with Sellat." "Has the proof of my last photo reached Bitcoin yet?" "Check this file against the evidence package in my Downloads."

Your files never leave your machine. The server runs locally, hashes the file on your computer and sends SELLAT only its SHA-256 (plus the name and size shown on the certificate). It is a thin layer over the sellat-cli client and the sellat-verify offline verifier.

Setup

Claude Desktop: one click

  1. Download sellat.mcpb from the latest release and open it. Claude Desktop shows an install dialog; it brings its own Node.js, so there is nothing else to install.
  2. Paste your API key when it asks: create a free account at sellat.app, then a key in your dashboard (API keys). Without a key you can still find, fingerprint and verify files.

Then just talk: "protect the contract I downloaded yesterday". Claude finds the file in your Downloads, Desktop, Documents or Pictures folder (whatever they are called on your system) and asks you which one if several fit.

A file you drag into the chat goes to the model, not to this server: say where it is saved instead, or let Claude find it.

Other clients

You need Node.js 18 or later, and the API key as above.

Claude Code

bash
claude mcp add sellat -e SELLAT_API_TOKEN=sellat_… -- npx -y sellat-mcp

Gemini CLI

bash
gemini mcp add -e SELLAT_API_TOKEN=sellat_… sellat npx -y sellat-mcp

Cursor, Claude Desktop without the extension, and other clients (.cursor/mcp.json, claude_desktop_config.json, …):

json
{  "mcpServers": {    "sellat": {      "command": "npx",      "args": ["-y", "sellat-mcp"],      "env": { "SELLAT_API_TOKEN": "sellat_…" }    }  }}
VariableDefault
SELLAT_API_TOKEN—your API key (SELLAT_API_KEY is accepted too)
SELLAT_DOWNLOAD_DIRthe system's downloads folderwhere certificates and packages are saved
SELLAT_API_URLhttps://sellat.appanother SELLAT environment

Tools

ToolWhat it doesKeyNetwork
sellat_findfind a file by name in Downloads, Desktop, Documents and Pictures (localized names included); names only, never contentsnonone
sellat_hashSHA-256 of a local filenonone
sellat_stampprotect a file: hash locally, create the proof; qualified: true adds the qualified eIDAS sealyesSELLAT (hash only)
sellat_statusstate of a proof: Polygon anchor, Bitcoin, seal, URLsyesSELLAT
sellat_listthe account's proofs, newest firstyesSELLAT
sellat_sealthe qualified timestamp (eIDAS, RFC 3161) for an existing proof; spends one sealyesSELLAT
sellat_accountplan, seals left, today's proof budgetyesSELLAT
sellat_downloadsave the PDF certificate, the evidence package (ZIP) or the seal's .tsr; never overwritesyesSELLAT
sellat_verifycheck a file against a proof.json, an evidence .zip or a proof id: Merkle path recomputed locally, anchor checked on a public Polygon nodenopublic RPC (and SELLAT only to fetch a proof by id)

Stamping the same file twice returns the first proof (the earlier date is the stronger one), and a retried call never creates a second proof.

Timing

A proof is anchored on Polygon in a Merkle batch: within minutes on the Pro account, at the end of a fixed four-hour UTC slot on the free account (00, 04, 08, 12, 16 and 20 h). Bitcoin, through OpenTimestamps, confirms some hours later. The qualified seal is issued at once. The server tells the model this, so it does not promise a blockchain transaction in seconds.

Payments

Nothing is ever paid through the MCP server. Protecting files is free within the account's daily budget. The qualified seal spends a seal from the account (new accounts get a welcome seal); with none left the tool answers with the link to buy a pack on the website, where the invoice, VAT and withdrawal terms live. The model is told to give you that link and to request a seal only when you asked for one.

What a proof proves

That these exact bytes existed no later than the anchored time, verifiable by anyone without trusting SELLAT. On its own it does not prove authorship or ownership. sellat_verify checks the file, the Merkle path and the Polygon anchor, and reads the anchoring block's time from the chain — the only date it states as proven (a proof whose own date differs fails; offline checks the math and states no date). It does not check the qualified seal's .tsr (any RFC 3161 tool does, e.g. openssl ts -verify).

Develop

bash
npm installnode --testnpm run bundle   # dist/sellat.mcpb, the Claude Desktop extension

Release: bump version in package.json, manifest.json and VERSION in src/server.mjs; npm publish; npm run bundle and attach dist/sellat.mcpb to a GitHub release.

MIT licence.

來源:README.md,提交 06f382f

工具

9

sellat_hash

Fingerprint a file

Compute the SHA-256 fingerprint of a local file. Runs entirely on this machine: nothing is sent anywhere. Useful to compare two files or to check a fingerprint someone gave you.

輸入參數path必填

sellat_find

Find a file

Find files on this computer by name, in the user's Downloads, Desktop, Documents and Pictures folders (their real names on this system), newest first. Reads names only, never contents. Use it whenever the user refers to a file without giving its path. With no query it lists the most recent files.

輸入參數querywherefoldermodified_within_days

sellat_stamp

Protect a file

Create a SELLAT proof of existence for a local file. The file is hashed on this machine and only its SHA-256 (plus the name and size) is sent; the file itself never leaves the computer. Stamping the same file again returns the existing proof (the earlier date is the stronger one). Set qualified=true only when the user explicitly asked for the qualified eIDAS seal: it spends one seal from the account.

輸入參數namepath必填qualified

sellat_status

Proof status

The current state of a proof: whether its batch is anchored on Polygon, the Bitcoin confirmation, the qualified seal and its URLs.

輸入參數proof_id必填

sellat_list

List proofs

The account's proofs, newest first, one page at a time.

輸入參數limitcursor

sellat_seal

Add the qualified seal

Issue the qualified electronic timestamp (eIDAS, RFC 3161) for an existing proof. Spends one seal from the account: call it only when the user explicitly asked for it. With no seals left it returns the link to buy them on the web. Calling it again on a sealed proof returns the existing seal without spending another.

輸入參數proof_id必填

sellat_account

Account

The account's plan, qualified seals remaining, custody usage and today's proof budget, with the link to buy seals.

無需輸入參數。

sellat_download

Download certificate or evidence

Save a proof document to this computer: the PDF certificate, the evidence package (ZIP with proof.json, the OpenTimestamps file and instructions to verify without SELLAT) or the RFC 3161 token of the qualified seal (.tsr). Never overwrites an existing file.

輸入參數kind必填langproof_id必填directory

sellat_verify

Verify a proof

Check that a file matches a SELLAT proof and that the proof is really anchored on the blockchain, without trusting SELLAT: the file is hashed locally, the Merkle path is recomputed, and a public blockchain node is asked whether the anchoring transaction carries the root. Give the proof as a proof.json or an evidence package (.zip), or as a proof id (its public proof.json is then fetched from SELLAT — the checks themselves stay independent). Does not check the qualified seal's .tsr. Needs no API key.

輸入參數offlineproof_idfile_path必填proof_path

版本歷史

1
  1. v0.3.3最新Nov 3, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分