vtimestamp-write について
vtimestamp-writeは、ファイルやテキストのタイムスタンプをVerusIDに記録するMCPサーバーです。ローカルまたはリモートのVerusデーモン経由で送信し、IDの秘密鍵とRPCアクセスが必要です。
主な機能
- 01ファイルやテキストのタイムスタンプ作成
- 02SHA-256の自動計算
- 03VerusIDへのオンチェーン記録
- 04VRSC.confからRPC認証情報を読み込み
活用シーン
- 01レポートファイルのタイムスタンプをVerusIDに記録
- 02宣誓文やテキストのオンチェーンタイムスタンプ作成
- 03リモートデーモン経由でタイムスタンプを送信
MCP 対応
vtimestamp_create MCPツールを公開し、ローカルまたはリモートのVerusデーモンに接続してタイムスタンプを書き込みます。書き込みにはウォレット内のID秘密鍵が必要で、トランザクション手数料が発生します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y vtimestamp-mcp-writeVERUS_RPC_URLVerus daemon RPC URL (e.g., http://127.0.0.1:27486)VERUS_RPC_USERシークレットRPC username from VRSC.confVERUS_RPC_PASSWORDシークレットRPC password from VRSC.confVERUS_NETWORKNetwork: mainnet (default) or testnetローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
1掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| hash | string | はい | ドキュメントの SHA-256 ハッシュ(64 文字の 16 進数文字列) |
| title | string | はい | タイムスタンプのタイトル |
| feeoffer | number | いいえ | VRSC 建ての手数料提示額(デフォルト:0.0001) |
| filename | string | いいえ | 元のファイル名 |
| filesize | number | いいえ | ファイルサイズ(バイト) |
| identity | string | はい | VerusID 名(例:"alice@") |
| description | string | いいえ | タイムスタンプ付きドキュメントの説明 |
| sourceoffunds | string | いいえ | 資金提供アドレス(R-address、z-address、または ID@) |
詳細
vtimestamp-mcp-write
Verus ブロックチェーン上で vtimestamp の証明を作成する MCP サーバーです。
AI エージェント(Claude Desktop、VS Code など)が、VerusID にドキュメントのタイムスタンプを作成できるようにします。ローカルまたはリモートのデーモンを介して、Verus ブロックチェーンに直接書き込みます。
読み取り専用サーバーをお探しですか? vtimestamp-mcp をご覧ください。デーモンやウォレットは不要です。
前提条件
- Node.js 18 以降
- **Verus デーモン(
verusd)**が稼働していること。さらに、以下が必要です。- ID の秘密鍵がウォレットにインポートされていること
- RPC アクセスが有効になっていること(localhost ではデフォルトで有効)
インストール
Claude Code
claude mcp add --transport stdio --scope user vtimestamp-write -- npx vtimestamp-mcp-write@latest
Claude Desktop
claude_desktop_config.json に追加します。
{
"mcpServers": {
"vtimestamp-write": {
"command": "npx",
"args": ["-y", "vtimestamp-mcp-write@latest"]
}
}
}
これで完了です。サーバーは VRSC.conf から RPC 認証情報を自動検出します(下記の設定を参照)。
VS Code
VS Code の MCP 設定に追加します。
{
"mcp": {
"servers": {
"vtimestamp-write": {
"command": "npx",
"args": ["-y", "vtimestamp-mcp-write@latest"]
}
}
}
}
設定
サーバーはローカルの VRSC.conf ファイルから RPC 認証情報を自動的に読み取ります。ほとんどのユーザーは手動で設定する必要はありません。
自動検出される VRSC.conf のパス:
- macOS:
~/Library/Application Support/Komodo/VRSC/VRSC.conf - Linux:
~/.komodo/VRSC/VRSC.conf - Windows:
%AppData%\Roaming\Komodo\VRSC\VRSC.conf
環境変数
すべて任意です。標準以外の構成やリモートデーモンを使用する場合にのみ必要です。
| 変数 | 説明 |
|---|---|
VERUS_CONF_PATH | VRSC.conf のカスタムパス |
VERUS_RPC_URL | 上書き:デーモンの RPC URL(リモートデーモン用) |
VERUS_RPC_USER | 上書き:RPC ユーザー名(リモートデーモン用) |
VERUS_RPC_PASSWORD | 上書き:RPC パスワード(リモートデーモン用) |
ツール
vtimestamp_create
VerusID に新しいタイムスタンプを作成します。ファイルパスまたはテキストを指定すると、サーバーが SHA-256 ハッシュを自動的に計算します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
identity | string | はい | VerusID 名(例:alice@) |
file_path | string | いずれか | ハッシュ化してタイムスタンプを作成するファイルのパス |
text | string | いずれか | ハッシュ化してタイムスタンプを作成するテキスト(例:証明書やレポート) |
title | string | はい | タイムスタンプのタイトル |
description | string | いいえ | コンテンツの説明 |
filename | string | いいえ | 元のファイル名(file_path を使用する場合は自動検出) |
filesize | number | いいえ | ファイルサイズ(バイト単位、file_path を使用する場合は自動検出) |
sourceoffunds | string | いいえ | 資金提供アドレス(R アドレス、z アドレス、または ID@) |
feeoffer | number | いいえ | VRSC での手数料提示額(デフォルト:0.0001) |
file_path または text のどちらか一方を指定する必要があります(相互排他的)。
プロンプトの例:
- 「/path/to/report.pdf にあるファイルのタイムスタンプを alice@ に作成して」
- 「このテキストのタイムスタンプを alice@ に作成して:請求書 #4521 が承認されたことを証明します」
成功時の応答:
{
"success": true,
"identity": "alice@",
"hash": "a7f3b2c1...",
"title": "Q4 Report",
"transaction_id": "abc123...",
"message": "Timestamp created successfully"
}
エラーケース:
- ID が見つからない → ID 名を含むエラー
- ハッシュが重複している → 既存のブロック高と txid を含むエラー
- ファイルが見つからない →
InvalidParamsエラー - RPC の失敗 → デーモンのメッセージを含むエラー
動作の仕組み
サーバーは Verus デーモン(ローカルまたはリモート)に接続し、オンチェーンのタイムスタンプを作成します。updateidentity トランザクションに署名するため、デーモンのウォレットに ID の秘密鍵が必要です。
AI Agent (Claude Desktop, VS Code, etc.)
│ stdio (JSON-RPC)
▼
vtimestamp-mcp-write (local)
│ HTTP (JSON-RPC 1.0, with auth)
▼
Your Verus Daemon (verusd)
├── Has identity's private key in wallet
├── Signs and broadcasts updateidentity tx
└── Local (127.0.0.1) or remote (VPS)
オンチェーンのストレージ形式
v1.2.0 以降、このサーバーはタイムスタンプを、VerusID の contentmultimap 内の公開暗号化エントリーとして書き込みます。各タイムスタンプは、デーモンの {data: {...}} エンベロープの省略形を使用して、外側のキー proof.basic(iJvkQ3uTKmRoFiE3rtP8YJxryLBKu8enmX)の下に単一のエントリーを生成します。デーモンはこれを、flags: 13(HAS_OBJECTDATA | ENCRYPTED | HAS_IVK)を持つオンチェーンの DataDescriptor に展開します。暗号文は objectdata に格納され、公開された epk フィールドと ivk フィールドが付加されます。
メタデータ(sha256、タイトル、説明、ファイル名、ファイルサイズ)は、暗号化前に 1 つのメッセージに JSON 文字列化されるため、復号呼び出し 1 回ですべてのフィールドを取得できます。IVK はオンチェーンで公開されているため(公開暗号化モード)、誰でもこれらのエントリーを復号できます。読み取り側でキーの共有やウォレットへのアクセスは必要ありません。読み取り側については、vtimestamp-mcp を参照してください。
確認時の注意点:
- 任意の読み取り RPC(
getidentity、getidentityhistory、getidentitycontent)で cmm を確認すると、読み取り可能な文字列ではなく、暗号化された記述子が返されます。 - 元のフィールドを取得するには、記述子、元の txid、および
retrieve: trueを渡してdecryptdataを呼び出す必要があります。デーモンは暗号文を、書き込みを行ったトランザクションへの間接参照として保存します。txid は復号入力の一部です。 - ID に対するハッシュの検証にウォレットは不要です。
decryptdataがホワイトリストに登録されているノードへのデーモン RPC アクセスのみが必要です。
以前の形式のエントリーも引き続き機能します。 1.1.x 以前に書き込まれたタイムスタンプ(flags: 0 の、フィールドごとに平文で格納された DataDescriptor)は、オンチェーンに永久に残ります(cmm は追記専用です)。また、[email protected]+ はどちらの形式も透過的に読み取ります。
背景情報については、ID 上で暗号化データを公開する方法を参照してください。
デーモンのセットアップ
ローカルデーモン
最も簡単なセットアップです。verusd を MCP サーバーと同じマシンで実行します。設定は不要です。認証情報は VRSC.conf から自動検出されます。
リモートデーモン(VPS)
別のマシン(例:VPS)で実行されている verusd インスタンスを MCP サーバーに指定できます。デーモンの VRSC.conf に、次の 2 つの設定変更が必要です。
- IP を許可する:
rpcallowip=<your-ip>を追加します(デーモンはデフォルトで localhost からの接続のみを受け付けます)。 - ポートを開く: RPC ポート(27486)がファイアウォールを通じて到達可能であることを確認します。
次に、MCP 設定で環境変数の上書き(VERUS_RPC_URL、VERUS_RPC_USER、VERUS_RPC_PASSWORD)を設定します。
重要: RPC 認証情報は暗号化されていない HTTP で送信されます。オープンインターネット経由で接続する場合(ローカルネットワークではない場合)、SSH トンネルを使用して接続を保護してください。
ssh -L 27486:127.0.0.1:27486 user@your-vps
その後、VERUS_RPC_URL=http://127.0.0.1:27486 をローカル接続と同じように使用します。残りはトンネルが処理します。
セキュリティに関する注意事項
- このサーバーは RPC 認証情報を自動検出するために
VRSC.confを読み取ります。シークレットがコピーされたり、別の場所に保存されたりすることはありません。 - このサーバーは、少額のトランザクション手数料(デフォルトで 0.0001 VRSC)が発生する オンチェーン書き込みを行います。
- このサーバーは、ローカルデーモン(または設定した URL)にのみ接続します。データがほかの場所に送信されることはありません。
- リモートデーモンに接続する場合、RPC ポートを直接公開するのではなく、SSH トンネルを使用してください。
sourceoffundsパラメーターを使用して、手数料を支払うアドレスを制御できます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。