Documentation API & MCP
Write-Like expose une API REST et un serveur MCP pour générer des posts LinkedIn dans le style d'un auteur, depuis tes propres outils (scripts, n8n, agents IA).
Authentification
Chaque requête doit inclure une clé API dans l'en-tête Authorization. Génère et gère tes clés depuis la page Clés API. Une clé n'est affichée qu'une seule fois à sa création — conserve-la en lieu sûr.
Authorization: Bearer wl_live_xxxxxxxxxxxxxxxxxxxxxxxxUne requête sans clé valide renvoie 401 Unauthorized. Les données sont isolées par compte : tu n'accèdes qu'à tes propres auteurs et générations.
URL de base & format
Toutes les routes sont préfixées par /api/v1. Les corps de requête et de réponse sont en JSON (Content-Type: application/json).
https://writelike.bifurque.online/api/v1Endpoints
Le pipeline se fait en deux temps : on génère des propositions (3 plans + 3 accroches), puis on rédige le brouillon à partir d'une sélection. L'endpoint /posts fait les deux en un appel.
/api/v1/authorscurl -H "Authorization: Bearer $KEY" \
https://writelike.bifurque.online/api/v1/authors
# Réponse
{
"authors": [
{ "id": "uuid", "name": "...", "headline": "...",
"profile_image_url": "...", "last_scraped_at": "..." }
]
}/api/v1/generationscurl -X POST -H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"authorId":"uuid","topic":"L IA et le travail"}' \
https://writelike.bifurque.online/api/v1/generations
# Réponse
{
"id": "generationId",
"proposals": {
"plans": [{ "title": "...", "outline": ["...", "..."] }],
"hooks": [{ "text": "...", "style": "stat|choc|histoire" }]
}
}/api/v1/generations/{id}/draftcurl -X POST -H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"selectedPlan":0,"selectedHook":1}' \
https://writelike.bifurque.online/api/v1/generations/<id>/draft
# Réponse
{ "id": "generationId", "content": "Texte du post LinkedIn..." }/api/v1/postsselectedPlan et selectedHook sont optionnels (défaut 0).curl -X POST -H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"authorId":"uuid","topic":"Mon sujet"}' \
https://writelike.bifurque.online/api/v1/posts
# Réponse
{ "generationId": "...", "proposals": { ... }, "content": "..." }/api/v1/generations?limit=20limit : 1 à 100, défaut 20).curl -H "Authorization: Bearer $KEY" \
"https://writelike.bifurque.online/api/v1/generations?limit=20"/api/v1/generations/{id}curl -H "Authorization: Bearer $KEY" \
https://writelike.bifurque.online/api/v1/generations/<id>Note : l'ajout d'un auteur (scraping LinkedIn) se fait uniquement depuis l'interface web, pas via l'API.
Erreurs
Les erreurs renvoient un JSON { "error": "message" } avec le code HTTP correspondant.
| Code | Signification |
|---|---|
400 | Paramètres manquants ou invalides |
401 | Clé API absente, invalide ou révoquée |
404 | Ressource introuvable (auteur, génération) |
500 | Erreur interne (ex. génération échouée) |
Serveur MCP
Write-Like fournit un serveur MCP (stdio) qui expose les mêmes capacités sous forme d'outils, utilisables depuis Claude Desktop, Claude Code ou tout client MCP.
Installation
cd write-like/mcp
npm install
npm run buildConfiguration
Récupère une clé sur la page Clés API, puis ajoute le serveur à la config de ton client (.mcp.json ou claude_desktop_config.json) :
{
"mcpServers": {
"write-like": {
"command": "node",
"args": ["/chemin/absolu/vers/write-like/mcp/dist/index.js"],
"env": {
"WRITELIKE_API_KEY": "wl_live_xxx",
"WRITELIKE_API_URL": "https://writelike.bifurque.online"
}
}
}
}Outils disponibles
list_authors— liste tes auteursgenerate_proposals(authorId, topic)— 3 plans + 3 accrocheswrite_draft(generationId, selectedPlan, selectedHook)— brouillon depuis une sélectionwrite_post(authorId, topic)— one-shotlist_generations(limit?)— historiqueget_generation(id)— détail d'une génération