mcp-supertoinette
mcp-supertoinette
Supertoinette のレシピを読む MCP サーバーです。読取リ専用で、API キーもアカウントも不要です。
存在理由
Supertoinette は 2002 年からフランス語のレシピを公開しており、レシピページは、その構造化ブロックが示す以上のことを伝えます。難易度、費用、休止時間は、調理者が読むために印字されている一方で、機械可読な部分にはどこにも存在しません。一方、構造化ブロックは3つの誤ったことを述べています。すべてのレシピの最後の手順を繰り返し、ペーが決して表示しない時間をゼロと書、一覧ペーではカテゴリをレシピと呼びます。
どちらか一方だけを参照する読者は、ペーが表示する情報を失うか、ブロックが誤って述べることを繰り返すことになります。このサーバーは両方を読、ペーの情報に基づいて判断します。
Related MCP server: spoonacular-mcp
ツール
get_recipe
アドレス内の番号で 1 件のレシピを読取ります。/recette/4210/veloute-de-gavérole.html の 4210 がそれです。サイトは名前のどんなどんな綴りでも正しいペーへリダイレクトするため、アドレスの全体がこの番号になります。
引数 | 型 | 意味 |
| 文字列 | レシピのアドレス内の番号 |
| 整数(任意) | 分量をこの人数に再計算する |
{
"id": "4210",
"title": "Velouté de gaverole au pravin",
"title_as_published": "🥣Velouté de gaverole au pravin",
"url": "https://www.supertoinette.com/recette/4210/veloute-de-gaverole.html",
"yield": {
"original_count": 6,
"original_text": "6 personnes",
"requested": 4,
"unit": "personnes",
"factor": 0.6667
},
"ingredients": [
{
"text": "533 g de tiges de gaverole",
"original": "800 g de tiges de gaverole",
"scaling": "scaled",
"amount": 533,
"amount_max": null,
"unit": "g",
"is_heading": false
}
],
"steps": ["Émincer les tiges de gaverole."],
"prep_minutes": 15,
"cook_minutes": 25,
"total_minutes": 70,
"rest_minutes": 30,
"difficulty": { "label": "Recette facile" },
"cost_level": { "label": "Economique", "level": 1, "scale": 3 },
"rating": { "value": 4.2, "count": 9, "scale": 5 },
"nutrition": null,
"tags": [
{
"label": "Soupes & potages",
"category": "91/recettes-soupes-potages",
"url": "https://www.supertoinette.com/recettes/91/recettes-soupes-potages"
}
],
"ingredient_sheets": [
{
"line": "de tiges de gaverole",
"sheet_id": "311",
"slug": "gaverole",
"url": "https://www.supertoinette.com/fiche-cuisine/311/gaverole.html"
}
],
"faq": [],
"source": "Supertoinette",
"notes": ["…"]
}scale_ingredients
呼び出し側がすでに保持しているリストを再計算します。オフラインで、どのサイトにもアクセスしません。
引数 | 型 | 意味 |
| 文字列[] | レシピが書いた通りの行 |
| 数値 | 掛ける値 |
{
"factor": 0.5,
"ingredients": [
{
"text": "2 oeufs",
"original": "3 oeufs",
"scaling": "rounded",
"amount": 2,
"amount_max": null,
"unit": null,
"is_heading": false,
"note": "Rounded up from 1,5."
}
],
"scaled_count": 0,
"rounded_count": 1,
"unscaled_count": 0,
"notes": ["…"]
}回答が過剰に主張しないこと
これらの各点は、サイトが実際に行っていることを、カタログ全体から選んだ 100 件のレシピで測定した結果に基づいています。
サイトが 2 回表示する手順は 1 回だけレンダリングされます。 すべてのレシピの構造化ブロックは最後の指示を繰り返します。手順は、ペーが表示するリストから読取られます。そこでは数が正しいのです。
サイトが公開しない時間は null であり、ゼロではありません。 ブロックは、ペーがバッジを表示しない時間について PT0M と書きます。測定した 100 件のレシピでは、この 2 つは完全に一致しました。したがって、調理時間が null ということは、料理が調理されていないのではなく、サイトが何も述べていないことを意味します。
休止時間は公開されており、しかもペー上だけです。 サイトはこれを Pause と表示し、測定したすべとのレシピで total = preparation + cooking + rest が成り立ちます。
難易度には尺度がありません。 サイトは文言を表示するだけで、その尺度が何段階あるかを述べることはありません。したがって、回答には文言だけが含まれます。費用には尺度が付いています。ペーがそれを描画するからです。3 段階中の 1 というレベルは、ペーが描画した記号のうち、点灯した記号の数です。
材料シートへのリんクはサイト自身のリんクです。 測定したコーパスでは、そんあリんク 770 件中 36 件が、行に記されたものとは異なる材料を名指すペーを指しています。「de crème」という行はパイナップルのペーへリんクしています。リんクは、材料の同一性としてではなく、サイト自身のリんクとして渡されます。
一覧ペーは、料理として読む取るのではなく拒否されます。 カテゴリのペーは、カテゴリ名と、そのカテゴリのレシピの 1 つから借りた画像を保持した、Recipe 型の構造化ブロックを公開します。そんあペーを要求すると parse_failure が返されます。
再計算された行は、何をされたかを示します。 scaled は、その数が積そのものであることを意味します。rounded は、値が動いたことを意味します。数えられるものが、調理者が計り取れる最小の量に丸められたか、下限に達したためです。unscaled は、その行に掛け算できるものが何もなく、公開された通りにそのまま返されることを意味します。
単位系の間で何も変換されません。 また、おおよその計量はそのままの大きさを保ちます。ひとつまみを 4 倍すれば 4 つまみになり、ひとつまみの大きさは調理者の判断に委ねられます。
出来上がり量に数が含まれない場合、再計算は拒否されます。 サイトが「pour un grand plat」と提供するレシピには、再計算の基になるものがありません。割合をでっち上げれば、回答のすべとの行に数値を付けることになります。
インストール
npx mcp-supertoinetteClaude Code
claude mcp add supertoinette -- npx -y mcp-supertoinette任意の MCP クライアント
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": ["-y", "mcp-supertoinette"]
}
}
}コンテナ
docker build -t mcp-supertoinette .
docker run -i --rm mcp-supertoinetteコンテナが必要とするのは www.supertoinette.com への到達だけです。認証情報は不要です。取得するものがなからです。
設定
すべとの設定は環境変数であり、必須のものはありません。範囲外の値は、stderr に 1 行出力して拒否され、デフォルトが使われます。効かを持てない設定は、黙かにクランプされるのではなく、その旨を伝えます。
変数 | 初期値 | 範囲 |
| — | あなた自身の識別子。このプロジェクトの識別子も追加されたままなので、サイトは人間に到達できます。 |
| 3000 | 3000 から 60000 まで |
| 20000 | 1000 から 120000 まで |
| 3 | 0 から 8 まで |
| 900000 | 0 から 86400000 まで。0 は保存を無効にする |
| 200 | 1 から 5000 まで |
|
|
|
ペーシングの下限は外部から下げることはできません。サイトは読むのは自由で、クロール遅延を公開していません。これは、速く読む許可ではなく、注意すべき理由です。また、その robots.txt には、見つけたものに何で.mo従うクローラの罠として、1 語だけのパスが 100 個仕掛けられています。そのため、このサーバーは識別子からすべとのアドレスを構築し、ペーで読んだリんクをたどることはありません。
ラブラリとして
読取リ層は、ペーシング、ストレジ、エラー語彙を備え、プロトコルを付属せずに、単独で公開されています。サイトが公開した通りの量を返します。
import { SupertoinetteClient } from "mcp-supertoinette/client";エラー
コードは 6 つだけで、それ以上はありません。呼び出し側は、メッセージを開くコードで分岐します。
コード | 意味 |
| サイトはそのアドレスに何も保持していません |
| 引数からリクエストを生成できませんでした |
| サイトがこのクライアントに速度を落とすよう要請しました。何かが一致したかどうかについては何も述べていません |
| このサーバーが読み取れない形で回答が届きました |
| リクエストを完了できませんでした |
| 期限内に回答が届きませんでした |
クレジット
レシピ、タイトル、写真は Supertoinette に帰属します。すべての回答は出典を保持し、読者に示すレシピはサイトをクレジットし、ペーへリんクすべきです。
貢献
CONTRIBUTING.md を参照してください。テストが最優先で、カバレッジの下限は 100% です。すべてが従うルールは、サーバーがデータに含まれないことを決して述べないということです。
MIT ラセンスの下で提供されます。
mcp-supertoinette(フランス語)
Supertoinette のレシピを読む MCP サーバーです。読取リ専用で、API キーもアカウントも不要です。
存在理由
Supertoinette は 2002 年からフランス語のレシピを公開しており、そのペーは構造化ブロックが示す以上のことを伝えます。難易度、費用、休止時間は、調理者が読むために印字されている一方で、機械可読な部分にはどこにも存在しません。その間、構造化ブロックは 3 つの誤ったことを主張します。すべとのレシピの最後の手順を繰り返し、ペーが表示しない時間をゼロと書、一覧ペーではカテゴリをレシピと呼びます。
どちらか一方だけを参照する読者は、ペーが示すものを失うか、ブロックが誤って述べることを繰り返すでしょう。このサーバーは両方を読、ペーに判を委ねます。
ツール
get_recipe
アドレス内の番号で 1 件のレシピを読み取ります。/recette/4210/veloute-de-gaverole.html の 4210 がそれです。サイトが名前のどんな綴りでも正しいページへリダイレクトするため、番号がアドレスの全体です。
引数 | 型 | 意味 |
| 文字列 | レシピのアドレスの番号 |
| 整数(任意) | 分量をこの人数に再計算する |
scale_ingredients
保持しているリストを再計算します。オフライン:どのサイトにもアクセスしません。
引数 | 型 | 意味 |
| 文字列[] | 書かれた通りの行 |
| 数値 | 掛ける値 |
回答が断言しないこと
これらの各点は、カタログ全体から選んだ 100 件のレシピで行った測定に基づいています。
サイトが 2 回表示する手順は 1 回だけレンダリングされます。 すべとのレシピの構造化ブロックは最後の指示を繰り返します。手順は、ペーが表示するリストから読取られます。そこでは数が正確です。
サイトが公開しない時間は null であり、決してゼロではありません。 ブロックは、ページがバッジを表示しない時間について PT0M と書きます。測定した 100 件のレシピでは、この 2 つは正確に一致しました。
休止時間は公開されており、しかもページ上だけです。 サイトはこれを Pause と表示し、測定したすべてのレシピで total = préparation + cuisson + repos が成り立ちます。
難易度には尺度がありません。 サイトは文言を表示するだけで、その尺度が何段階かを述べることはありません。したがって、回答には文言だけが含まれます。費用には尺度が付いています。ページがそれを描画するからです。
材料シートへのリンクはサイト自身のリンクです。 測定したコーパスでは、そんなリンク 770 件中 36 件が、行に記されたものとは異なる材料を名指すページを指しています。「de crème」という行はパイナップルのページへと導きます。リンクはサイトのリンクとして渡され、材料の同一性としては決して渡されません。
一覧ページは、料理として読み取るのではなく拒否されます。 このページは、カテゴリ名を保持した Recipe 型の構造化ブロックを公開します。それを要求すると parse_failure が返されます。
再計算された行は、何が行われたかを示します。 scaled:返される数は、その積そのものです。rounded:値が動きました。数えられるものが、料理人が計り取れる最小の量に落ち着いたか、下限に達したためです。unscaled:その行には掛け算できるものが何もなく、公開された通りにそのまま返されます。
単位系の間で何も変換されません、また、おおよその計量はその大きさを保ちます。ひとつまみを 4 倍すると 4 つまみになり、ひとつまみの大きさは料理人の判断に委ねられます。
出来上がり量に数が含まれない場合、再計算は拒否されます。 サイトが「pour un grand plat」と提供するレシピには、再計算の基になるものが何もありません。割合をでっち上げれば、回答の各行に数字を載せることになります。
インストール
npx mcp-supertoinetteClaude Code
claude mcp add supertoinette -- npx -y mcp-supertoinette任意の MCP クライアント
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": ["-y", "mcp-supertoinette"]
}
}
}コンテナ
docker build -t mcp-supertoinette .
docker run -i --rm mcp-supertoinetteコンテナが到達する必要があるのは `www.s
分量に数値が含まれない場合、スケーリングは拒否されます。 「大皿用」とされたレシピには掛け算するものがなく、割合をでっち上げると回答の各展に数値が付くことになります。
インストール
npx mcp-supertoinetteClaude Code
claude mcp add supertoinette -- npx -y mcp-supertoinette任いのMCPクライアント
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": ["-y", "mcp-supertoinette"]
}
}
}コンテナ
docker build -t mcp-supertoinette .
docker run -i --rm mcp-supertoinetteコンテナが接続するのは www.supertoinette.com だけで、それ以外には接続しません。取得すべき認証情報がないため、認証情報は一切受け取りません。
設定
各設定は環境変数であり、必須のものはありません。範囲外の値は stderr への1行で拒否され、デフォルト値が維持されます。適用できない設定は、黙って範囲内に丸められるのではなく、その旨を伝えます。
Variable | Défaut | Bornes |
| — | あなたの識別子。プロジェクトの識別子も追加されたままになり、人間に連絡が取れるようにします |
| 3000 | 3000〜60000 |
| 20000 | 1000〜120000 |
| 3 | 0〜8 |
| 900000 | 0〜86400000。0は保存を無効にします |
| 200 | 1〜5000 |
|
|
|
レートの下限は外部から下げることはできません。サイトは無料で、ク口ール間隔を一公表していないため、慎重になる理由があります。さらに、その robots.txt は1語だけのパスを100ほどロボットの罠として配置しているため、このサーバーは識別子から各アドレスを構築し、ページ内で読んだリンクをたどりません。
ライブラリとして
読取り層は、レート・ストレージ・エラー語彙を備えた単独のパッケージとして公開され、プロトコルは付属しません。サイトが公開した通りの分量を返します:
import { SupertoinetteClient } from "mcp-supertoinette/client";エラー
コードは6つだけです。呼び出し側は、メッセージに対応するコードで分岐します。
Code | 意味 |
| サイトはそのアドレスに何も持っていない |
| 引数がリクエストを生成できなかった |
| サイトが速度を落とすよう求めた。何が一致していたかについては何も言わない |
| このサーバーが読めない形式で応答が届いた |
| リクエストが完了できなかった |
| 期限内に応答が届かなかった |
帰属表示
レシピ、タイル、写真は Supertoinette に帰属します。各応答には出典が付き、読者に示すレシピにはサイトのクレジットとページへのリンクが必要です。
貢献
CONTRIBUTING.md を参照してください。テストを最優先にし、カバレッジの下限は100%、そしてすべてが従うルールは「サーバーはデータに含まれないことを決して言わない」というものです。
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