mcp-supertoinette
mcp-supertoinette
Lee recetas de Supertoinette desde un cliente MCP: buscarlas, leer una, reescalarla para otro número de personas, navegar por las categorías y consultar los maridajes de vino.
Solo lectura. Sin clave de API, sin cuenta.
Instalación
claude mcp add supertoinette -- npx -y mcp-supertoinetteO en la configuración de cualquier cliente MCP:
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": ["-y", "mcp-supertoinette"]
}
}
}Con Docker:
docker build -t mcp-supertoinette .
docker run -i --rm mcp-supertoinetteEl contenedor solo necesita poder acceder a www.supertoinette.com.
Related MCP server: spoonacular-mcp
Herramientas
Tool | Propósito |
| Encontrar recetas por plato o ingrediente |
| Leer una receta, reescalada a petición |
| Las categorías por las que se navegan las recetas |
| Las recetas de una categoría |
| Cinco vinos para un plato, o el índice de platos |
| Reescalar cualquier lista de ingredientes francesa, sin conexión |
Una receta se identifica por el número de su dirección: 4210 en /recette/4210/veloute-de-gaverole.html. search_recipes y browse_recipes devuelven ese número en cada fila.
search_recipes
Argumento | Tipo | Por defecto | Notas |
| cadena | obligatorio | Un plato o un ingrediente, en francés |
| entero | 20 | 1 a 39 |
| entero | 1 | 1 a 1000 |
| cadena | — | Una etiqueta de faceta, como |
{
"query": "cabillaud",
"page": 1,
"last_page": 2,
"results": [
{
"id": "702",
"title": "Cabillaud aux champignons",
"url": "https://www.supertoinette.com/recette/702/cabillaud-aux-champignons.html",
"image_url": "https://recette.supertoinette.com/new/…-800.webp",
"categories": ["Sauces", "Poissons"]
}
],
"result_count": 20,
"rows_published": 39,
"total_available": null,
"facets": [{ "label": "Poissons", "count": 60 }]
}category toma una de las etiquetas de facets, escrita tal como se devolvió. Una etiqueta desconocida no encuentra nada, así que el filtro se descarta, la búsqueda se repite sin él y una nota indica qué etiqueta se fue. total_available es siempre null, ya que Supertoinette no publica ningún total; usa last_page. Los contadores de facetas se solapan, por lo que suman más que las filas servidas. Una búsqueda mezcla recetas con las selecciones editoriales del propio sitio; las selecciones se eliminan, por eso result_count puede quedarse corto respecto a limit.
get_recipe
Argumento | Tipo | Por defecto | Notas |
| cadena | obligatorio | El número de la dirección |
| entero | — | 1 a 1000 |
{
"id": "4210",
"title": "Velouté de gaverole au pravin",
"url": "https://www.supertoinette.com/recette/4210/veloute-de-gaverole.html",
"yield": { "original_text": "6 personnes", "requested": 4, "factor": 0.6667 },
"ingredients": [
{
"text": "533 g de tiges de gaverole",
"original": "800 g de tiges de gaverole",
"scaling": "scaled",
"amount": 533,
"unit": "g",
"is_heading": false
}
],
"steps": ["Émincer les tiges de gaverole."],
"prep_minutes": 15,
"cook_minutes": 25,
"rest_minutes": 30,
"total_minutes": 70,
"difficulty": { "label": "Recette facile" },
"cost_level": { "label": "Economique", "level": 1, "scale": 3 },
"rating": { "value": 4.2, "count": 9, "scale": 5 },
"tags": [{ "label": "Soupes & potages", "category": "91/recettes-soupes-potages" }],
"faq": []
}Los tiempos están en minutos, y valen null cuando Supertoinette no publica ningún valor. difficulty tiene una etiqueta y ninguna escala, porque el sitio no publica ninguna escala para ella; cost_level tiene una, porque el sitio la dibuja. ingredient_sheets contiene los enlaces del propio sitio, y aproximadamente uno de cada veinte apunta a un ingrediente distinto del de la línea que lo acompaña.
Pedir servings en una receta cuyo rendimiento no contiene ningún número — «para un gran plato» — devuelve invalid_input. Pedir el id de una página de categoría devuelve parse_failure.
list_categories y browse_recipes
list_categories no toma ningún argumento y devuelve las cuarenta categorías que Supertoinette lista en sus páginas:
{
"categories": [
{
"label": "Soupes & potages",
"category": "91/recettes-soupes-potages",
"url": "https://www.supertoinette.com/recettes/91/recettes-soupes-potages",
"listed_in": "footer"
}
],
"category_count": 40
}listed_in es footer para los tipos de plato y menu para las formas de cocinar y las estaciones. Los tags de una receta abren cientos de categorías adicionales que ninguna de las dos listas contiene.
browse_recipes lee una de ellas:
Argumento | Tipo | Por defecto | Notas |
| cadena | obligatorio | Un token, como |
| entero | 20 | 1 a 30 |
| entero | 1 | 1 a 1000 |
El token es un número y un nombre juntos. Tómalo de list_categories o de los tags de una receta, y pásalo de vuelta sin cambios: cualquier otra forma de escribir el nombre llega a una página que no existe. Cada fila añade difficulty y total_minutes a lo que contiene una fila de búsqueda.
La
categorydesearch_recipesy lacategorydebrowse_recipesson cosas distintas. La primera es una etiqueta de faceta (Poissons), la segunda es un token (95/recettes-poissons).
Una página más allá de la última vuelve sin filas y sin error; compara page con last_page.
get_wine_pairings
Proporciona id para un plato, o page para el índice alfabético de platos. kind indica cuál de los dos se devolvió, y el otro campo es null.
Argumento | Tipo | Notas |
| cadena | El número en la dirección de un plato |
| entero | 1 a 100, para el índice |
{
"kind": "dish",
"dish": {
"dish": "Aligot",
"style": "Un vin blanc sec assez puissant, fin et très légèrement boisé",
"pairings": [
{ "rank": "Bon accord", "wine": "Premières côtes de bordeaux" },
{ "rank": "Accord parfait", "wine": "Mâcon blanc" }
],
"recipes": [{ "id": "1081", "title": "Aligot" }]
},
"index": null
}Los cinco rangos son las palabras propias de Supertoinette, en su propio orden.
scale_ingredients
Reescala cualquier lista de ingredientes francesa sin tocar la red.
Argumento | Tipo | Notas |
| cadena[] | 1 a 200 líneas |
| número | Mayor que 0, hasta 100 |
| entero | 1 a 1000, en lugar de |
Cada línea vuelve marcada. scaled es aritmética exacta. rounded se movió a una cantidad que una cocina puede medir, con una note que indica la cifra exacta de la que partió. unscaled no tenía ninguna cantidad que multiplicar. Las unidades se mantienen en el sistema que usó la receta, y una medida aproximada conserva su propio tamaño: cuatro veces una pizca son cuatro pizcas.
get_recipe aplica las mismas reglas cuando se le da servings.
Ajustes
Variables de entorno, todas opcionales. Un valor fuera de su rango se rechaza en stderr y se aplica el valor por defecto.
Variable | Por defecto | Rango |
| — | Tu identificador, antepuesto al de este proyecto |
| 3000 | 3000 a 60000 |
| 20000 | 1000 a 120000 |
| 3 | 0 a 8 |
| 900000 | 0 a 86400000, 0 desactiva la caché |
| 200 | 1 a 5000 |
|
|
|
Una petición a la vez. STO_MIN_INTERVAL_MS aumenta el intervalo entre dos de ellas por encima de su mínimo de 3000 ms, y ningún ajuste lo reduce.
Errores
Código | Significado |
| Nada en esa dirección |
| Los argumentos no pudieron generar una petición |
| El sitio pidió ir más despacio; reintenta en un momento |
| La página llegó con una forma que este servidor no puede leer |
| La petición falló |
| Sin respuesta dentro del plazo |
Cada mensaje empieza con su código entre corchetes.
Como librería
La capa de lectura se distribuye por sí sola, con su ritmo, su caché y su gestión de errores:
import { SupertoinetteClient } from "mcp-supertoinette/client";Las cantidades se devuelven tal como las publicó Supertoinette; el reescalado vive en las herramientas de arriba.
Atribución
Las recetas, los títulos y las fotografías pertenecen a Supertoinette. Acredita al sitio y enlaza la página cuando muestres una receta.
Contribuir
Consulta CONTRIBUTING.md. Licenciado bajo MIT.
mcp-supertoinette (español)
Leer las recetas de Supertoinette desde un cliente MCP: buscarlas, leer una, reescalarla para otro número de personas, recorrer las categorías, consultar los maridajes de vino.
Solo lectura. Sin clave de API, sin cuenta.
Instalación
claude mcp add supertoinette -- npx -y mcp-supertoinetteO en la configuración de cualquier cliente MCP:
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": ["-y", "mcp-supertoinette"]
}
}
}Con Docker:
docker build -t mcp-supertoinette .
docker run -i --rm mcp-supertoinetteEl contenedor solo necesita poder acceder a www.supertoinette.com.
Las herramientas
Herramienta | Función |
| Buscar recetas por plato o por ingrediente |
| Leer una receta, reescalada a petición |
| Las categorías por las que recorrer las recetas |
| Las recetas de una categoría |
| Cin |
Argumento | Tipo | Por defecto | Notas |
| cadena | obligatorio | Un token, como |
| entero | 20 | 1 a 30 |
| entero | 1 | 1 a 1000 |
El token es un número y un nombre juntos. Tómelo de list_categories o de los tags de una receta y páselo sin cambios: cualquier otra forma de escribir el nombre da con una página inexistente. Cada línea añade difficulty y total_minutes a lo que lleva una línea de búsqueda.
El
categorydesearch_recipesy el debrowse_recipesson dos cosas diferentes. El primero es una etiqueta de faceta (Poissons), el segundo un token (95/recettes-poissons).
Una página más allá de la última se devuelve sin filas y sin error; compare page y last_page.
get_wine_pairings
Proporcione id para un plato, o page para el índice alfabético de los platos. kind indica cuál de las dos respuestas llega, siendo el otro campo null.
Argumento | Tipo | Notas |
| cadena | El número de la dirección de un plato |
| entero | 1 a 100, para el índice |
Los cinco rangos son los de Supertoinette, en su orden.
scale_ingredients
Reescala una lista de ingredientes francesa sin tocar la red.
Argumento | Tipo | Notas |
| cadena[] | 1 a 200 líneas |
| número | Por encima de 0, hasta 100 |
| entero | 1 a 1000, en lugar de |
Cada línea vuelve marcada. scaled para un cálculo exacto. rounded para un valor reducido a una cantidad medible en cocina, con una note que indica la cifra exacta de la que se ha movido. unscaled para una línea sin cantidad que multiplicar. Las unidades permanecen en el sistema de la receta, y una medida aproximada conserva su tamaño: cuatro veces una pizca son cuatro pizcas.
get_recipe aplica las mismas reglas cuando se le da servings.
Ajustes
Variables de entorno, todas opcionales. Un valor fuera de los límites se rechaza en stderr y se aplica el valor por defecto.
Variable | Por defecto | Límites |
| — | Su identificador, colocado delante del del proyecto |
| 3000 | 3000 a 60000 |
| 20000 | 1000 a 120000 |
| 3 | 0 a 8 |
| 900000 | 0 a 86400000, 0 desactiva la caché |
| 200 | 1 a 5000 |
|
|
|
Una solicitud a la vez. STO_MIN_INTERVAL_MS alarga el intervalo entre dos de ellas más allá de su mínimo de 3000 ms, y ningún ajuste lo reduce.
Errores
Código | Significado |
| Nada en esta dirección |
| Los argumentos no podían producir una solicitud |
| El sitio ha pedido que se vaya más despacio; inténtelo de nuevo en un momento |
| La página llegó en una forma ilegible para este servidor |
| La solicitud ha fallado |
| Ninguna respuesta dentro del plazo |
Cada mensaje comienza con su código entre corchetes.
Como biblioteca
La capa de lectura se publica sola, con su ritmo, su caché y su gestión de errores:
import { SupertoinetteClient } from "mcp-supertoinette/client";Las cantidades se devuelven tal como las publica Supertoinette; el reescalado reside en las herramientas de arriba.
Atribución
Las recetas, los títulos y las fotografías pertenecen a Supertoinette. Acredite el sitio y enlace la página cuando muestre una receta.
Contribuir
Ver CONTRIBUTING.md. Bajo licencia MIT.
Maintenance
Related MCP Servers
- FlicenseCqualityDmaintenanceEnables management of culinary recipes through web scraping from sites like Marmiton.org, recipe generation, ingredient management, and querying a MongoDB database of recipes, comments, users, and utensils.18
- AlicenseBqualityDmaintenanceEnables AI assistants to search for recipes, get nutritional information, find ingredients, and more through the Spoonacular Food API using natural language.6155ISC
- AlicenseAqualityBmaintenanceMCP server that searches French recipes from Marmiton, reads ingredients and steps, and rescales quantities to any number of servings without requiring an API key.632,395MIT
- AlicenseAqualityBmaintenanceSearch and read recipes from the English Wikibooks Cookbook, with tools to rescale ingredient lists to a target number of servings.4117MIT
Related MCP Connectors
Spoonacular food API: recipes, nutrition, ingredients, meal plans. Free 150/day.
Recipes MCP — wraps TheMealDB API (free tier, no auth)
Clean product data from any URL. Schema.org + AI extraction. 200 free calls/month.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/smeet666/mcp-supertoinette'
If you have feedback or need assistance with the MCP directory API, please join our Discord server