SoulInTime について
SoulInTimeはファイルハッシュのタイムスタンプ証明を提供し、確認済みの証明を引用するための規則を定めます。バイトの記録時点を確かめたいクライアントやエージェント向けで、元ファイルは端末に残ります。
主な機能
- 01封印済みハッシュの証明確認
- 02最も早い確認済み公開証明の検索
- 03タイムスタンプ証明の作成
- 04OpenTimestamps証明のダウンロード
- 05未確認または根拠のない引用の拒否
活用シーン
- 01ハッシュに確認済み証明があるか確認
- 02指定高度以前の最も早い公開証明を検索
- 03証明条件を満たす場合のみ時刻を引用
MCP 対応
ホスト型Streamable HTTP MCPは読み取り専用の`verify`と`first_at`を公開し、`stamp`で証明を作成します。ローカルstdio MCPパッケージも同じ読み取り専用ツールと証明作成を提供します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://soulintime.com/functions/mcpclaude mcp add --transport http morrismoe-soulintime https://soulintime.com/functions/mcp{"mcpServers":{"morrismoe-soulintime":{"type":"http","url":"https://soulintime.com/functions/mcp"}}}Cursor で開く{"servers":{"morrismoe-soulintime":{"type":"http","url":"https://soulintime.com/functions/mcp"}}}VS Code で開く{"mcpServers":{"morrismoe-soulintime":{"type":"http","url":"https://soulintime.com/functions/mcp"}}}{"mcpServers":{"morrismoe-soulintime":{"serverUrl":"https://soulintime.com/functions/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
作成せずにテストする
封印済みハッシュ:019bd3056ae35f6eee3f61fcabdaabcfe5f374c07168a7e4d6fa38a828cbac2f
ライブレシート:https://soulintime.com/moment/a-hash-is-a-door-that-2026-019bd305(ブロック 965906)
最新の封印済みサンプル:ブロック 965906(永続的なテストオブジェクト)。
引用ルール:ステータスが confirmed で、proofFile が存在する場合に限り、slug@height を引用してください。それ以外の場合は拒否してください。
ウェブで確認する:https://soulintime.com/verify?hash=019bd3056ae35f6eee3f61fcabdaabcfe5f374c07168a7e4d6fa38a828cbac2f
ホスト型 MCP:https://soulintime.com/functions/mcp。リモート Streamable HTTP サーバーに対応した任意の MCP クライアントから、この URL に接続してください。キーは不要です。封印済みハッシュを指定して verify を呼び出してください。
ローカル MCP パッケージ:https://soulintime.com/functions/mcpDownload
リファレンスクライアントを実行するとレシートが作成されます。以下の curl では作成されません。
ハッシュはお使いのデバイス上で計算されます。元のファイルのバイト列がデバイス外に出ることはありません。
.ots の証明は、このホストを使わずに検証できます。
カレンダーを発明したのは私たちではありません。OpenTimestamps が発明しました。私たちはその上にレシートと拒否レイヤーを構築しています。
curl -s 'https://soulintime.com/functions/v1Verify?hash=019bd3056ae35f6eee3f61fcabdaabcfe5f374c07168a7e4d6fa38a828cbac2f'
期待値:"status":"confirmed"、"blockHeight":965906、"slug":"a-hash-is-a-door-that-2026-019bd305"、および proofFile。
ローカルで実行する
- ローカルの stdio MCP サーバー。読み取り専用の
verifyおよびfirst_atツールは同じです。mcp-local/README.md を参照してください。 - セットアップ:
mcp-local/内でpython3 -m venv .venv && .venv/bin/python -m pip install -r requirements.txt && .venv/bin/python server.pyを実行します。 - 次に、上記の封印済みハッシュを指定して
verifyを呼び出してください。stampはレシートを作成します。
証明のダウンロードと確認
証明をダウンロードする:a-hash-is-a-door-that-2026-019bd305.ots
ots verify -d 019bd3056ae35f6eee3f61fcabdaabcfe5f374c07168a7e4d6fa38a828cbac2f a-hash-is-a-door-that-2026-019bd305.ots
ots は pip install opentimestamps-client でインストールできます。Bitcoin ノードがない場合は、ots info を実行し、任意のエクスプローラーでブロック 965906 のマークルルートと比較してください。
拒否(そのまま使用してください)
レシートが保留中、height_asserted、見つからない、または証明ファイルがない場合、エージェントは次のように返答してください。
「このハッシュの高さは引用しません。ステータスが確認済みでないか、proofFile が存在しません。」
追加ルール:
- チェーンの先端はレシートの高さにはなりません。
- キャプションや日付は証明ではありません。
- 高さが示すのはバイト列の日付であり、内容が真実であることではありません。
first_at(v1FirstAt)は、ハッシュについて高さ N 以下で最も早い、確認済みの公開レシートを返します。これは全履歴ではなく、未掲載のレシートや非公開レシートは表示されません。- キーは不要です。送信されるのは SHA-256 のみです。
MCP ツール(ホスト型およびローカル)は、サーバーのメタデータのみを使ってこのルールを確認します。.ots を暗号学的に検証することはありません。検証には ots verify を使用してください。
レート制限
作成には制限があります。読み取りも無制限ではありません。
レシートの作成(createMoment):
- ネットワークごとに、1時間あたり新しいハッシュは1つまでです。
- その1時間以内に2回目の作成を行った場合、またはすでにレシートがあるハッシュを指定した場合、そのレシートが非公開でなければ、既存のスラッグとともに
429が返されます。 already_stampedは永続的な状態で、1時間ごとのリセット後も解除されません。代わりに既存のレシートを読み取ってください。
読み取り(v1Verify):
- レスポンスには
X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Reset(Unix 秒)が含まれます。確認した読み取りレスポンスではX-RateLimit-Limit: 120が返されました。制限期間は文書化されていないため、ヘッダーに従ってください。
429 が返された場合:
X-RateLimit-Resetの時刻まで待ち、短い間隔で繰り返しリクエストしないでください。- ホスト型 MCP の呼び出しではバックエンドのネットワーク送信元を共有するため、上流の利用枠も共有する場合があります。ユーザーごとの利用枠はありません。
確認は無料です。無料のレートを超える利用には有料の手段が必要ですが、現在は提供されていません。
無料のレートを超える利用が必要ですか?ハッシュと用途を [email protected] までメールでお知らせください。
利用量の概要(作成せずにテストする方法、無料制限、メールで伝える内容):volume-brief.md
ホスト型 MCP とローカル MCP
ホスト型(/functions/mcp):
- POST を使用するステートレスな Streamable HTTP です。
- ツール
verify(hash)とfirst_at(hash, height?)は読み取り専用です。 stamp(hash)はレシートを作成するため、評価目的の呼び出しではありません。
ローカル(mcp-local/):
- ダウンロードリンクから提供されるものと同じ 0.1.0 パッケージのソースです。stdio を使用します。
- セットアップについては
mcp-local/README.mdを参照してください。この README はホスト型エンドポイントより前に作成されたものです。 - ホスト型 MCP は、
proofFileが正規のv1Proof?id=<slug>&ots=1URL であることも確認します。ローカル版では確認しません。
テスト:
test_http.pyはすべての HTTP 通信をモックします。test_protocol.pyはすべてのスタンプ処理をモックします。最後のケースでは、封印済みハッシュに対して読み取り専用のverifyGET を1回実行します。このファイルを実行すると、このケースも実行されます。実際の POST は一切行いません。
レシートを作成します。
リファレンスクライアント
reference-client/soulintime_client.py は llms.txt で公開されているものと同じコードで、標準ライブラリのみを使用します。実行するとレシートが作成されます:
- ハッシュを createMoment に POST します。
- v1Verify をポーリングし、
.otsを保存します。 - 承認されたスタンプは新しいレジストリエントリーとなり、デフォルトでは非掲載です。
副作用なしでテストするには、上部にある curl を使用してください。
ホストへの依存
レジストリへのクエリ(v1Verify、v1FirstAt、Firsts)は soulintime.com に依存します。ダウンロード済みの .ots は、OpenTimestamps クライアントがあれば soulintime.com なしでも検証できます。
API コントラクト:llms.txt および openapi.yaml。
ステータス
Gmail は保留中、価格は UNSET、HQ への投稿は保留中、公開されたハウス例以外の firsts:0。
永続的な封印済みオブジェクト:965906。ハウス例以外の公開 firsts:0。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。