url-metadata-api
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@url-metadata-apiGet metadata for https://example.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
URL Metadata API
Given a URL, returns title/description/image/site_name scraped from its OpenGraph/meta tags
(Microlink-style link-preview API). NEXUS candidate #4 -- manual build, not FORGE-generated.
POST /extract {"url": "..."}-- charged $0.01 via x402 (Base Sepolia testnet).MCP tool
extract_url_metadataat/mcp-- currently free, see "Known limitations".GET /health,GET /.well-known/agent-card.json,GET /openapi.json(hasx-payment-info).
Deploy target: Cloud Run, not Railway
Built from products/mcp-boilerplate-gumroad/template/ (same MCP+x402+FastAPI pattern as
similarity-search-api/ws), adapted for Cloud Run instead of Railway. See
skills/infra-deploy-ops for the reusable deploy pipeline (scripts/deploy_cloud_run.sh at the repo
root). Two-step deploy (same gotcha the boilerplate README documents):
# 1. First deploy -- PUBLIC_DOMAIN not known yet, every real request 421s until step 2.
./scripts/deploy_cloud_run.sh url-metadata-api manual_assets/url-metadata-api
# 2. Grab the printed *.run.app URL, then:
gcloud run services update url-metadata-api --region us-central1 --project nexus-505016 \
--update-env-vars PUBLIC_DOMAIN=<the-real-domain>Related MCP server: mcp-pageshot
Known limitations (left unfixed on purpose -- CLAUDE.md SS3, no gate without evidence it's needed)
MCP tool calls are not charged.
PaymentMiddlewareASGIonly gatesPOST /extract; the MCP tool calls the sharedextract_metadata()function directly in-process (no HTTP re-entry into the ASGI app -- that re-entry path is what caused the real "every MCP call gets a spurious 402" bug documented inskills/mcp-server-generation). Adding a real MCP-native x402 gate (x402[...,mcp]'s own payment-gate mechanism, same as what FORGE's generator does forsimilarity-search-api/ws) is real work with a real footgun (duplicatectxparameter injection, see memory) -- deferred until this candidate shows real MCP traffic in the 7-day window. Until then this asset can log volume (traffic_events/mcp_call_events) but not MCP revenue.No per-caller rate limiting. Fine for a 7-day disposable measurement; add if it survives.
SSRF guard is IP-range based, not a full allowlist. Rejects private/loopback/link-local/reserved destination IPs (including cloud metadata's
169.254.169.254) on the initial request and on every manually-followed redirect hop (max 3). Does not defend against DNS rebinding between the check and the actual connect (accepted risk for this candidate's scope).
Measurement (Part 3 of the setup session)
7-day window from first real deploy. Source of truth: traffic_events/revenue_events/mcp_call_events
tables (asset_name = 'url-metadata-api'), not Cloud Run logs. Day 7: if zero real traffic (filtering
crawlers), pause/delete the Cloud Run service (gcloud run services delete url-metadata-api --region us-central1 --project nexus-505016) and move to candidate #3.
This server cannot be deployed
Maintenance
Related MCP Connectors
Free URL metadata extraction API. Extract titles, descriptions, Open Graph tags, and favicons from any URL. No API keys required.
Zero-signup anonymous link-unfurl API. One GET returns clean JSON metadata for any public URL.
Link-preview metadata and clean page-to-Markdown for any public URL. No install.
Same link preview data as link-preview-api, ~1/3 the price via a shared cache.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceProvides functionality to fetch and transform web content in various formats (HTML, JSON, plain text, and Markdown) through simple API calls.50,2511MIT
- AlicenseNot gradedqualityDmaintenancePaste a URL to see exactly how it renders as a social card on Twitter, LinkedIn, Facebook, and Slack. Generate custom OG images from templates.MIT
- AlicenseNot gradedqualityCmaintenanceConverts any URL into clean, LLM-ready Markdown, text, or HTML with production-grade features like SSRF protection, rate limiting, retries, caching, and structured error handling.MIT
- AlicenseNot gradedqualityDmaintenanceZero-signup link-preview API that returns clean metadata (title, description, image, etc.) from any public URL. No API key required.2MIT