MCP Devis
Calculate French quote totals and VAT, list legal mentions, and render printable HTML quotes.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen create_quote
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp-devis": {
"url": "https://mcp-devis.custom-digital-services.com/mcp"
}
}
}Puntos de conexión remotos
https://mcp-devis.custom-digital-services.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟡create_quote(company, client, lines, quote)
Calcule les totaux (HT, TVA par taux, TTC) d'un devis français, applique la franchise en base de TVA (art. 293 B du CGI) si demandée, et signale par des avertissements les mentions obligatoires manquantes (jamais d'invention de valeur).
Esquema de entrada
{
"type": "object",
"properties": {
"company": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"legal_form": {
"type": "string"
},
"address": {
"type": "string",
"minLength": 1
},
"siren": {
"type": "string",
"minLength": 1
},
"vat_number": {
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"phone": {
"type": "string"
},
"franchise_293b": {
"type": "boolean",
"default": false
}
},
"required": [
"name",
"address",
"siren"
],
"additionalProperties": false
},
"client": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"address": {
"type": "string",
"minLength": 1
},
"email": {
"type": "string",
"format": "email"
}
},
"required": [
"name",
"address"
],
"additionalProperties": false
},
"lines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"type": "string",
"minLength": 1
},
"quantity": {
"type": "number",
"exclusiveMinimum": 0
},
"unit_price_ht": {
"type": "number",
"minimum": 0
},
"vat_rate": {
"type": "number",
"minimum": 0,
"maximum": 100
}
},
"required": [
"description",
"quantity",
"unit_price_ht",
"vat_rate"
],
"additionalProperties": false
},
"minItems": 1
},
"quote": {
"type": "object",
"properties": {
"number": {
"type": "string",
"minLength": 1
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"validity_days": {
"type": "integer",
"exclusiveMinimum": 0
},
"payment_terms": {
"type": "string"
},
"notes": {
"type": "string"
}
},
"additionalProperties": false
}
},
"required": [
"company",
"client",
"lines"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_legal_mentions(franchise_293b)
Retourne la liste des mentions obligatoires d'un devis professionnel français, avec leurs sources officielles (service-public.gouv.fr, economie.gouv.fr, autoentrepreneurs.org pour la franchise en base de TVA).
Esquema de entrada
{
"type": "object",
"properties": {
"franchise_293b": {
"type": "boolean"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡render_quote_html(company, client, lines, quote, template, ...)
Génère un devis HTML A4 autonome et imprimable, dans l'un des 4 modèles (classique, moderne, bandeau, minimal), avec les mêmes calculs et mentions légales que create_quote.
Esquema de entrada
{
"type": "object",
"properties": {
"company": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"legal_form": {
"type": "string"
},
"address": {
"type": "string",
"minLength": 1
},
"siren": {
"type": "string",
"minLength": 1
},
"vat_number": {
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"phone": {
"type": "string"
},
"franchise_293b": {
"type": "boolean",
"default": false
}
},
"required": [
"name",
"address",
"siren"
],
"additionalProperties": false
},
"client": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"address": {
"type": "string",
"minLength": 1
},
"email": {
"type": "string",
"format": "email"
}
},
"required": [
"name",
"address"
],
"additionalProperties": false
},
"lines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"type": "string",
"minLength": 1
},
"quantity": {
"type": "number",
"exclusiveMinimum": 0
},
"unit_price_ht": {
"type": "number",
"minimum": 0
},
"vat_rate": {
"type": "number",
"minimum": 0,
"maximum": 100
}
},
"required": [
"description",
"quantity",
"unit_price_ht",
"vat_rate"
],
"additionalProperties": false
},
"minItems": 1
},
"quote": {
"type": "object",
"properties": {
"number": {
"type": "string",
"minLength": 1
},
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"validity_days": {
"type": "integer",
"exclusiveMinimum": 0
},
"payment_terms": {
"type": "string"
},
"notes": {
"type": "string"
}
},
"additionalProperties": false
},
"template": {
"type": "string",
"enum": [
"classique",
"moderne",
"bandeau",
"minimal"
],
"default": "classique"
},
"accent_color": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
}
},
"required": [
"company",
"client",
"lines"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Comunidad
Evidencia