mcpField
S
Stacktree

Stacktree

リモート
stacktr.eeクラウド・インフラ02 週間前に更新
リポジトリ公式サイト

Stacktree について

Stacktreeは、HTMLページを推測しにくい非公開URLで公開し、管理するMCPサーバーです。ページ共有やアクセス制御が必要なエージェントやMCPクライアント向けに、フィードバックや改訂のためのツールも提供します。

主な機能

  1. 01推測しにくいURLでHTMLを公開
  2. 02URLを維持したページ更新
  3. 03パスワード・メールドメイン制限
  4. 04有効期限、バージョン、復元の管理
  5. 05ページのフィードバック収集と対応

活用シーン

  1. 01クライアントに非公開HTMLを共有
  2. 02リンクを変えずに公開ページを改訂
  3. 03パスコードやメールドメインで閲覧を制限
  4. 04コメント収集と承認状況の追跡

MCP 対応

StacktreeはMCPクライアントに公開・ページ管理ツールを提供します。stdioブリッジと https://api.stacktr.ee/mcp のホスト型エンドポイントを利用できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://api.stacktr.ee/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

パッケージ
npmstacktree-mcp0.8.3

ツール

21
パラメーター型必須説明
contentstringはい公開する HTML 全体。
filenamestringいいえ
passwordstringいいえ
expires_in_hoursanyいいえ
burn_after_readbooleanいいえ
agentationbooleanいいえ
public_slugstringいいえ
pii_checkenumいいえoff | warn | block
clientstringいいえ
client_pathstringいいえ

詳細

stacktree-mcp

stacktr.ee 用の MCP サーバーです。任意の MCP クライアント(Claude Desktop、Claude Code、Cursor、Continue など)から HTML アーティファクトを公開できます。

エージェントを使ったセットアップ

コーディングエージェントを開いている場合は、次の行を渡すだけで、あとはエージェントが行います。 インストール、接続の検証、ツールの仕様の把握まで行います。

Fetch and follow the setup instructions at https://stacktr.ee/prompt.md

URL を取得できるエージェントであれば、どれでも動作します。手順は通常の Markdown なので、 必要であれば先にお読みください。

インストール

MCP クライアントの設定に追加します。

{
  "mcpServers": {
    "stacktree": {
      "command": "npx",
      "args": ["-y", "stacktree-mcp"],
      "env": { "STACKTREE_API_KEY": "stk_live_..." }
    }
  }
}

https://app.stacktr.ee で API キーを生成します。

このパッケージは不要かもしれません

これは、ストリーミング可能な HTTP を利用できないクライアント向けの stdio ブリッジです。 利用できる場合は、同じ 42 個のツールを公開し、同じキーを使うホスト型サーバー https://api.stacktr.ee/mcp に直接接続してください。

curl -sS -X POST https://api.stacktr.ee/mcp \
  -H "Authorization: Bearer $STACKTREE_API_KEY" \
  -H 'accept: application/json, text/event-stream' \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

その場合、ブラウザーも OAuth フローも必要ありません。stk_live_ キーは REST API とまったく同じように、MCP エンドポイントで有効な認証情報です。ログイン済みの人間に代わって動作するコネクター向けに、Dynamic Client Registration を使った OAuth 2.1 も受け付けます。セッション Cookie は拒否されます。認証情報は 1 つ送信してください。

キーがなく、尋ねる相手もいませんか? POST https://api.stacktr.ee/provision を x402 経由で利用して取得できます。近くに人間はいるけれどブラウザーがない場合は、POST https://api.stacktr.ee/api-keys/device-code を実行し、返された verification_url_complete をその人に表示して、キーが返されるまで /api-keys/device-code/poll をポーリングしてください(RFC 8628)。

ツール

ツール内容
publish_htmlHTML を公開し、{ url, id, expires_at, ... } を返します。client を渡すと、クライアントスペースに保存されます。
update_site既存サイトの HTML をその場で置き換えます。URL は維持されます。
get_siteサイトの現在の HTML ソースを読み取ります。編集してから update_site を実行します。
set_passwordパスコードによる制限を追加または解除します。すべてのプランで利用できます。
set_expiry有効期限を現在からの時間数で設定します。無期限にする場合は null を指定します。プランの上限が適用されます。
set_email_gate閲覧者をメールドメインで制限します(1 回限りのマジックリンク認証)。有料プランのみ利用できます。
set_client_feedbackページを送った相手が、アカウントを作成せずにコメント(テキスト、画像、動画)やリアクションを追加できるようにします。
set_agentation旧式の開発者向けマークアップツールバーです。set_client_feedback の使用をおすすめします。
list_sitesこの API キーが所有するサイトを一覧表示します。ページ分割されます(has_more とカーソル)。client で絞り込めます。
delete_siteページを非公開にします。リンクはすぐに無効になります。コンテンツは 30 日間保持された後、削除されます。
restore_site削除または期限切れのページを、30 日以内であれば同じ URL で復元します。
claim_siteアカウントなしで公開されたページを、その claim_token を使って取得します。URL は維持され、取得は公開としてカウントされます。
get_contentページを html(保存された正確なソース。編集可能)または text(タグを除いた、読み取りコストの低い形式)で読み取ります。
get_meこのキーのアカウント、プラン、使用数、適用中の limits を取得します。上限は説明からではなく、必ずここから確認してください。
link_walletウォレットを連携し、公開したページが自分のアカウント所有になるようにします。
list_feedbackクライアントのコメントを読み取ります。未解決のものが先に表示され、それぞれ対象と、現在もページ上にあるかどうかが示されます。
create_share_link1 人に宛てたリンクを発行します。そのリンクから開くたびに、その人の名前に紐付けて記録されます。
list_share_linksページ上のリンク、紐付けられた閲覧数、各リンクが最後に開かれた日時を一覧表示します。
revoke_share_link1 つのリンクを無効にします。ページや他のリンクは引き続き利用できます。
resolve_feedbackフィードバック項目を対応済みにし、任意でメモを追加します。
set_client名前またはスラッグを指定してページをクライアントスペースに保存します(スペースは自動作成されます)。null を指定すると紐付けを解除します。
list_client_spacesアカウント上のクライアントスペースを一覧表示します。ページ数、紐付けられたホスト名、ポータルの状態を確認できます。
create_client_space事前にスペースを作成します。通常は不要です。公開時に client を指定するとスペースが作成されます。
update_client_spaceスペースの名前変更、アーカイブ、またはそのスペース内の全ページに適用される閲覧者制限の設定を行います。
delete_client_spaceスペースを削除します。ページの紐付けは解除されますが、URL は維持されます。
get_design_guideサイトのデザインガイドです。ページを生成またはスタイル変更する前に読み取ってください。
get_passcode所有するページのパスコードを表示し、クライアントに再送できるようにします(2026 年 9 月 13 日以降に設定したパスコードが対象です)。
list_versionsページの以前のバージョンを新しい順に表示します。更新ごとにスナップショットが 1 つあります。
restore_version更新に問題があった場合、以前のバージョンを同じ URL に復元します。
whos_it_forページの送信先を記録し、その人専用のリンクを取得します。何も送信されません。
unopened_pages送信から 1 時間経っても開かれていないページと、まだ開いていない宛名付きの相手を表示します。
get_revision_briefページに寄せられた内容をすべて、次のバージョン向けの要約として取得します。
publish_revisionページをその場で置き換え、対応したコメントを同時に解決済みにします。
resolve_comments複数のコメントをまとめて解決し、レビュー担当者に表示されるメモをそれぞれ追加します。
request_approval名前を指定した相手にページの承認を依頼します。それぞれに専用の非公開リンクが 1 つ発行されます。
get_approval_status現在公開中のバージョンについて、セクションごとに誰が承認したかを確認できます。
list_responsesページ上のフォームを通じて読者から送信された内容を表示します。
resolve_addressed_notes更新で対応したレビュー担当者のメモを、それぞれ 1 行のコメントを付けてクローズします。
open_html_fileChatGPT デスクトップのファイルビューアーで .html ファイルを開きます。ここではファイルをそのまま返すだけです。
stacktree_pages最新 25 件のページを表示します。ChatGPT のページパネルです。list_sites と同じデータが返されます。
publish_card_statusChatGPT と Claude の公開カードを更新します。ここではページの詳細が返されます。
publish_card_open公開カードの「開く」ボタンです。ページの所有者向けの 15 分間有効なプレビューリンクを返します。

ウォレットのリンク

エージェントが自分のウォレットで公開の支払いを行う場合(x402 / MPP)、そのウォレットを Stacktree アカウントにリンクすると、過去および今後に公開するすべてのページがそのアカウントの所有になります。

  1. 人間が https://app.stacktr.ee/wallets でリンクコードを生成します。
  2. link_wallet({ code }) → 署名する正確なメッセージが返されます。
  3. ウォレットで署名します(personal_sign)。
  4. link_wallet({ code, wallet, signature }) → ウォレットをリンクし、すでに公開済みのページをそのアカウントに移します。

フィードバックの確認

set_client_feedback でコメントを有効にすると、リンクを送った相手は単語を選択したり、画像、動画、セクションをクリックしたりして、所有者だけが見られるコメントを残せます。list_feedback は、未解決のものを先に、各項目の1行の target と on_page(ページ内にまだ存在するか、編集後に削除されたか)とともに返します。同じ URL のまま update_site でページを修正できます。レスポンスには、未解決のコメントのうち新しいバージョンに一致しなくなったものが一覧表示されます。回答したコメントごとに resolve_feedback を実行し、短いメモを添えると、クライアントは自分のコメントの横にそのメモを確認できます。

プライバシーポリシー

ポリシー全文:https://stacktr.ee/privacy。要約は次のとおりです。

  • 収集する情報。 このサーバーは、公開するよう依頼された内容(HTML とファイル)およびツール呼び出しを、Stacktree API キーで認証して https://api.stacktr.ee に送信します。それ以外にお使いのマシンから情報を収集することはなく、ローカルデータも保持しません。
  • 利用方法と保存方法。 ページを配信するため、公開ファイルは Cloudflare R2 に、ページのメタデータ(URL、公開範囲、有効期限、パスワードのハッシュ、閲覧回数)は Cloudflare D1 に保存されます。デザイン調整、Ask this page、ページ動画など、ページごとに有効にするオプション機能では、そのページのテキストがポリシーに記載された AI サービスに送信されます。これらのサービスは、送信されたテキストを学習に使用しない利用条件に従います。
  • 共有。 Stacktree は個人データを販売しません。サービスの運営に必要なサブプロセッサーとのみデータを共有します。サブプロセッサーはポリシーに記載されています(例:Cloudflare、サインイン用の Clerk、請求用の Stripe)。
  • 保持期間。 ページは有効期限が切れるか削除されるまで保持されます。その後、復元できるようコンテンツは30日間保持され、以降は破棄されます。配信ログは、IP アドレスをハッシュ化したうえで30日間保持されます。
  • お問い合わせ先。 [email protected]

プライバシーのデフォルト設定

各サイトには、推測できない https://stacktr.ee/p/{token}/ URL が割り当てられます。public_slug を渡すと、https://{slug}.stacktr.ee/ を使用できます。

pii_check のデフォルトは block です。一般的なシークレットや個人情報の形式(メールアドレス、SSN、クレジットカード、OpenAI/GitHub/Stripe API キーのプレフィックス)に一致するアップロードは拒否されます。warn を渡すと公開は続行されます(一致した項目はレスポンスで警告されます)。off を渡すとスキャンはスキップされます。

無料プランで利用できる内容

無料プランのキーでは、合計3ページが公開でき、各ページは公開から7日後に期限切れになります。これは同時公開数ではなく生涯の総数です。ページを削除したり、期限切れになったりしても枠は戻りません。

ページの有効期間に上限があるプランでは、expires_in_hours: "never"は拒否され、黙って短縮されることはありません。409 expiry_clampedが返り、何も公開されず、本文にはページに設定されるはずだった日付が含まれます。上限を受け入れるにはaccept_clamp: trueを渡すか、リンクを恒久的なものにできないプランであることをユーザーに伝えてください。上限を超える数値を指定した場合は拒否されずに短縮され、レスポンスにexpiry_clamped: trueが含まれます。いずれの場合も、リクエストで指定した値ではなく、レスポンスのexpires_at_isoを読み取って、その値を伝えてください。

パスコード(set_password)は無料プランを含むすべてのプランで利用できます。メールゲート(set_email_gate)と閲覧者数の確認は有料プランで利用できます。上限に達すると、errorに安定したplan_*コードが含まれるHTTP 402が返ります。

コード意味
plan_lifetime_limit_exceeded無料プランで利用できる3ページをすべて使用しました。ページを削除しても解決しません。
plan_site_limit_exceeded有効なページ数の上限に達しました。
plan_password_not_availableこのプランではパスコードを利用できません(Freeでは利用できますが、利用できないプランもあります)。
plan_viewer_gate_not_availableこのプランではメールゲートを利用できません。
plan_domain_not_availableこのプランではカスタムドメインを利用できません。

GET /me、またはget_meツールを使うと、呼び出し元のキー自身のlimitsオブジェクトが返されます。上限をハードコードせず、そこから読み取ってください。現在のプランと料金については、こちらをご覧ください:https://stacktr.ee/pricing.md。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。