Skip to main content
Glama
smeet666

mcp-supertoinette

mcp-supertoinette

CI npm licence MIT

Supertoinette のレシピを読む MCP サーバーです。読取リ専用で、API キーもアカウントも不要です。

フランス語版


存在理由

Supertoinette は 2002 年からフランス語のレシピを公開しており、レシピページは、その構造化ブロックが示す以上のことを伝えます。難易度、費用、休止時間は、調理者が読むために印字されている一方で、機械可読な部分にはどこにも存在しません。一方、構造化ブロックは3つの誤ったことを述べています。すべてのレシピの最後の手順を繰り返し、ペーが決して表示しない時間をゼロと書、一覧ペーではカテゴリをレシピと呼びます。

どちらか一方だけを参照する読者は、ペーが表示する情報を失うか、ブロックが誤って述べることを繰り返すことになります。このサーバーは両方を読、ペーの情報に基づいて判断します。

Related MCP server: spoonacular-mcp

ツール

get_recipe

アドレス内の番号で 1 件のレシピを読取ります。/recette/4210/veloute-de-gavérole.html の 4210 がそれです。サイトは名前のどんなどんな綴りでも正しいペーへリダイレクトするため、アドレスの全体がこの番号になります。

引数

意味

id

文字列

レシピのアドレス内の番号

servings

整数(任意)

分量をこの人数に再計算する

{
  "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

呼び出し側がすでに保持しているリストを再計算します。オフラインで、どのサイトにもアクセスしません。

引数

意味

ingredients

文字列[]

レシピが書いた通りの行

factor または from_servings + to_servings

数値

掛ける値

{
  "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-supertoinette

Claude 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 行出力して拒否され、デフォルトが使われます。効かを持てない設定は、黙かにクランプされるのではなく、その旨を伝えます。

変数

初期値

範囲

STO_USER_AGENT

あなた自身の識別子。このプロジェクトの識別子も追加されたままなので、サイトは人間に到達できます。

STO_MIN_INTERVAL_MS

3000

3000 から 60000 まで

STO_TIMEOUT_MS

20000

1000 から 120000 まで

STO_MAX_RETRIES

3

0 から 8 まで

STO_CACHE_TTL_MS

900000

0 から 86400000 まで。0 は保存を無効にする

STO_CACHE_MAX_ENTRIES

200

1 から 5000 まで

STO_LOG_LEVEL

error

silent, error, info, debug

ペーシングの下限は外部から下げることはできません。サイトは読むのは自由で、クロール遅延を公開していません。これは、速く読む許可ではなく、注意すべき理由です。また、その robots.txt には、見つけたものに何で.mo従うクローラの罠として、1 語だけのパスが 100 個仕掛けられています。そのため、このサーバーは識別子からすべとのアドレスを構築し、ペーで読んだリんクをたどることはありません。

ラブラリとして

読取リ層は、ペーシング、ストレジ、エラー語彙を備え、プロトコルを付属せずに、単独で公開されています。サイトが公開した通りの量を返します。

import { SupertoinetteClient } from "mcp-supertoinette/client";

エラー

コードは 6 つだけで、それ以上はありません。呼び出し側は、メッセージを開くコードで分岐します。

コード

意味

not_found

サイトはそのアドレスに何も保持していません

invalid_input

引数からリクエストを生成できませんでした

rate_limited

サイトがこのクライアントに速度を落とすよう要請しました。何かが一致したかどうかについては何も述べていません

parse_failure

このサーバーが読み取れない形で回答が届きました

network_error

リクエストを完了できませんでした

timeout

期限内に回答が届きませんでした

クレジット

レシピ、タイトル、写真は Supertoinette に帰属します。すべての回答は出典を保持し、読者に示すレシピはサイトをクレジットし、ペーへリんクすべきです。

貢献

CONTRIBUTING.md を参照してください。テストが最優先で、カバレッジの下限は 100% です。すべてが従うルールは、サーバーがデータに含まれないことを決して述べないということです。

MIT ラセンスの下で提供されます。


mcp-supertoinette(フランス語)

Supertoinette のレシピを読む MCP サーバーです。読取リ専用で、API キーもアカウントも不要です。

存在理由

Supertoinette は 2002 年からフランス語のレシピを公開しており、そのペーは構造化ブロックが示す以上のことを伝えます。難易度、費用、休止時間は、調理者が読むために印字されている一方で、機械可読な部分にはどこにも存在しません。その間、構造化ブロックは 3 つの誤ったことを主張します。すべとのレシピの最後の手順を繰り返し、ペーが表示しない時間をゼロと書、一覧ペーではカテゴリをレシピと呼びます。

どちらか一方だけを参照する読者は、ペーが示すものを失うか、ブロックが誤って述べることを繰り返すでしょう。このサーバーは両方を読、ペーに判を委ねます。

ツール

get_recipe

アドレス内の番号で 1 件のレシピを読み取ります。/recette/4210/veloute-de-gaverole.html の 4210 がそれです。サイトが名前のどんな綴りでも正しいページへリダイレクトするため、番号がアドレスの全体です。

引数

意味

id

文字列

レシピのアドレスの番号

servings

整数(任意)

分量をこの人数に再計算する

scale_ingredients

保持しているリストを再計算します。オフライン:どのサイトにもアクセスしません。

引数

意味

ingredients

文字列[]

書かれた通りの行

factor または from_servings + to_servings

数値

掛ける値

回答が断言しないこと

これらの各点は、カタログ全体から選んだ 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-supertoinette

Claude 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-supertoinette

Claude 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

STO_USER_AGENT

あなたの識別子。プロジェクトの識別子も追加されたままになり、人間に連絡が取れるようにします

STO_MIN_INTERVAL_MS

3000

3000〜60000

STO_TIMEOUT_MS

20000

1000〜120000

STO_MAX_RETRIES

3

0〜8

STO_CACHE_TTL_MS

900000

0〜86400000。0は保存を無効にします

STO_CACHE_MAX_ENTRIES

200

1〜5000

STO_LOG_LEVEL

error

silent, error, info, debug

レートの下限は外部から下げることはできません。サイトは無料で、ク口ール間隔を一公表していないため、慎重になる理由があります。さらに、その robots.txt は1語だけのパスを100ほどロボットの罠として配置しているため、このサーバーは識別子から各アドレスを構築し、ページ内で読んだリンクをたどりません。

ライブラリとして

読取り層は、レート・ストレージ・エラー語彙を備えた単独のパッケージとして公開され、プロトコルは付属しません。サイトが公開した通りの分量を返します:

import { SupertoinetteClient } from "mcp-supertoinette/client";

エラー

コードは6つだけです。呼び出し側は、メッセージに対応するコードで分岐します。

Code

意味

not_found

サイトはそのアドレスに何も持っていない

invalid_input

引数がリクエストを生成できなかった

rate_limited

サイトが速度を落とすよう求めた。何が一致していたかについては何も言わない

parse_failure

このサーバーが読めない形式で応答が届いた

network_error

リクエストが完了できなかった

timeout

期限内に応答が届かなかった

帰属表示

レシピ、タイル、写真は Supertoinette に帰属します。各応答には出典が付き、読者に示すレシピにはサイトのクレジットとページへのリンクが必要です。

貢献

CONTRIBUTING.md を参照してください。テストを最優先にし、カバレッジの下限は100%、そしてすべてが従うルールは「サーバーはデータに含まれないことを決して言わない」というものです。

MIT ライセンスの下で提供されています。

A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Related MCP Servers

  • F
    license
    C
    quality
    D
    maintenance
    Enables 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
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to search for recipes, get nutritional information, find ingredients, and more through the Spoonacular Food API using natural language.
    6
    15
    5
    ISC
  • A
    license
    A
    quality
    B
    maintenance
    MCP server that searches French recipes from Marmiton, reads ingredients and steps, and rescales quantities to any number of servings without requiring an API key.
    6
    3
    2,395
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Search and read recipes from the English Wikibooks Cookbook, with tools to rescale ingredient lists to a target number of servings.
    4
    117
    MIT

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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