accueil / serveurs / Dev & Code / ai.unulu/unulu
ai.unulu/unulu
serveur MCP (Model Context Protocol) · unulu 1.0.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que ai.unulu/unulu est sûr ?
Au dernier audit MCP Hub, le serveur MCP « ai.unulu/unulu » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 4 outils
- unulu_check_handle≈ 190 tokens
Check whether a handle is available on unu.lu (not other platforms like Instagram, TikTok, etc.). For example, checking 'joe' tells you if joe.unu.lu is available for claiming. Use this to help users choose a handle before they visit the claim page.
Paramètres, retour & exemple (1)
Paramètreshandle· string · requis
The handle to check (3-30 chars, alphanumeric + hyphens)
Exemple d'appel{"name": "unulu_check_handle", "arguments": {"handle": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"handle": "texte", "available": true}} - unulu_create_site≈ 1182 tokens
Create a link-in-bio site with a name, bio, and links. Returns a live URL on unu.lu that expires in 1 hour unless claimed. Do NOT call until you have at least a name and one link from the user — gather real content first, never create with placeholder or empty content. If the user provides a handle (e.g. '_guy.a' for Instagram), construct the full URL yourself — do not ask them to paste it. When feasible, offer to find all public links for the person. Before calling: tell the user they can choose a skin on the preview page for the overall aesthetic; ask permission before adding emoji leading_icons to decorate links (for not-well-known social URLs). The response includes an assistant_message with the site URL and claim details — present these to the user. Persist claim_token and claim_code_short for subsequent updates — never ask the user for them back in the same conversation. Never create a duplicate site; always update the existing one. After creation: tell the user they can pick a custom handle when they claim; share the preview URL in a copy-paste block; offer to refine bio, links, or ordering. Keep iteration fast — apply changes immediately, don't re-confirm minor edits.
Paramètres, retour & exemple (4)
Paramètresbio· string · optionnel
Short bio in first person, 1–3 sentences, capturing what's distinctive — no filler phrases like 'passionate about' or 'dedicated to'. If you lack context, write something short and honest rather than generic. Supports markdown.name· string · requis
Display name / heading for the sitelinks· array · optionnel
Link-in-bio links. Order matters — place the most important link first. Well-known social links display branded icons automatically — omit leading_icon for these.skin_id· string · optionnel · editorial-minimal | midnight-gradient | soft-pastel-craft | neo-brutal-poster | liquid-glass | carbon-folio | concrete-grid | signal-noir
Optional theme skin. When omitted, the live site includes a visual theme chooser — prefer omitting so the user can pick their own.
Exemple d'appel{"name": "unulu_create_site", "arguments": {"name": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"url": "texte", "site_id": "texte", "expires_at": "texte", "claim_token": "texte", "claim_code_short": "texte", "assistant_message": "texte"}} - unulu_get_state≈ 449 tokens
Returns the current state of a site including its name, bio, links, and URL. No authentication required. If expires_at is absent, the site has been claimed and is permanent. Accepts a site ID, a full URL (e.g. https://abc123.unu.lu), or a bare hostname (e.g. abc123.unu.lu).
Paramètres, retour & exemple (1)
Paramètressite_id· string · requis
Site ID, full URL (e.g. https://abc123.unu.lu), or bare hostname (e.g. abc123.unu.lu)
Exemple d'appel{"name": "unulu_get_state", "arguments": {"site_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"bio": "texte", "url": "texte", "name": "texte", "links": [], "site_id": "texte", "skin_id": "editorial-minimal", "expires_at": "texte"}} - unulu_update_site≈ 1292 tokens
Update an existing site. All fields are optional — only provided fields are changed. Links replace the entire array (omit to keep existing). Before updating, always call unulu_get_state first to read the current links and their ids — do not guess link ids. Authorization depends on site lifecycle: X-Claim-Token header for ephemeral (pre-claim) sites, X-Edit-Token header for claimed (post-claim) sites. If neither token is available and the site is claimed, use requestEditAccess to obtain an edit_token. If you created the site in this conversation, you already have the claim_token — use it directly. Returns the full updated site state. Keep iteration fast — apply changes immediately without re-confirming minor edits unless ambiguous. Accepts a site ID, a full URL (e.g. https://abc123.unu.lu), or a bare hostname (e.g. abc123.unu.lu).
Paramètres, retour & exemple (8)
Paramètresbio· string · optionnel
Short bio in first person, 1–3 sentences, capturing what's distinctive — no filler phrases like 'passionate about' or 'dedicated to'. If you lack context, write something short and honest rather than generic. Supports markdown.name· string · optionnel
Display name / heading for the sitelinks· array · optionnel
Replaces all links — omit to keep existing links unchanged. Order matters — place the most important link first. Well-known social links display branded icons automatically — omit leading_icon for these.site_id· string · requis
Site ID, full URL (e.g. https://abc123.unu.lu), or bare hostname (e.g. abc123.unu.lu)skin_id· string · optionnel · editorial-minimal | midnight-gradient | soft-pastel-craft | neo-brutal-poster | liquid-glass | carbon-folio | concrete-grid | signal-noir
Optional theme skin. When omitted, the live site includes a visual theme chooser — prefer omitting so the user can pick their own.claim_url· string · optionnel
Legacy parameter — accepts a full Claim URL from older create-site responses. The server extracts the claim_token automatically. Prefer claim_token directly.edit_token· string · optionnel
JWT token for claimed sites (alternative to X-Edit-Token header)claim_token· string · optionnel
HMAC token for ephemeral sites (alternative to X-Claim-Token header)
Exemple d'appel{"name": "unulu_update_site", "arguments": {"site_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"bio": "texte", "url": "texte", "name": "texte", "links": [], "site_id": "texte", "skin_id": "editorial-minimal", "expires_at": "texte"}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».