url-metadata-api
URL Metadata API
Dada una URL, devuelve title/description/image/site_name extraídos de sus etiquetas OpenGraph/meta (API de vista previa de enlaces estilo Microlink). Candidato NEXUS #4 -- construcción manual, no generada por FORGE.
POST /extract {"url": "..."}-- cobrado $0.01 vía x402 (testnet Base Sepolia).Herramienta MCP
extract_url_metadataen/mcp-- actualmente gratis, ver "Limitaciones conocidas".GET /health,GET /.well-known/agent-card.json,GET /openapi.json(tienex-payment-info).
Destino de despliegue: Cloud Run, no Railway
Construido a partir de products/mcp-boilerplate-gumroad/template/ (mismo patrón MCP+x402+FastAPI que similarity-search-api/ws), adaptado para Cloud Run en lugar de Railway. Consulta skills/infra-deploy-ops para el pipeline de despliegue reutilizable (scripts/deploy_cloud_run.sh en la raíz del repositorio). Despliegue en dos pasos (misma trampa que documenta el README del boilerplate):
# 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
Limitaciones conocidas (dejadas sin corregir a propósito -- CLAUDE.md SS3, sin compuerta sin evidencia de que sea necesaria)
Las llamadas a herramientas MCP no se cobran.
PaymentMiddlewareASGIsolo protegePOST /extract; la herramienta MCP llama directamente a la función compartidaextract_metadata()en el mismo proceso (sin reentrada HTTP a la aplicación ASGI -- esa ruta de reentrada es la que causó el error real de "cada llamada MCP recibe un 402 espurio" documentado enskills/mcp-server-generation). Añadir una compuerta x402 nativa de MCP (el mecanismo de compuerta de pago propio dex402[...,mcp], igual que hace el generador de FORGE parasimilarity-search-api/ws) es trabajo real con una trampa real (inyección duplicada del parámetroctx, ver memoria) -- diferido hasta que este candidato muestre tráfico MCP real en la ventana de 7 días. Hasta entonces, este activo puede registrar volumen (traffic_events/mcp_call_events) pero no ingresos MCP.Sin límite de tasa por llamante. Aceptable para una medición desechable de 7 días; añádelo si sobrevive.
La protección SSRF se basa en rangos de IP, no en una lista blanca completa. Rechaza IPs de destino privadas/loopback/link-local/reservadas (incluida la IP de metadatos de nube
169.254.169.254) en la solicitud inicial y en cada salto de redirección seguido manualmente (máx. 3). No defiende contra el rebinding de DNS entre la comprobación y la conexión real (riesgo aceptado para el alcance de este candidato).
Medición (Parte 3 de la sesión de configuración)
Ventana de 7 días desde el primer despliegue real. Fuente de verdad: tablas traffic_events/revenue_events/mcp_call_events (asset_name = 'url-metadata-api'), no los registros de Cloud Run. Día 7: si hay cero tráfico real (filtrando rastreadores), pausa/elimina el servicio de Cloud Run (gcloud run services delete url-metadata-api --region us-central1 --project nexus-505016) y pasa al candidato #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.135,019 npm1MIT
- 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 gradedqualityDmaintenanceConverts 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