Forkable
Arcade tools for Forkable — list this week's meals, browse menus, and pick what you want delivered
1.0.2Forkable Toolkit
Forkable is a workplace meal delivery service. This toolkit lets agents and users browse this week's menus, check dietary restrictions, and manage meal picks — all programmatically through Arcade.
Capabilities
- Delivery schedule: Retrieve upcoming delivery days, current pick status (open / locked / delivered), and available menu IDs for each day.
- Menu browsing: Fetch full menus — sections, items, prices, and modifiers — for one or more menu IDs.
- Dietary safety checks: Validate whether a specific item and modifier combination conflicts with the signed-in user's dietary restrictions before confirming a pick.
- Meal management: Swap an existing meal pick for a different item, or skip a delivery day entirely (when still within the editable window).
Auth
This toolkit uses no OAuth flow. Authentication is handled via credentials passed as secrets (see below).
Secrets
-
FORKABLE_EMAIL— The email address associated with the user's Forkable account. This is the same email used to log in to the Forkable web app. Obtain it directly from the account holder or from the Forkable account settings page. -
FORKABLE_PASSWORD— The password for the Forkable account. This is the plaintext password used to authenticate the account on the Forkable platform. Obtain it from the account holder. Store it securely and never expose it in logs or responses.
Configure secrets in the Arcade dashboard or via the Arcade secrets API: https://docs.arcade.dev/en/guides/create-tools/tool-basics/create-tool-secrets. You can manage secret values at https://api.arcade.dev/dashboard/auth/secrets.
Available tools(5)
| Tool name | Description | Secrets | |
|---|---|---|---|
Check whether picking this item (with the given modifier selections) would
conflict with the signed-in user's dietary restrictions.
Returns the list of conflict tags (e.g. `["dairy_free"]`) — empty if the
item is safe. Call this before picking the item as a meal to warn the user, or
to let the agent pick a different item. | 2 | ||
Fetch the full menu (sections, items, prices, modifiers) for one or more menu IDs.
Each item ships with the `item_id` and `menu_id` you'll need to pick it as your meal. | 2 | ||
List your upcoming Forkable delivery days and what's currently picked for each.
Each entry shows the delivery date, current state (open / locked / delivered),
the meal currently assigned to you (`my_pick`), and the menu IDs whose items you
can swap your pick to. Results are sorted by delivery date.
An entry whose `my_pick.piece_id` is empty has no meal allocated to you yet, so
there is no pick to swap on it; picking a meal only replaces an existing pick. | 2 | ||
Replace your assigned meal on one delivery with a different menu item.
Only works on deliveries that already have a meal allocated to you (a
non-empty `my_pick.piece_id`). Forkable's `replacePiece` mutation swaps an
existing pick; it can't create one from nothing — initial allocation
happens on the Forkable side.
The mutation returns the refreshed delivery; this tool surfaces the new pick
and the updated amount due. | 2 | ||
Skip a day — removes your assigned meal from a Forkable order.
Use only when the delivery is still open for changes (`locked: false`
and not `past_late_order_deadline`). | 2 |