Pantry Host

There’s already enough of your data in the cloud.

Pantry Host is a self-hosted, privacy-first kitchen companion for managing recipes, menus, ingredients, cookware, and grocery lists.
All on your own hardware.

Three ways to run it.
Zero ways to pay.

Browser

One Click

Run Pantry Host entirely in your browser. No server, no install. Your data lives in your browser via PGlite and OPFS.

  • Works offline
  • Zero setup
  • Photo storage
  • Open any at:// recipe URL
  • Recipe generation, imports, and conversational pantry management*

*With Claude in Chrome

Open in browser

Self-hosted

Host It

Run on a Mac Mini or Raspberry Pi at home. Everyone in the household sees the same pantry, recipes, and grocery list — synced across every phone, tablet, and laptop on your network. Connect your favorite AI assistant via MCP.

  • Sync across every device at home
  • Shared grocery list for the household
  • AI recipe generation*
  • MCP server for AI integrations

*With your own API key

View setup guide

Claude Code

Power User

Use Claude Code to self-host or Claude in Chrome to supercharge the browser version. Import recipes from any URL, generate new ones, manage your pantry conversationally.

  • AI recipe generation
  • URL recipe import
  • Conversational pantry management
Clone and Run

What Pantry Host does

Barcode scanning

Scan grocery barcodes with your phone camera to add ingredients instantly. Optionally save Open Food Facts data — nutrition, allergens, Nutri-Score, NOVA group — for offline lookup and AI agents.

Nutrition & allergens

Estimated calories and macros from stored Open Food Facts data. Allergen warning chips from your `contains-*` recipe tags, unioned with any allergens in stored barcode metadata.

Grocery list

Queue recipes and get a consolidated, categorized grocery list. Check off items as you shop.

Import & Export

Import recipes from any URL or exported HTML file. Export individual recipes or your entire collection as shareable, re-importable HTML.

AI generation

Generate recipes from what you have on hand. Powered by Claude, using your own API key.

Zen mode

Distraction-free cooking view with large text, step-by-step navigation, and screen wake lock.

Themes

System, light, and dark modes. Multiple color palettes. High contrast mode for accessibility.

Privacy by design

No accounts, no tracking, no analytics. Your data never leaves your machine.

Available now

Know what’s in your food

Turn on barcode metadata storage and every scanned item carries Open Food Facts data. Recipes surface estimated nutritional information and a allergen rollup computed locally from your recipe tags and stored metadata.

On every pantry row

MERLOT BELLAVITANO CHEESE

Meta info
Barcode
011863118764
Brand
Sartori
Scores
Nutri-Score D · NOVA 3 · Eco-Score D
Serving
1 ONZ (28 g)
Contains
Milk

Nutrition (per 100 g)

Calories
393kcal
Protein
25g
Fat
32g
Sat. fat
18g
Carbs
0g
Sodium
607mg

On every recipe

Estimated Nutrition (per serving)

Calories
188kcal
Carbs
50.0g
Sugar
50.0g
Protein
0.0g
Fat
0.0g
Sodium
0mg

Based on 1 of 3 ingredients from your pantry.

Estimated from Open Food Facts data. Not a substitute for a nutrition label.

Opt-in, off by default

Storage of barcode + metadata is a single setting, off by default. Toggle it from /settings or directly in the scan modal header.

Allowlisted fields only

A small, named subset of Open Food Facts: nutrition per 100 g + per serving, ingredients text, allergens, Nutri-Score, NOVA group, Eco-Score, brand, labels, categories. Submitter metadata and store lists are deliberately excluded.

Sits in your DB

On self-host: a JSONB column on your Postgres. In the browser PWA: PGlite in IndexedDB. Either way, your data, your hardware. MCP agents on your LAN can read it for diet-aware planning.

Open Food Facts is a community-built database of product information. Pantry Host stores only the fields it surfaces — your barcode lookups never leave your hardware once they land.

Open by Design

Pantry Host ships an MCP server so any compatible AI client can read and write your kitchen data — right from your LAN.

Ask your pantry

What ingredients do I have? What’s running low? Filter by category or tags.

Get recipe help

Search recipes by tag or cookware. Generate new ones from what’s on hand. Queue meals for the week.

Read nutrition labels

Agents see the per-ingredient Open Food Facts metadata alongside everything else — calories, allergens, Nutri-Score. Useful for diet-aware planning without uploading a thing.

Manage your kitchen

Add ingredients, create menus, track cookware. Full read/write access to your data.

Text your pantry

Connect via MCP

Message your kitchen from apps like WhatsApp, Telegram, Discord, Slack, Signal, iMessage, or iOS Siri Shortcuts for hands‑free voice. Connect any agent gateway that supports MCP, such as OpenClaw or IronClaw.

What spices are on hand?

What can I make for dinner?

Are there any nuts in tomorrow’s dinner?

Add bananas to the list.

“Hey Siri, Pantry”

Set up iOS Shortcut

Ask Siri about your kitchen and hear the answer spoken back. Fully hands‑free via a lightweight relay on your LAN.
Add ingredients, search recipes, check what’s running low. All by voice.

What’s in the freezer?

How many calories are in this lunch?

Add lettuce to the pantry.

List most perishable ingredients.

Claude
Cursor
Cline
Zed
OpenClaw
Home Assistant

Compatible with any MCP client. Runs on your LAN, your data stays home.

Federation · Live today

AT Protocol, first-class

Every exchange.recipe record is available to browse and import as a recipe in Pantry Host. Paste an at:// URL, scan a QR, or browse the live feed. The source record stays on its author’s PDS, and imports go straight to your own hardware. Pantry Host infrastructure never stores either.

Built on open infrastructure

Your records, your PDS

Recipes you choose to share live on your own Personal Data Server — Bluesky-hosted by default, self-hostable if you want. Same philosophy as the rest of Pantry Host.

Two open lexicons

Pantry Host adopts the existing exchange.recipe.recipe and exchange.recipe.collection lexicons from recipe.exchange. Share individual recipes or entire menus — visible on every compatible client.

Federated

No pantryhost.app/recipe/123 URL — by design. Recipes are addressable by AT URI and travel with your identity, not ours.

Coming next: one-tap publish to your own PDS from within Pantry Host. Expected in .

Available now

Import from Bluesky

Browse and import recipes and menus shared via the exchange.recipe.recipe and collection AT Protocol lexicons — from Bluesky, recipe.exchange, or any compatible client.

Recipes surface via feed.pantryhost.app, a thin firehose indexer that watches for exchange.recipe.* records. Data is always re-fetched live from each author’s PDS — the indexer just tells us they exist.

Import from Community Sources

Import from recipe communities directly inside the app. Every imported recipe is stored locally on your hardware and works offline — even if the original source goes away.

Pantry Host has no commercial relationship with any of these sources. Each is integrated as a community good.

Kitchens for Everyone

Your home kitchen, Grandma’s house, a catering gig. Each kitchen has its own pantry, recipes, menus, cookware, and grocery list. Available on all three tiers.

Home & Away

Separate pantries. Each kitchen tracks its own ingredients, recipes, and grocery list.

Shared Households

Self-host on a Mac Mini or Raspberry Pi. Everyone in the house sees the same pantry, synced across every device.

Catering & Events

One kitchen per event. Track ingredients and menus independently, then archive or delete when the event is over.

See Pantry Host in action

Browse and queue recipes to inform your grocery list.
Manage your pantry conversationally with Siri.
Scan barcodes to add ingredients on the go.

One command to self‑host

Clone the repo, run docker compose up, and open localhost:3000. PostgreSQL, the app, and the API start together. Data persists in Docker volumes.

$ git clone https://github.com/jpdevries/pantry-host.git

$ cd pantry-host

$ docker compose up -d

Optional: pass AI_API_KEY to enable AI recipe generation.

Add Tailscale for free HTTPS — barcode scanner works on iOS at the grocery store.

Runs on a Raspberry Pi

A Raspberry Pi 4 or 5 makes a perfect always‑on kitchen companion. Same docker compose up, same app. Plug it in, connect to Wi‑Fi, and every device in your home can reach it.

Pi 5

4–8 GB RAM. Builds and runs with no issues.

Pi 4

4 GB+ recommended. 2 GB models may need swap for the initial build.

Cross-build

Build the Docker image on your Mac or PC, transfer to the Pi. First start is instant.

Requires ARM64 (64-bit). Pi 3 and older 32-bit models are not supported.

No subscription needed

Pantry Host is open source software you run yourself. There is no cloud service to sunset, no pricing tier to upsell, and no terms of service that claim rights to your recipes. Your data sits on your hardware, backed up however you choose.