tollbooth-shortlinks について
Tollbooth MCP サービス向けに、OAuth フローを含む URL を覚えやすい短縮 URL にするコミュニティユーティリティです。対応関係を Neon Postgres に 24 時間保存し、付属の Val Town ハンドラーが中間ページを挟まずにリダイレクトします。
主な機能
- 01覚えやすい短縮 URL の作成
- 02リダイレクトせずスラッグの転送先を確認
- 03有効期限前のリンク削除
- 04有効リンク数と TTL の表示
- 0524 時間で期限切れになる無料ツール
活用シーン
- 01長い OAuth 認可 URL の共有
- 02短縮リンクの転送先の確認
- 03期限前のリンク削除
- 04リンクサービスの状態と有効リンクを確認
MCP 対応
無料の MCP ツールとして `create_shortlink`、`resolve_shortlink`、`delete_shortlink`、`shortlink_status` を公開します。付属の Val Town ハンドラーが短縮 URL を解決してリダイレクトします。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://tollbooth-shortlinks.fastmcp.app/mcpclaude mcp add --transport http lonniev-tollbooth-shortlinks https://tollbooth-shortlinks.fastmcp.app/mcp{"mcpServers":{"lonniev-tollbooth-shortlinks":{"type":"http","url":"https://tollbooth-shortlinks.fastmcp.app/mcp"}}}Cursor で開く{"servers":{"lonniev-tollbooth-shortlinks":{"type":"http","url":"https://tollbooth-shortlinks.fastmcp.app/mcp"}}}VS Code で開く{"mcpServers":{"lonniev-tollbooth-shortlinks":{"type":"http","url":"https://tollbooth-shortlinks.fastmcp.app/mcp"}}}{"mcpServers":{"lonniev-tollbooth-shortlinks":{"serverUrl":"https://tollbooth-shortlinks.fastmcp.app/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
4| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | リダイレクト先の URL。 |
| slug | any | いいえ | 省略可能なカスタム slug。省略すると、覚えやすいフレーズが生成されます (例:``brave-otter-finds-gold``)。 |
詳細
Tollbooth Shortlinks
お客様に迷惑をかけない™(DPYC™)— Tollbooth エコシステム向けの、一時的で人にやさしい短縮 URL です。
このプロジェクトの比喩は、 The Phantom Tollbooth (Norton Juster 著、Jules Feiffer 挿絵、1961 年)への敬意を込めて描かれています。Milo、Tock、Tollbooth、Dictionopolis、Digitopolis は、Juster 氏の並外れた想像力が生み出したものです。私たちは決済インフラを構築しただけです。
これが存在する理由
OAuth 認証 URL は長く、見た目が悪く、コピー&ペーストしにくいものです。
https://api.schwab.com/v1/oauth/authorize?client_id=abc123&redirect_uri=https%3A%2F%2F
fastmcp.cloud%2Foauth%2Fcallback%3Fserver_id%3D...&scope=...&response_type=code&state=...
従来のリンク短縮サービスは、独自の方針を押し付けるようになりました。間にページを挟み、クリックを追跡し、アカウントを要求し、機能を有料にし、あるいは独自のスケジュールでリンクをひそかに期限切れにします。MCP サーバーが OAuth のやり取りのために利用者へ一度限りの URL を渡す必要があるとき、こうしたものは一切不要です。
Tollbooth Shortlinks は、収益化を行わないコミュニティ向けユーティリティです。あらゆる URL を brave-otter-finds-gold のような覚えやすい 4 語のフレーズに変換し、その対応関係を Neon Postgres に保存して、24 時間後に期限切れにします。付属の Val Town HTTP ハンドラーが、間にページを挟まずに 302 リダイレクトを行います。
仕組み
MCP Server / Patron Shortlinks MCP Neon Val Town
| | | |
|-- create_shortlink(url) ---->|-- INSERT ------>| |
|<-- short_url ----------------| | |
| | | |
|-- GET /brave-otter-finds-gold ----------------------------> |
| | |<-- lookup ---|
|<-- 302 redirect ----------------------------------------------|
| | | |
| (24h later) | expired rows are deleted |
ツール
| ツール | 説明 |
|---|---|
create_shortlink | URL を保存し、覚えやすいスラッグを受け取ります(独自のスラッグも指定できます) |
resolve_shortlink | リダイレクトせずに、スラッグのリンク先を調べます |
delete_shortlink | 期限切れになる前に短縮リンクを削除します |
shortlink_status | 有効なリンク数と TTL を表示するヘルスチェックです |
すべてのツールは無料です。クレジットも、npub も、Tollbooth 台帳も必要ありません。
インストール
pip install -e ".[dev]"
ローカルで実行
export NEON_SHORTLINKS_URL="<your Neon connection string>"
# optional: the redirect host put in front of each slug (default https://tollbooth.val.run)
export SHORTLINK_REDIRECT_BASE="https://tollbooth.val.run"
python -c "from server import mcp; mcp.run()"
val/redirect.js の Val Town ハンドラーは、同じ NEON_SHORTLINKS_URL を読み取ります。
Horizon へのデプロイ
リポジトリのルートにある fastmcp.json は、fastmcp deploy ですぐに使えます。
DPYC の識別情報
Tollbooth Shortlinks は、DPYC Social Contract でアドボケイトとして登録されています。ピア MCP サーバーは Oracle に問い合わせて URL を見つけます。また、create_shortlink は完全な short_url を返すため、ピアがリダイレクトホストを知る必要はありません。
from tollbooth.oracle_client import default_oracle_client
svc = await default_oracle_client().resolve_service(name="tollbooth-shortlinks")
shortlinks_url = (svc or {}).get("url", "")
tollbooth-dpyc を基盤とするオペレーターは、これを無料で利用できます。tollbooth.shortlinks.create_shortlink(url) が、ベストエフォートで検索と呼び出しを行います。
関連リポジトリ
Tollbooth DPYC™ エコシステム:
| リポジトリ | 役割 |
|---|---|
| tollbooth-dpyc | 基盤 — 運営者側のクレジット台帳、BTCPay クライアント、ツールのアクセス制御、制約エンジン |
| tollbooth-authority | 機関 — 手数料の徴収、Schnorr 署名、購入の証明 |
| dpyc-oracle | オラクル — ソーシャルコントラクトによるガバナンス、メンバーシップ、追放の投票 |
| dpyc-community | レジストリ — ガバナンスデータ、運営者カタログ、コミュニティルール |
| tollbooth-sample | 参考運営者 — Tollbooth を全面的に組み込んだ天気 API |
| cypher-mcp | 有料のグラフ回答 — Neo4j/AuraDB 上で名前付き Cypher を実行 |
| schwab-mcp | Charles Schwab 証券取引 MCP — 相場、保有資産、注文、取引履歴(読み取り専用) |
| excalibur-mcp | eXcalibur — X(Twitter)への書式付き投稿 |
| thebrain-mcp | Personal Brain MCP — 思考グラフ、ナレッジ管理 |
| taxsort-mcp | 税務の仕分けと分類を行う MCP |
| optionality-mcp | オプション分析 MCP |
| goodearth-mcp | Good Earth — 地域別の農業気候分析 |
| beesknees-mcp | The Bee's Knees — 女王蜂を目指す有料マルチプレイヤーレース |
| roastify-mcp | Roastify のコーヒーカタログとパッケージアート |
| ChartRemotely-mcp | ChartRemotely — ペアリングしたエージェントを介してデスクトップのチャートを操作 |
| tollbooth-web | 運営者向けフロントエンド共通のブラウザー SDK |
| tollbooth-shortlinks(このリポジトリ) | コミュニティユーティリティ — OAuth フロー用の一時的な短縮 URL |
| tollbooth-oauth2-collector | OAuth2 コールバックコレクター — ブラウザーでのトークン交換 |
| tollbooth-pricing-studio | iOS アプリ — 運営者ダッシュボードと料金モデルエディター |
ライセンス
Apache-2.0。詳細は LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。