recipal-mcp-unofficial
recipal-mcp-unofficial
ReciPal の栄養ラベル API 用の MCP サーバーです。AI アシスタントがレシピ、原材料、サブレシピを直接読み取り・編集できるようにします。Web UI では何時間もかかる一括操作も含みます。
非公式です。 ReciPal とは提携・承認・サポート関係にありません。製品の公開 API に対してユーザーが構築したものです。
暫定プロジェクト — このリポジトリはアーカイブされます。 ReciPal は公式 MCP サーバーを開発中です。彼らのサーバーがリリースされたら、このサーバーはそれを指すように更新され、読み取り専用でアーカイブされます。これに依存するような重要なものは構築しないでください。SUNSET.md を参照してください。
有効な有料 ReciPal サブスクリプションが必要です。 API アクセスは有料機能であり、キーはアカウント設定の API access から取得します。これがないと、このサーバーは何もできません。
目的
ReciPal の Web UI は、1 つのレシピを編集するには十分です。しかし、40 個のレシピに同じ操作を行う場合(カタログ全体のサービングサイズを修正する、(copy) サフィックスが付いた原材料名を変更する、1 つの原材料だけが異なる製品バリエーション群を作成するなど)は苦痛です。このサーバーは API を公開するため、アシスタントがドライランを先に行い、ループでその作業を実行できます。
特に有用なツールは bulk_clone_and_swap です。完全に設定された 1 つのレシピをテンプレートとして、N 回クローンし、各クローンで 1 つの原材料を交換します。ラベル設定、タグ、サービングサイズは引き継がれるため、クローンは一貫性のあるものになります。
Related MCP server: cookwith-mcp
スコープと配布
意図的に狭く、今後もそのままです:
クローンしてビルドするソース。 ワンクリックプラグインバンドル、
npxパッケージ、MCP ディレクトリやマーケットプレイスへの掲載はありません。これは ReciPal への約束であり、見落としや ToDo ではありません。npm には公開されていません。
package.jsonは意図的にprivateとマークされています。ReciPal の要請により
recipal-mcp-unofficialと命名されており、公式サーバーと誤認されることはありません。
パッケージ化された配布、マーケットプレイスへの提出、またはより親しみやすい消費者向けインストールパスを追加するプルリクエストは拒否されます。歓迎される内容については CONTRIBUTING.md を参照してください。
インストール
Node.js 18 以降が必要です。
git clone https://github.com/BlackBlack/recipal-mcp-unofficial.git
cd recipal-mcp-unofficial
npm install
npm run build次に、MCP クライアントに登録します。Claude Code の場合:
claude mcp add --transport stdio recipal-mcp-unofficial \
--env RECIPAL_API_KEY=your_key_here \
-- node /absolute/path/to/recipal-mcp-unofficial/build/index.jsClaude Desktop の場合は、claude_desktop_config.json に追加します:
{
"mcpServers": {
"recipal-mcp-unofficial": {
"command": "node",
"args": ["/absolute/path/to/recipal-mcp-unofficial/build/index.js"],
"env": { "RECIPAL_API_KEY": "your_key_here" }
}
}
}クライアントを再起動し、レシピの一覧を表示するように依頼します。19 個のツールが利用可能になるはずです。完全な手順は docs/SETUP.md にあります。
⚠️ 重要なカタログに接続する前にこれを読んでください
confirm: true と dry_run ガードは、あなたではなくモデルによって提供されます。 これらは、曖昧なプロンプトが損害を引き起こすのを防ぎます。しかし、決意のある、または混乱したエージェントを止めることはできません — レシピを削除すると判断したアシスタントは、同じ呼び出しで confirm: true を渡します。ReciPal には元に戻す機能がありません。
そのため、実際に破壊的なツールはデフォルトでオフになっています。それらを有効にすることは、会話ではなく、サーバーを実行する人による意図的な行為です:
環境変数 | 有効になるもの | ゲートの理由 |
|
| 永続的なデータ損失、元に戻せない |
|
| 任意のメソッドで任意のエンドポイントを呼び出せる |
それ以外のすべて — すべての読み取り、および通常の作成・更新ツール — はそのまま動作します。一括ツールは常に利用可能ですが、デフォルトで dry_run: true であり、呼び出し元が dry_run: false と confirm: true の両方を渡さない限り実行を拒否します。
推奨されるプラクティス:まず使い捨てのレシピで作業してください。 いくつかのエンドポイントはドキュメントが示唆するものとは異なる動作をします(既知の制限を参照)。
設定
変数 | デフォルト | 目的 |
| — | 必須。 ReciPal アカウント設定 → API access から取得 |
| オフ | 2 つの削除ツールを公開 |
| オフ |
|
| オフ | 完全なリクエストボディを stderr に記録。ボディにはレシピデータが含まれ、クライアントは stderr をディスクに記録する可能性が高いため、通常はオフのままにしてください |
|
| HTTP 429 での再試行 |
|
| エンドポイントを上書き。https かつ |
| オフ | 非 |
.env.example を参照してください。
ツール
合計 22 ツール、デフォルトで 19 個が公開されています。すべてのパラメータを含む生成リファレンス:docs/TOOLS.md
グループ | ツール |
読み取り |
|
レシピ書き込み |
|
原材料行の書き込み |
|
ラベル |
|
一括 |
|
エスケープハッチ |
|
† デフォルトで無効。
書き込みツールは、固定パラメータリストではなく、オープンな fields オブジェクトを受け取ります。ReciPal の公開ドキュメントは完全なレシピ属性リストの前に切り詰められているため、フィールド名をハードコーディングすると推測になってしまいます。代わりに fields はそのまま渡され、Rails スタイルのフォームエンコード(recipe[name]=...)で送信されます。文書化されていない属性もコード変更なしで動作します。エンドポイントが JSON を好む場合は as_json: true を設定します。
書き込む前に実際のレシピを読んでください。 既存のレシピに対する get_recipe は、アカウントが使用する正確な属性名を示します。
既知の制限
これらは実際のもので、ライブ API に対して検証済みであり、これを基に構築する前に知っておく価値があります:
create_recipe_shortcutは動作しません。 試したすべての ingredients 配列形式で HTTP 422 を返します。ReciPal のドキュメントはパラメータリストの前に切り詰められているため、正しい形式は不明です。create_recipe+create_recipe_ingredientを使用するか、scale_recipeを使用して設定済みテンプレートをクローンしてください。ツールは形式を発見できるように残されています — 解決した場合は PR を開いてください。PUT /recipe_ingredients/{id}はingredient_idを静かに無視します。 元の原材料がまだ添付された状態で HTTP 200 を返します。ある原材料を別のものに交換するには、削除してから作成する必要があり、bulk_clone_and_swapは内部でこれを行います。ReciPal はほとんどすべてのレスポンスを二重にラップします —
{recipe: {recipe_ingredients: [{recipe_ingredient: {…}}]}}。外側のエンベロープからフィールドを読み取ると、エラーなしでundefinedになります。このサーバーを拡張する場合は、既存のunwrap()/extractRecords()ヘルパーを使用してください。scale_recipeとcreate_subrecipeのパラメータ名は公開されていません。 パススルーfieldsで動作しますが、ループする前に使い捨てレシピでそれぞれ一度実行し、レスポンスを読んでください。ドキュメントでは
/recipes/{id}/scaleはPUTとされていますが、実際に動作するのはPOSTです。 テストせずに「修正」しないでください。ページネーションヘルパーはありません。
list_recipesは 1 ページあたり最大 100 件です。自分でページを進めてください。
レート制限
ReciPal は、おおよそ 175,000 リクエスト/週、1,000 リクエスト/分(それを超えると HTTP 429)、および最大 5 つの同時ラベルレンダリングを文書化しています。このサーバーは 429 を Retry-After と指数バックオフで尊重し、残り 100 リクエスト未満になると stderr に警告し、すべての一括ループを設定可能な遅延で厳密に順次実行します。ラベルレンダリングを並列化しないでください。
開発
npm run typecheck # tsc --noEmit
npm run build # -> build/index.js
npm test # offline smoke tests, no API key or network needed
npm run gen:docs # regenerate docs/TOOLS.md from the running server
npm run verify # all of the abovedocs/TOOLS.md は、ビルドされたサーバーを起動し、自身のツールリストを尋ねることで生成されるため、リファレンスがコードから逸脱することはありません。CI は古い場合に失敗します。ツールを追加または変更した場合は、npm run build && npm run gen:docs を実行して結果をコミットしてください。
上記のスコープ内での貢献を歓迎します — CONTRIBUTING.md から始め、ライブアカウントに対する変更の検証方法は docs/TESTING.md、各部分の連携方法は docs/DESIGN.md を参照してください。
ライセンス
「ReciPal」はその所有者の商標であり、ここではこのソフトウェアが通信する対象を説明するためにのみ使用されています。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that transforms AI assistants into personal chefs by providing recipe recommendations and meal planning features based on the HowToCook repository.52,678752ISC
- AlicenseBqualityDmaintenanceAn MCP server that enables AI-powered recipe generation and transformation using natural language, supporting dietary restrictions, allergies, and nutritional goals.215MIT
- AlicenseNot gradedqualityFmaintenanceMCP server for MealMastery AI meal planning that enables users to manage meal plans, recipes, and grocery lists through natural language conversation with AI agents like Claude.67MIT
- FlicenseNot gradedqualityDmaintenanceMCP server enabling AI assistants to manage recipes and ingredients in the WeekPlan app via its REST API.1
Related MCP Connectors
Hosted MCP server to manage a restaurant menu from AI agents - 39 tools over the DuckHub API.
An MCP server that integrates with Discord to provide AI-powered features.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
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/RBV801/recipal-mcp-unofficial'
If you have feedback or need assistance with the MCP directory API, please join our Discord server