← Files ForkeeARCHIVED FILE

plugin.json

8.3 KB · Nov 15, 2026 · 07:29 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "forkee",
  "version": "0.3.1",
  "description": "Find recipes and manage Kitchen meal plans with your Forkee account.",
  "author": {
    "name": "Mashal Tech O\u00dc",
    "email": "legal@getforkee.com",
    "url": "https://getforkee.com"
  },
  "homepage": "https://getforkee.com",
  "keywords": [
    "recipes",
    "meal-planning"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Forkee",
        "shortDescription": "Recipes and Kitchen plans",
        "longDescription": "Connect your Forkee account to search and read saved recipes, discover and import recipes, organize tags, manage meal plans, and read or update food preferences. The connection uses your existing Kitchen permissions, including shared members\u2019 contributions, recipe notes and nutrition text. Shared edits affect other members. Destructive and overwriting operations open a Forkee browser approval page for your review before execution. Discovery and imports may send queries or source content to retrieval and AI providers. Eligible public-URL imports can create a pending shared-catalog projection of original extracted metadata and ingredients; pending is not public publication. Independently stored public-source recipe metadata and normalized ingredients may remain in Forkee's shared catalog after account deletion. Deleting your account does not automatically remove these catalog entries. This does not include your edited private recipe notes or the full recipe steps and images from that import projection. Contact privacy@getforkee.com about a specific catalog entry or source URL. See https://www.getforkee.com/account-deletion for the deletion scope and other retention exceptions. Recipe matching is not medical or allergy-safety advice. Disconnect in Settings > AI Agents to stop future access; this does not erase information already returned to the connected client. A Forkee account is required. Operated by Mashal Tech O\u00dc. Support and rights: legal@getforkee.com. Privacy and deletion: privacy@getforkee.com. No response-time promise.",
        "developerName": "Mashal Tech O\u00dc",
        "category": "Productivity",
        "capabilities": [
          "Read",
          "Write"
        ],
        "websiteURL": "https://getforkee.com",
        "supportURL": "https://getforkee.com/support",
        "privacyPolicyURL": "https://getforkee.com/privacy",
        "termsOfServiceURL": "https://getforkee.com/terms",
        "composerIcon": "./assets/forkee-icon.png",
        "logo": "./assets/forkee-icon.png",
        "defaultPrompt": [
          "Find my saved lentil recipes in a Kitchen I can access.",
          "Help me plan dinners for next week using my Forkee recipes.",
          "Preview this recipe import before saving it."
        ]
      },
      "publication": {
        "countries": [],
        "release_notes": "Full existing 19-tool scope with separate signed-in browser approval for all 11 protected mutations. Adds shared-catalog account-deletion disclosures and review scenarios."
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Search and read saved recipes in the dedicated synthetic Kitchen",
              "prompt": "In OpenAI reviewer synthetic Kitchen, find my saved chickpea recipe and show its ingredients and steps.",
              "tools_triggered": "list_kitchens, search_recipes, get_recipe",
              "expected_behavior": "Use only the accessible synthetic Kitchen. Find Demo: Tomato and chickpea skillet, serving 2, with olive oil, chopped tomatoes and cooked chickpeas. Return its two actual saved steps without changing the recipe or claiming web discovery."
            },
            {
              "description": "Preview then save one synthetic text recipe with browser approval",
              "prompt": "Preview this synthetic recipe without saving: Demo: Reviewer cucumber salad; serves 2; 1 cucumber diced, 2 tablespoons lemon juice, 1 tablespoon olive oil; put cucumber in a bowl, then add lemon juice and oil and stir. After I inspect the preview, save it only after I approve the exact Forkee browser proposal.",
              "tools_triggered": "list_kitchens, get_food_preferences, preview_recipe_import, save_recipe_import",
              "expected_behavior": "Read current food preferences. Preview may use external extraction/AI services and is not a zero-cost promise. Show actual preview data and any returned import identifier. Do not invent preview results. Saving is a distinct protected mutation: return its approval URL, persist nothing from that save before signed-in browser approval, then retry unchanged arguments/request identity only as supported. Report the actual saved recipe. The app UI already contains Reviewer cucumber salad as synthetic sample data, not proof that the MCP preview/approval path ran."
            },
            {
              "description": "Organize tags with exact browser-confirmed changes",
              "prompt": "Show the tags in OpenAI reviewer synthetic Kitchen. Create reviewer-connector-check if it does not already exist, but wait for my separate Forkee browser approval before making the change.",
              "tools_triggered": "list_kitchens, list_tags, create_tag",
              "expected_behavior": "List only authorized tags, including reviewer-synthetic. Do not create duplicate tags on a rerun. A create proposal must not persist until its exact signed-in Forkee browser approval. After approval, execute unchanged arguments and report the actual saved tag. Denial is not success."
            },
            {
              "description": "Read and explicitly update durable synthetic food preferences",
              "prompt": "Read my Forkee food preferences. Add that I prefer quick vegetarian lunches as a durable preference, preserving my existing synthetic reviewer preference. Show the exact proposed text and wait for my Forkee browser approval.",
              "tools_triggered": "get_food_preferences, update_food_preferences",
              "expected_behavior": "Read the latest text and timestamp first. Preserve unrelated existing text. Explain the exact complete replacement and require separate signed-in browser approval before saving. Respect optimistic concurrency and reread on conflict. Do not infer allergies or give medical-safety guarantees. Verify the saved text after execution."
            },
            {
              "description": "Read the plan and add a synthetic recipe with browser approval",
              "prompt": "Show my plan in OpenAI reviewer synthetic Kitchen for October 28, 2026. Add Demo: Tomato and chickpea skillet for two servings on that date only after I approve the exact proposal in Forkee.",
              "tools_triggered": "list_kitchens, search_recipes, list_meal_plan, create_meal_plan_entry",
              "expected_behavior": "Resolve real Kitchen and recipe identifiers. The existing synthetic plan contains Reviewer cucumber salad on October 28, 2026; preserve it. There is no dedicated dinner-slot field in the MCP schema. Propose the explicit date and servings, require separate signed-in browser approval, execute unchanged arguments after approval and reread the actual saved plan. Do not report a pending or denied proposal as saved."
            }
          ],
          "negative": [
            {
              "description": "Weather is outside Forkee recipe and Kitchen functionality. Do not call Forkee; use an appropriate weather capability or explain the limitation.",
              "prompt": "What is the weather in Tallinn tomorrow?"
            },
            {
              "description": "Forkee has no email-sending tool. Do not trigger recipe, import, preference or plan tools to satisfy a mail request. Use an authorized mail capability or explain the limitation.",
              "prompt": "Email my manager that I will be ten minutes late."
            },
            {
              "description": "A non-food writing request does not need account data or a Kitchen mutation. Respond directly without triggering Forkee.",
              "prompt": "Write a four-line poem about the northern lights."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "This connector has no commerce tools."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 2a6f9b65851cde668134126b2810554496208128cd7a60ff230956eaebfe0936