Convertissez vos documents instantanément avec style.
Installez le serveur MCP pour utiliser md2pdf directement dans Cursor (IA)
Instructions : Téléchargez le script adapté à votre système, puis exécutez-le dans un terminal pour installer automatiquement le serveur MCP et configurer Cursor.
POST /convert
| Paramètre | Type | Requis | Description |
|---|---|---|---|
markdown |
string | ✅ Oui | Contenu Markdown à convertir en PDF |
template |
string | ❌ Non | Template à utiliser : base (défaut: base) |
style |
string | ❌ Non | Style à utiliser : default, modern ou classic (défaut: default) |
cover |
boolean | ❌ Non | Inclure une page de garde (défaut: false) |
sommaire |
boolean | ❌ Non | Inclure un sommaire automatique (défaut: false) |
glossaire |
boolean | ❌ Non | Inclure un glossaire (défaut: false) |
glossaire_data |
array | ❌ Non | Données du glossaire au format {"terme": "définition"} |
pictures |
array (files) | ❌ Non | Images à uploader. Référencez-les dans le markdown avec @image:nom_fichier.png |
En cas de succès : Retourne un fichier PDF avec le header Content-Type: application/pdf
En cas d'erreur : Retourne un JSON avec le format suivant :
{
"error": "PDF Generation Failed",
"message": "Description de l'erreur"
}
# Sans images
curl -X POST http://127.0.0.1:8000/convert \
-H "Content-Type: application/json" \
-d '{
"markdown": "# Titre\\n\\nContenu du document",
"template": "base",
"style": "default",
"cover": true,
"sommaire": true,
"glossaire": false
}' \
--output document.pdf
# Avec images
curl -X POST http://127.0.0.1:8000/convert \
-F "markdown=# Titre\\n\\n" \
-F "pictures[]=@mon-image.png" \
-F "template=base" \
-F "style=default" \
-F "cover=true" \
--output document.pdf
fetch('/convert', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
markdown: '# Titre\\n\\nContenu du document',
template: 'modern',
style: 'default',
cover: true,
sommaire: true,
glossaire: false
})
})
.then(response => response.blob())
.then(blob => {
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'document.pdf';
a.click();
});
import requests
response = requests.post('http://127.0.0.1:8000/convert', json={
'markdown': '# Titre\\n\\nContenu du document',
'template': 'base',
'style': 'default',
'cover': True,
'sommaire': True,
'glossaire': False
})
if response.status_code == 200:
with open('document.pdf', 'wb') as f:
f.write(response.content)
else:
print(response.json())
Vous pouvez inclure des métadonnées dans le markdown avec le format suivant :
@title: Mon Document
@author: Nom de l'auteur
@version: 1.0
@date_creation: 2024-01-01
# Contenu du document
...