io.github.lonniev/tollbooth-shortlinks

السجل الرسمي أخرى

Ephemeral, human-friendly short URLs for Tollbooth MCP services

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

Remote (streamable-http)
Claude Code
claude mcp add --transport http tollbooth-shortlinks 'https://tollbooth-shortlinks.fastmcp.app/mcp'
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "tollbooth-shortlinks": {
            "type": "http",
            "url": "https://tollbooth-shortlinks.fastmcp.app/mcp"
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. Tollbooth Shortlinks
  2. Why This Exists
  3. How It Works
  4. Tools
  5. Install
  6. Run Locally
  7. Deploy to Horizon
  8. DPYC Identity
  9. Related Repos
  10. License

Don't Pester Your Customer™ (DPYC™) — Ephemeral, human-friendly short URLs for the Tollbooth ecosystem.

The metaphors in this project are drawn with admiration from The Phantom Tollbooth by Norton Juster, illustrated by Jules Feiffer (1961). Milo, Tock, the Tollbooth, Dictionopolis, and Digitopolis are creations of Mr. Juster's extraordinary imagination. We just built the payment infrastructure.


Why This Exists

OAuth Authorization URLs are long, ugly, and hostile to copy-paste:

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=...

Traditional link shorteners have become opinionated. They inject interstitial pages, track clicks, require accounts, gate features behind paywalls, or silently expire links on their own schedule. When an MCP server needs to hand a patron a one-time URL for an OAuth dance, none of that belongs in the path.

Tollbooth Shortlinks is a community utility with no monetization. It turns any URL into a memorable four-word phrase like brave-otter-finds-gold, stores the mapping in Neon Postgres, and expires it after 24 hours. A companion Val Town HTTP handler does the 302 redirect with zero interstitial.

How It Works

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      |

Tools

ToolDescription
create_shortlinkStore a URL, get back a memorable slug (or supply your own)
resolve_shortlinkLook up where a slug points without redirecting
delete_shortlinkRemove a shortlink before it expires
shortlink_statusHealth check showing active link count and TTL

All tools are free -- no credits, no npub, no Tollbooth ledger required.

Install

pip install -e ".[dev]"

Run Locally

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()"

The Val Town handler in val/redirect.js reads the same NEON_SHORTLINKS_URL.

Deploy to Horizon

The fastmcp.json at the repo root is ready for fastmcp deploy.

DPYC Identity

Tollbooth Shortlinks is registered as an Advocate in the DPYC Social Contract. Peer MCP servers discover its URL by asking the Oracle, and create_shortlink returns the full short_url, so a peer never needs the redirect host:

from tollbooth.oracle_client import default_oracle_client

svc = await default_oracle_client().resolve_service(name="tollbooth-shortlinks")
shortlinks_url = (svc or {}).get("url", "")

Operators built on tollbooth-dpyc get this for free: tollbooth.shortlinks.create_shortlink(url) does the lookup and the call, best-effort.

The Tollbooth DPYC™ ecosystem:

RepoRole
tollbooth-dpycThe wheel -- operator-side credit ledger, BTCPay client, tool gating, constraint engine
tollbooth-authorityThe institution -- fee collection, Schnorr signing, purchase certification
dpyc-oracleThe oracle -- Social Contract governance, membership, ban elections
dpyc-communityThe registry -- governance data, operator catalog, community rules
tollbooth-sampleReference operator -- weather API with full Tollbooth wiring
cypher-mcpMonetized graph answers -- named Cypher over Neo4j/AuraDB
schwab-mcpCharles Schwab brokerage MCP -- quotes, positions, orders and transaction history (read-only)
excalibur-mcpeXcalibur -- formatted posting to X (Twitter)
thebrain-mcpPersonal Brain MCP -- thought graphs, knowledge management
taxsort-mcpTax sorting and classification MCP
optionality-mcpOptions analytics MCP
goodearth-mcpGood Earth -- region-scoped farm climate analytics
beesknees-mcpThe Bee's Knees -- a monetized multiplayer race to the queen
roastify-mcpRoastify coffee catalog and packaging artwork
ChartRemotely-mcpChartRemotely -- drives a desktop chart through a paired agent
tollbooth-webShared browser SDK for operator front ends
tollbooth-shortlinks (this repo)Community utility -- ephemeral short URLs for OAuth flows
tollbooth-oauth2-collectorOAuth2 callback collector -- browser-based token exchange
tollbooth-pricing-studioiOS app -- operator dashboard and pricing model editor

License

Apache-2.0. See LICENSE for details.

الأسئلة الشائعة

ما هو io.github.lonniev/tollbooth-shortlinks؟

Ephemeral, human-friendly short URLs for Tollbooth MCP services

كيف أثبّت io.github.lonniev/tollbooth-shortlinks؟

يعمل كخادم بعيد. في Claude Code: claude mcp add --transport http tollbooth-shortlinks 'https://tollbooth-shortlinks.fastmcp.app/mcp'. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج io.github.lonniev/tollbooth-shortlinks إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل io.github.lonniev/tollbooth-shortlinks مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص Apache-2.0.

من يصون io.github.lonniev/tollbooth-shortlinks؟

ينشره lonniev. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.