ReversePort
Reverse engineer and port apps and games: Godot, Unity IL2CPP, .NET, binaries, with parity checks.
作者による説明(英語の原文)
Read Supertoinette recipes and rescale their quantities honestly. No API key.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
STO_USER_AGENT, STO_MIN_INTERVAL_MS, STO_TIMEOUT_MS, STO_MAX_RETRIES, STO_CACHE_TTL_MS, STO_CACHE_MAX_ENTRIES, STO_LOG_LEVEL必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
リンク先は作者自身のファイルです。私たちが置いたり再パッケージしたりしたものではありません。ファイルを開くと、Claude Desktopがインストールします。
ターミナルでこれを実行します
claude mcp add supertoinette --env STO_USER_AGENT=your-value --env STO_MIN_INTERVAL_MS=your-value --env STO_TIMEOUT_MS=your-value --env STO_MAX_RETRIES=your-value --env STO_CACHE_TTL_MS=your-value --env STO_CACHE_MAX_ENTRIES=your-value --env STO_LOG_LEVEL=your-value -- npx -y mcp-supertoinette動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"supertoinette": {
"command": "npx",
"args": [
"-y",
"mcp-supertoinette"
],
"env": {
"STO_USER_AGENT": "your-value",
"STO_MIN_INTERVAL_MS": "your-value",
"STO_TIMEOUT_MS": "your-value",
"STO_MAX_RETRIES": "your-value",
"STO_CACHE_TTL_MS": "your-value",
"STO_CACHE_MAX_ENTRIES": "your-value",
"STO_LOG_LEVEL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"supertoinette": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-supertoinette"
],
"env": {
"STO_USER_AGENT": "your-value",
"STO_MIN_INTERVAL_MS": "your-value",
"STO_TIMEOUT_MS": "your-value",
"STO_MAX_RETRIES": "your-value",
"STO_CACHE_TTL_MS": "your-value",
"STO_CACHE_MAX_ENTRIES": "your-value",
"STO_LOG_LEVEL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
STO_USER_AGENT envSTO_MIN_INTERVAL_MS envSTO_TIMEOUT_MS envSTO_MAX_RETRIES envSTO_CACHE_TTL_MS envSTO_CACHE_MAX_ENTRIES envSTO_LOG_LEVEL envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月9日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント smeet666 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.2.0)がレジストリに届いたのは11 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.js, MCPBも必要です。
同じカテゴリには:ReversePort, Listenbox, Routepot
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Reverse engineer and port apps and games: Godot, Unity IL2CPP, .NET, binaries, with parity checks.
Manage Listenbox podcasts, episodes, collaborators, and RSS imports through your AI assistant.
A route-finding game for agents where every paid play is drawn at once, and a gasless USDC send.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Supertoinette is a French cooking site, one of the oldest still standing. Its recipes give their ingredients, their steps, their preparation, cooking and resting times, the number of people they feed and the photographs of the dish. Beside the recipes it keeps a set of pages of its own on what to drink with a dish, matching a wine to it and saying which style it belongs to.
This server connects a chat client to that site. You can search its recipes, read one with its ingredients rescaled to the number of people at your table, walk its categories, read a category page by page, and look up what it suggests drinking with a dish. It needs no API key and no account.
_Version française_
One-click install
Claude Code
claude mcp add supertoinette -- npx -y mcp-supertoinette
Claude Desktop, Cursor, and any client using the standard config format
{
"mcpServers": { "supertoinette": { "command": "npx", "args": ["-y", "mcp-supertoinette"] } } }
Node 24 or later is required, and no environment variable has to be set.
{
"mcpServers": { "supertoinette": { "command": "docker", "args": ["run", "-i", "--rm", "ghcr.io/smeet666/mcp-supertoinette:1.2.0"] } } }
-i keeps stdin open, which is where the protocol travels, and -t is left out because a TTY rewrites the stream. The container needs outbound HTTPS to www.supertoinette.com, and nothing else: no volume, no port, no credential.
Download mcp-supertoinette-1.2.0.mcpb from the latest release and open it. A client that supports MCP bundles installs it on its own, with no npm and no configuration file to edit. The bundle carries its dependencies, so nothing is fetched at install time.
Supertoinette is a French site, so its recipes are found in French. The ordinary path runs from a search to a recipe: a row carries an id, and get_recipe takes that id.
| Tool | What it does |
|---|---|
get_recipe | Reads one recipe, rescaled to a number of servings on request. |
search_recipes | Finds recipes by dish or by ingredient. |
list_categories | Reads the categories the site files its recipes under. |
browse_recipes | Reads one category, page by page. |
get_wine_pairings | Reads what the site suggests drinking with a dish. |
scale_ingredients | Rescales any ingredient list, with no request to the site. |
get_recipeReads one recipe in full, and rescales its ingredients when a number of servings is given.
| Argument | Type | Required | What it does |
|---|---|---|---|
id | string, 1 to 10 characters | yes | The number in a recipe's address, as a row carries it. |
servings | integer, 1 to 1000 | no | Rescale the ingredients to this many servings. |
In return: title with the pictogram the site opens it with taken off, and title_as_published exactly as the site wrote it; url; description; published_at; intro, the prose printed above the method; steps; prep_minutes, cook_minutes, rest_minutes and total_minutes; category; author; and rating, each null where the page states nothing. yield says what the recipe was written for and what it was rescaled to. ingredients carries the lines with the headings the page groups them under, which is what ingredient_count counts, and each line's scaling reads scaled, rounded or unscaled.
search_recipesSearches the recipes for a dish or an ingredient, one page at a time.
| Argument | Type | Required | What it does |
|---|---|---|---|
query | string, 1 to 120 characters | yes | A dish or an ingredient, in French. |
limit | integer, 1 to 39 | no | Rows to serve. |
page | integer, 1 to 1000 | no | Which page of results to read, the first by default. |
category | string, 1 to 60 characters | no | One category, spelled as a previous answer's facets spelled it. |
In return: rows carrying id, which get_recipe takes, title, title_as_published and url. Alongside come page, last_page for the highest page the site links to from this one, result_count, rows_published for the rows the page held before any were rendered, total_available and facets, which publishes the category wordings a further search takes. Never build a category wording by hand: the site answers one it does not know with a page that reads as an absence.
list_categoriesReads the categories the site files its recipes under. It takes no argument.
In return: categories, with category_count for the entries the site's two lists hold, and the url they were read from. Pass a category on to browse_recipes.
browse_recipesReads one category, page by page.
| Argument | Type | Required | What it does |
|---|---|---|---|
category | string, 1 to 80 characters | yes | A category, as list_categories published it. |
limit | integer, 1 to 30 | no | Rows to serve. |
page | integer, 1 to 1000 | no | Which page to read, the first by default. |
In return: the rows and the envelope search_recipes returns, with last_page saying how far the listing runs.
get_wine_pairingsReads what the site suggests drinking with a dish, from the pages it wrote on the subject.
| Argument | Type | Required | What it does |
|---|---|---|---|
id | string, 1 to 10 characters | one of two | The number in a dish's address. |
page | integer, 1 to 100 | one of two | A page of the site's own listing of dishes. |
In return: entries carrying the id, the dish under the site's own name for it, and style, the style of wine the page opens with, which is null where it wrote none.
scale_ingredientsApplies the same arithmetic to any list of French ingredient lines, with no request to the site.
| Argument | Type | Required | What it does |
|---|---|---|---|
ingredients | array of 1 to 200 strings, 1 to 300 characters | yes | The lines to rescale, as the recipe wrote them. |
factor | number, above 0 and up to 100 | one of two | What to multiply the quantities by. |
from_servings | integer, 1 to 1000 | one of two | How many the list was written for. |
to_servings | integer, 1 to 1000 | one of two | How many it should feed. |
Pass factor, or the from_servings and to_servings pair.
In return: the rescaled lines in the shape get_recipe returns, each with its scaling.
A quantity is stated in the unit that suits it, so a line can come back in a different unit from the one the recipe used: 200 g multiplied by twenty reads 4 kg.
How finely an ingredient can be divided depends on what it is. A baguette can be cut in two, in three or in four; an egg cannot be shared out. A quantity landing between the two is rounded, and the rescaled recipe then departs a little from the proportions of the original. The line carries rounded, and its note says what was done.
The figures are this server's arithmetic, so say they were recomputed when you show them. A recipe whose page states no number of servings cannot be put to a number of people, and the answer says so.
Every variable is optional. Set them in the env block of your client config.
| Variable | Default | What it does |
|---|---|---|
STO_USER_AGENT | the project identity | Names your application to the site, with an address where a person can be reached. |
STO_MIN_INTERVAL_MS | 3000 | Gap between two requests, from 3000 to 60000. |
STO_TIMEOUT_MS | 20000 | Deadline for one request, from 1000 to 120000. |
| STO_MAX_RETRIES | 3
冒頭だけを表示しています。続きはリポジトリで読めます