Replay Recipes
Public API

Recipe Import API

Send plain text recipe content. Get back a link that opens in the Replay Recipes app with the recipe parsed and ready to cook.

Quick Start

One request is all you need. No authentication required for basic usage.

curl
curl -X POST https://www.replayrecipes.com/api/import \
  -H "Content-Type: text/plain" \
  -d 'Chicken Parmesan

Ingredients:
2 chicken breasts
1 cup breadcrumbs
1/2 cup parmesan cheese, grated
1 cup marinara sauce
1 cup mozzarella cheese, shredded
2 eggs, beaten
Salt and pepper to taste

Instructions:
1. Preheat oven to 425°F.
2. Season chicken with salt and pepper.
3. Dip in beaten eggs, then coat with breadcrumbs mixed with parmesan.
4. Bake for 20 minutes until golden.
5. Top with marinara and mozzarella.
6. Bake 10 more minutes until cheese melts.
Serves 2'
Response
{
  "success": true,
  "url": "https://replay-recipes.web.app/recipe/abc123/chicken-parmesan?import=true",
  "recipe": {
    "id": "abc123",
    "title": "Chicken Parmesan",
    "servings": 2
  }
}

Your API Key

Generate an API key for higher rate limits and usage tracking.

Loading...

Quick Setup

Copy a ready-to-use config for your platform. Your API key is pre-filled automatically.

Generate an API key above to auto-fill these config snippets.

claude_desktop_config.json
{
  "mcpServers": {
    "replay-recipes": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://replayrecipes.com/api/mcp"
      ],
      "env": {
        "API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Endpoint Reference

POST/api/import

Headers

HeaderRequiredDescription
Content-TypeYestext/plain or application/json
X-API-KeyNoAPI key for higher rate limits (100/hr vs 5/hr)
X-SourceNoIdentifier for your integration (e.g. claude-mcp)

Body

text/plain

Raw recipe text as the request body. Must be at least 50 characters. Include a title, ingredients, and optionally instructions.

application/json

JSON object with a text field containing the recipe content, and an optional source field.

{ "text": "Recipe content...", "source": "my-app" }

Rate Limits

Without API Key

5 / hour

Per IP address

With API Key

100 / hour

Per API key

Code Examples

Python
import requests

response = requests.post(
    "https://www.replayrecipes.com/api/import",
    headers={
        "Content-Type": "text/plain",
        "X-API-Key": "rr_your_key_here",  # optional
        "X-Source": "my-app",
    },
    data="""Chocolate Chip Cookies

Ingredients:
2 1/4 cups all-purpose flour
1 cup butter, softened
3/4 cup sugar
2 eggs
1 tsp vanilla extract
2 cups chocolate chips

Instructions:
1. Cream butter and sugar until fluffy.
2. Beat in eggs and vanilla.
3. Mix in flour gradually.
4. Fold in chocolate chips.
5. Drop spoonfuls onto baking sheet.
6. Bake at 375°F for 9-11 minutes.
Makes 48 cookies""",
)

data = response.json()
print(data["url"])  # Deep link to open in app
JavaScript / TypeScript
const response = await fetch("https://www.replayrecipes.com/api/import", {
  method: "POST",
  headers: {
    "Content-Type": "text/plain",
    "X-API-Key": "rr_your_key_here", // optional
    "X-Source": "my-app",
  },
  body: recipeText,
});

const data = await response.json();
console.log(data.url); // Deep link to open in app

AI Assistant Integration

Build an MCP server that lets Claude, ChatGPT, or any AI assistant import recipes directly into Replay Recipes.

MCP Integration Guide

Error Codes

StatusMeaning
200Recipe imported successfully
400Text too short (<50 chars) or too long (>50k chars)
401Invalid API key
429Rate limit exceeded (check Retry-After header)
500AI parsing failed or internal error