dgb-attest-mcp

dgb-attest-mcp

Enables on-chain attestation of any content onto the DigiByte blockchain, providing permanent, timestamped, tamper-evident proofs. Allows AI agents to notarize their outputs or verify attestations using only the blockchain.

Category
Visit Server

README

dgb-attest-mcp

On-chain attestation for the AI era. Hash any content onto the DigiByte blockchain — a permanent, timestamped, tamper-evident proof that it existed, in exactly that form, at that moment. Verify it anytime, with nothing but the chain.

An MCP server, so an AI agent can notarize its own outputs (or check someone else's) as naturally as it reads a file.

As AI floods the world with generated content, "can you prove where this came from, and that it hasn't been altered?" stops being abstract. This is the simplest useful answer: a hash on a public, decentralized, immutable ledger.

What it proves — and what it doesn't

  • Proves: this exact content existed at or before the block's timestamp, and has not changed since. Change one character and the hash — and the proof — no longer match.
  • Does not prove: who created it, or that the content is true.
  • For "who," pair it with dgb-digiid-mcp: attest the content, then sign the attestation txid with your Digi-ID identity. Now you have what, when, and who — all on-chain, no central authority.

How it works

Only a sha256 hash ever goes on-chain — never your content. The hash is written into a single OP_RETURN output (36 bytes: a DGAT tag + the digest), which is cheap, standard, and prunable. Your document, model, or dataset stays entirely on your machine.

attest("my report")  ──sha256──▶  OP_RETURN(DGAT + hash)  ──▶  txid
                                                                  │
later: verify(txid, "my report")  ──▶  same hash? attested ✓  + block timestamp
       verify(txid, "my rep0rt")  ──▶  mismatch → NOT attested ✗

Proven on testnet: attested a document, verified the exact text (attested: true), and a one-character edit flipped it to attested: false with "the content is NOT what was attested." Large files use the precomputed-hash path — hash a 4 GB model locally, attest the digest.

Tools

Tool What it does
attest Hash content (or take a precomputed sha256) and write it on-chain. Returns the txid. Costs a small fee.
verify Given a txid + content/hash, confirm the chain holds the matching hash, with block timestamp and confirmations. Free.
decode_attestation Inspect any tx: if it carries a DGAT attestation, return the hash and timestamp. For reading attestations you didn't make.

Safety

  • Testnet by default. Attesting spends a fee, so the server refuses to run against mainnet unless you set ATTEST_ALLOW_MAINNET=true. (Mainnet is the real use — permanent public attestations — so that opt-in is deliberate.)
  • Daily cap (ATTEST_MAX_DAILY, default 50) so an agent can't spam the chain or burn through fees in a loop.
  • Your content never leaves your machine — only its hash.

Setup

Needs a DigiByte node with a small balance to pay attestation fees.

npm install
cp .env.example .env    # RPC creds + fee wallet

Add to your MCP client (npx dgb-attest-mcp), env: DGB_RPC_URL, DGB_RPC_USER, DGB_RPC_PASSWORD, DGB_WALLET.

Related

Independent community project. Not affiliated with the DigiByte Foundation. MIT licensed.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured