Utilities
Una sola pasada sustituye al trío bit.ly + Campaign Builder + generador de QR: introduces la URL de destino y los parámetros UTM (trío obligatorio de GA4 validado, normalización a minúsculas opcional) y obtienes la URL completa con seguimiento; un slug base62 determinista (hash FNV-1a, misma entrada → mismo slug, sin cuentas ni red) sobre tu dominio corto; dos códigos QR en PNG (enlace corto y completo); y listos los ajustes de redirección nginx / vercel.json / Netlify y la fila CSV de seguimiento de campañas.
Llama a esta herramienta desde tu código en tres lenguajes.
curl -X POST 'http://127.0.0.1:3003/es/api/tools/short-url-utm-builder-qr-bundle' \
-H 'Content-Type: application/json' \
-d '{"destinationUrl":"acme.dev/pricing","utmSource":"newsletter","utmMedium":"email","utmCampaign":"spring-launch-2026","utmContent":"hero-cta","utmTerm":"","utmId":"","lowercaseUtm":true,"shortDomain":"go.acme.dev","customSlug":"","qrEcc":"M","qrSize":480}'Envía una petición POST con tus entradas en JSON. Los parámetros de tipo archivo requieren una subida previa.
POST http://127.0.0.1:3003/es/api/tools/short-url-utm-builder-qr-bundle| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| destinationUrl | text | Sí | — |
| utmSource | text | Sí | — |
| utmMedium | text | Sí | — |
| utmCampaign | text | Sí | — |
| utmContent | text | No | — |
| utmTerm |
Añade esta herramienta a tu servidor Model Context Protocol para que los agentes de IA puedan listarla y llamarla.
Añade este bloque a la configuración de tu cliente MCP:
{
"mcpServers": {
"elysiatools-short-url-utm-builder-qr-bundle": {
"name": "short-url-utm-builder-qr-bundle",
"description": "Una sola pasada sustituye al trío bit.ly + Campaign Builder + generador de QR: introduces la URL de destino y los parámetros UTM (trío obligatorio de GA4 validado, normalización a minúsculas opcional) y obtienes la URL completa con seguimiento; un slug base62 determinista (hash FNV-1a, misma entrada → mismo slug, sin cuentas ni red) sobre tu dominio corto; dos códigos QR en PNG (enlace corto y completo); y listos los ajustes de redirección nginx / vercel.json / Netlify y la fila CSV de seguimiento de campañas.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=short-url-utm-builder-qr-bundle",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}Tras conectar al endpoint SSE, lista las herramientas expuestas:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoca la herramienta por su id; los argumentos se construyen a partir de sus parámetros:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "short-url-utm-builder-qr-bundle",
"arguments": {
"destinationUrl": "acme.dev/pricing",
"utmSource": "newsletter",
"utmMedium": "email",
"utmCampaign": "spring-launch-2026",
"utmContent": "hero-cta",
"utmTerm": "",
"utmId": "",
"lowercaseUtm": true,
"shortDomain": "go.acme.dev",
"customSlug": "",
"qrEcc": "M",
"qrSize": 480
}
}
}| text |
| No |
| — |
| utmId | text | No | — |
| lowercaseUtm | checkbox | No | — |
| shortDomain | text | No | — |
| customSlug | text | No | — |
| qrEcc | select | No | — |
| qrSize | number | No | — |
Resultado HTML
{
"result": "<div>Processed HTML content</div>",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}¿Dudas o problemas? Contacta con [email protected]