{
  "data": {
    "a": {
      "slug": "logmeal",
      "name": "LogMeal",
      "vendor": "AIGecko Technologies S.L.",
      "vendorUrl": "https://logmeal.com/",
      "kind": "http-api",
      "category": "cooking",
      "summary": "LogMeal's Food AI Engine is a REST API from AIGecko Technologies, a University of Barcelona spin-off, that recognises dishes in a photo, returns ingredients, quantities and nutrients, and logs intakes, goals and plans per end user.",
      "url": "https://www.anchorterminal.com/tools/logmeal",
      "markdownUrl": "https://www.anchorterminal.com/tools/logmeal.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/logmeal.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/logmeal.json",
      "dns": "logmeal.grade.anchorterminal.com",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "Bearer JWT tokens of three kinds, issued after a browser signup and never expiring on their own. The APICompany token manages users and plans, each APIUser token runs recognition and logging for one end user, and APIUserManager tokens read and manage several users' intakes. Tokens are rotated with POST /v2/users/tokens/rotate after a password proof from /tokens/reauth valid for 10 minutes; a disabled APIUser loses access at once.",
      "pricing": "paid",
      "pricingNotes": "No price is published. A 30-day trial opens every endpoint with no card, capped at 200 queries and 5 registered users, then a paid plan (Analyse, Monitor, Recommend or Custom) is chosen in the account. Each plan carries monthly credits, with 1 credit per recognised image and none for nutrition and recipe data; calls beyond the credits are charged as extras at an unstated rate, billed at the end of the period.",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, pricing pages or terms (checked 2026-11-03). Plans are paid by debit or credit card in the account.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.logmeal.com/docs/guides-getting-started-welcome-logmeal-api",
      "llmsTxt": "https://docs.logmeal.com/llms.txt",
      "capabilities": [
        "cooking.food-recognition",
        "cooking.nutrition",
        "cooking.meal-plans",
        "cooking.recipes",
        "cooking.grocery"
      ],
      "tags": [
        "hosted",
        "paid",
        "free-trial",
        "no-card",
        "api-key",
        "llms-txt",
        "vision",
        "eu",
        "closed-source",
        "no-status-page"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49.1,
        "grade": "D",
        "agentReady": false,
        "rank": 1045,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 54,
          "maintenance": 31,
          "payments": 20,
          "reliability": 42,
          "schema": 71,
          "security": 58,
          "transparency": 57
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Photo recognition that returns dishes, ingredients, grams and nutrients, with per-user tokens, rate-limit headers, backoff guidance and a 30-day trial with no card. No price is published, there is no status page, SLA or security programme, and submitted images are kept indefinitely and used to develop models unless the user asks for deletion.",
        "bestFor": "Agents that log meals from photos for a person and keep a nutrition history with goals, plans and manager oversight, within the EU.",
        "strengths": [
          "One image call returns segmented dishes with ranked candidates, serving size in grams and a path to ingredients and more than 35 nutrients",
          "Per-user and per-manager bearer tokens with a rotation endpoint, a password proof step and instant disabling of an end user",
          "Rate limits published with numbers and reported in RateLimit-* and X-Account-Credits-* headers, with documented exponential backoff on 429",
          "Markdown docs for every endpoint through llms.txt, generated from an OpenAPI specification, with deprecated endpoints marked and their replacements named",
          "A 30-day trial of every endpoint with no card, capped at 200 queries and 5 users"
        ],
        "weaknesses": [
          "No plan price is published; the pricing pages describe credits and limits and leave figures to the account",
          "No status page, SLA, security.txt, disclosure policy or certification found; support answers within 24 to 48 hours on weekdays",
          "Food images and nutrition data are retained without a time limit and used to develop models by default, and the terms let LogMeal train on submitted data",
          "No OpenAPI file link, no official SDK and no dated changelog; the reference's 'ready-to-use code' is generated snippets",
          "Intake writes have no idempotency key, so a retried recognition call logs a second intake and spends a second credit"
        ],
        "agentNotes": [
          "Create one APIUser per person with the company token, set the user's country and language first, and call recognition with that user's token only",
          "Send JPEG images resized before upload; a 429 may mean the per-second, daily or, on the trial, monthly limit, so wait for RateLimit-Reset or Retry-After and back off exponentially",
          "Read GET /v2/info/limitations before a batch, since it reports credits and daily limits without spending any",
          "Do not retry a recognition call blindly; each successful POST to /v2/image/segmentation/complete logs an intake and uses a credit, so check for the imageId first",
          "Tell the person that uploaded photos are kept and used to develop LogMeal's models unless deletion is requested"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49.1
          }
        ],
        "editorialScores": {
          "ergonomics": 54,
          "maintenance": 31,
          "payments": 20,
          "reliability": 42,
          "schema": 71,
          "security": 58,
          "transparency": 49
        },
        "provenanceScore": 64,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -X POST https://api.logmeal.com/v2/image/segmentation/complete -H \"Authorization: Bearer $LOGMEAL_APIUSER_TOKEN\" -F \"image=@meal.jpg\""
      },
      "letme": {
        "capability": "https://letme.dev/cooking.food-recognition",
        "tool": "https://letme.dev/logmeal"
      },
      "area": "everyday",
      "provenance": {
        "legalEntity": "AIGecko Technologies S.L.",
        "domain": "logmeal.com",
        "domainRegistered": "2017-12-03",
        "endpointOnVendorDomain": true,
        "terms": "https://logmeal.com/terms",
        "privacy": "https://logmeal.com/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "AIGecko Technologies S.L. is named in the terms (last updated 10/03/2025, read as 10 March 2025) and, as AIGECKO TECHNOLOGIES SL with tax id B-02682300 and an address in Igualada, in the privacy policy (last updated 09/05/2025, read as 9 May 2025). Both choose Spanish law and the courts of Barcelona.",
          "The terms contain no clause on automated access; they forbid use that harms server stability. logmeal.com/robots.txt disallows /wp-admin/ and one plugin path; docs.logmeal.com/robots.txt disallows edit, login and api-next paths and points to llms.txt; api.logmeal.com has no robots.txt (404).",
          "No status page, changelog (docs.logmeal.com/changelog is 404), security.txt (404 on logmeal.com, docs.logmeal.com and api.logmeal.com) or MCP registry entry found.",
          "The privacy policy's introduction says it applies to data collected through the website while its first section covers app and API data, so its scope is unclear.",
          "RDAP gives logmeal.com a registration date of 3 December 2017."
        ],
        "score": 64
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/logmeal.json",
      "live": {
        "slug": "logmeal",
        "securityTxt": {
          "url": "https://logmeal.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:52:48.14444986Z"
        },
        "updatedAt": "2026-11-04T15:52:48.14444986Z"
      }
    },
    "answer": "LogMeal and spoonacular score within a point of each other on agent readiness, 49.1 (D) and 49 (D). spoonacular leads on reliability, agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "spoonacular",
      "name": "spoonacular",
      "vendor": "skycraft GmbH",
      "vendorUrl": "https://spoonacular.com/food-api",
      "kind": "http-api",
      "category": "cooking",
      "summary": "spoonacular is a recipe and food REST API from skycraft GmbH in Dresden. It searches recipes by ingredients, diet and nutrients, analyses recipes and grocery products, builds meal plans and shopping lists, and has a small open-source MCP server.",
      "url": "https://www.anchorterminal.com/tools/spoonacular",
      "markdownUrl": "https://www.anchorterminal.com/tools/spoonacular.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/spoonacular.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/spoonacular.json",
      "dns": "spoonacular.grade.anchorterminal.com",
      "repo": "https://github.com/ddsky/spoonacular-mcp",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "spoonacular-mcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "One API key per account, minted in the console after a browser signup. The docs send it as the `apiKey` query parameter on every request, or as an `x-api-key` header since December 2022. No scopes, expiry or rotation procedure found. Writes to a user's meal plan need a per-user `username` and `hash` pair from the connect-user endpoint.",
      "pricing": "freemium",
      "pricingNotes": "Free plan of 50 points a day with no card, then HTTP 402 until the quota resets at midnight UTC. Cook $29 a month for 1,500 points a day (overage $0.005 a point), Culinarian $79 for 4,500 ($0.004), Chef $149 for 10,000 ($0.002), Enterprise from $300. A request costs 1 point plus 0.01 a result, with exceptions listed per endpoint. Academic and hackathon plan $10 a month through RapidAPI.",
      "priceSummary": "$29 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, pricing page, OpenAPI spec or MCP source (checked 2026-11-03). An exhausted daily quota answers HTTP 402 with no payment requirements; subscriptions are bought in the console through Stripe.",
        "endpoints": []
      },
      "toolCount": 6,
      "popularity": {
        "githubStars": 6,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://spoonacular.com/food-api/docs",
      "openapi": "https://raw.githubusercontent.com/ddsky/spoonacular-api-clients/refs/heads/master/spoonacular-openapi-3.json",
      "capabilities": [
        "cooking.recipes",
        "cooking.nutrition",
        "cooking.meal-plans",
        "cooking.pantry",
        "cooking.grocery",
        "cooking.food-recognition"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "api-key",
        "openapi",
        "mcp",
        "typescript",
        "python",
        "java",
        "go",
        "eu",
        "closed-source"
      ],
      "lastRelease": "2026-02-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49,
        "grade": "D",
        "agentReady": false,
        "rank": 1048,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 2,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 22,
          "payments": 40,
          "reliability": 58,
          "schema": 65,
          "security": 20,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most.",
        "bestFor": "Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.",
        "strengths": [
          "Public OpenAPI 3.0 document with 97 paths, and generated SDKs in 24 languages under MIT",
          "Free plan of 50 points a day with no card, with public plan prices and per-point overage rates",
          "Quota and rate limits published with numbers, reported in three response headers on every call",
          "Meal plans, shopping lists and custom foods can be written back through the API for a connected user",
          "Open-source six-tool MCP server on npm, each tool with a typed JSON Schema and few required fields"
        ],
        "weaknesses": [
          "One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server",
          "status.spoonacular.com answered with a data error and no history on 3 November 2026, and no incident record could be read",
          "No security.txt, disclosure policy or certification found, and the privacy policy's last revision is dated 2023",
          "The newest dated change is February 2026, and the MCP server has had one release, in August 2025",
          "Terms allow caching user-requested data for one hour only, with written permission, and forbid storing ingredients, instructions and nutrition"
        ],
        "agentNotes": [
          "Send the key as the `x-api-key` header rather than `apiKey=` in the URL, and keep `number` small, since every result adds 0.01 points to the call's cost",
          "Read `X-API-Quota-Left` on each response; a 402 means the day's points are gone until midnight UTC and a 429 means the plan's requests-per-second limit, with no Retry-After to wait on",
          "Use `/recipes/complexSearch` with `addRecipeInformation=true` for one call instead of a search followed by one information call per recipe",
          "Do not store ingredients, instructions or nutrition between sessions; the terms allow only recipe ids, titles and image urls to be kept",
          "Show the original recipe source and a link to it with every recipe, as the terms require"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 22,
          "payments": 40,
          "reliability": 58,
          "schema": 65,
          "security": 20,
          "transparency": 38
        },
        "provenanceScore": 83,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g spoonacular-mcp",
        "http": "curl -H \"x-api-key: $SPOONACULAR_API_KEY\" \"https://api.spoonacular.com/recipes/complexSearch?query=pasta\u0026number=5\"",
        "config": {
          "mcpServers": {
            "spoonacular": {
              "command": "spoonacular-mcp",
              "env": {
                "SPOONACULAR_API_KEY": "your_api_key_here"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/cooking.recipes",
        "tool": "https://letme.dev/spoonacular"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Cook plan",
          "unit": "month",
          "usd": 29,
          "note": "1,500 points a day, 5 requests a second"
        },
        {
          "item": "Culinarian plan",
          "unit": "month",
          "usd": 79,
          "note": "4,500 points a day, 10 requests a second"
        },
        {
          "item": "Chef plan",
          "unit": "month",
          "usd": 149,
          "note": "10,000 points a day, 20 requests a second"
        },
        {
          "item": "Overage point on Cook",
          "unit": "credit",
          "usd": 0.005,
          "note": "$0.004 on Culinarian, $0.002 on Chef; a request is usually 1 point plus 0.01 a result"
        },
        {
          "item": "Academic or hackathon plan",
          "unit": "month",
          "usd": 10,
          "note": "Through RapidAPI, up to 5,000 requests a day, manual approval"
        }
      ],
      "provenance": {
        "legalEntity": "skycraft GmbH",
        "domain": "spoonacular.com",
        "domainRegistered": "2012-12-26",
        "endpointOnVendorDomain": true,
        "terms": "https://spoonacular.com/food-api/terms",
        "privacy": "https://spoonacular.com/food-api/privacy",
        "statusPage": "https://status.spoonacular.com/",
        "changelog": "https://spoonacular.com/food-api/updates",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "skycraft GmbH is named only in the imprint at spoonacular.com/contact, with Dr. David Urbansky as CEO. The terms (last updated 16 April 2026) choose the law and courts of Dresden and name no entity. The privacy policy's last revision is written 10/9/2023.",
          "The terms forbid scraping the API and storing its data beyond recipe ids, titles and image urls. They do not address automated reading of the website. spoonacular.com/robots.txt disallows /l/ for all crawlers and disallows the whole site for a list of named download tools and crawlers (including GoogleBot and a client named WebFetch); ClaudeBot and anthropic-ai are not named. Only pages outside /l/ were read.",
          "status.spoonacular.com is an UptimeRobot page that answered 'There was an error while fetching the data' on 3 November 2026, with no components, history or uptime figures rendered.",
          "RDAP gives spoonacular.com a registration date of 26 December 2012.",
          "/.well-known/security.txt returns 404. No llms.txt (404)."
        ],
        "score": 83
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/spoonacular.json",
      "live": {
        "slug": "spoonacular",
        "vendorStatus": {
          "page": "https://status.spoonacular.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-04T15:32:36.661395014Z"
        },
        "securityTxt": {
          "url": "https://spoonacular.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:00.134240883Z"
        },
        "updatedAt": "2026-11-04T15:53:00.134240883Z"
      }
    },
    "edges": [
      {
        "by": 38,
        "category": "security",
        "leads": "logmeal",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Three bearer token types scoped by role (company, end user, manager), one token per end user, a rotation endpoint that needs a fresh password proof, and instant disabling of an end user; the tokens are JWTs with no stated expiry and no finer scopes (24 of 30). Per-user tokens cannot reach other users, managers see only the users they are granted, and deletion of intakes is a separate endpoint, but there is no read-only token and no confirmation step (15 of 20). Food names come from LogMeal's own model and dataset, with custom recipe names from the customer (10 of 15). GET /v2/info/usages returns request history per APIUser and credit headers show spend per call (9 of 15). No security.txt (404 on three hosts), disclosure policy, bug bounty or certification found (0 of 20). 24 + 15 + 10 + 9 + 0 = 58.",
          "b": "One key per account with no scopes, expiry or rotation procedure, documented first as the `apiKey` query parameter and also sent in the query string by the MCP server; the `x-api-key` header is the alternative. One all-powerful key (10) less 10 for the documented query string (0 of 30). The data endpoints are read-only and a user's meal plan is written only with that user's `username` and `hash`, but there is no read-only key mode or confirmation step (10 of 20). Recipe text, instructions and extracted pages come from third-party websites and no guidance on treating them as untrusted was found (5 of 15). The console shows quota use and the headers report it per call, but no request log was found (5 of 15). security.txt returns 404 and no disclosure policy, bug bounty or certification was found (0 of 20). 0 + 10 + 5 + 5 + 0 = 20."
        },
        "scores": {
          "a": 58,
          "b": 20
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "spoonacular",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0 of 40). No price is published; the pricing pages name the plans and describe credits, and the figures sit in the account (0 of 20). A 30-day trial of every endpoint with no card, capped at 200 queries and 5 users (20 of 20). A person signs up in a browser and chooses a plan there (0 of 20). 0 + 0 + 20 + 0 = 20.",
          "b": "No x402, MPP or L402 (0 of 40). Plan prices and per-point overage rates ($0.005, $0.004 and $0.002) are public, with the point cost of every endpoint (20). The Free plan gives 50 points a day with no card (20). A person signs up in the console in a browser, and no key API exists (0 of 20). 0 + 20 + 20 + 0 = 40."
        },
        "scores": {
          "a": 20,
          "b": 40
        }
      },
      {
        "by": 16,
        "category": "reliability",
        "leads": "spoonacular",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines. No status page was found on logmeal.com, the docs or llms.txt, and a search found none (0), so there is no incident history to read (5). Limits are published with numbers, 20 images a day and 1 a second per APIUser on standard plans, monthly credits per company, and 200 queries on the trial (15). HTTP 429 is documented with RateLimit-Reset, troubleshooting says to back off exponentially and respect Retry-After, but intake writes have no idempotency key (12 of 15). No SLA; the pricing page promises email answers within 24 to 48 hours on weekdays (0 of 10). The v2 API is generally available (10). 0 + 5 + 15 + 12 + 0 + 10 = 42.",
          "b": "Read with the hosted lines. A status page exists at status.spoonacular.com (UptimeRobot), but on 3 November 2026 it rendered 'There was an error while fetching the data' with no components or history, so half credit (10 of 20) and no readable incident record (5). Daily point quotas and requests-per-second limits are published by plan, 60 a minute on Free and 5, 10 and 20 a second on Cook, Culinarian and Chef (15). HTTP 429 and 402 are documented with three quota headers, but there is no Retry-After, backoff guidance or idempotency key for the meal-plan writes (8 of 15). The pricing page states 99 per cent uptime on Cook and Culinarian and 99.9 per cent on Chef, and the FAQ says SLAs are sold above $250 a month (10). The API is generally available (10). 10 + 5 + 15 + 8 + 10 + 10 = 58."
        },
        "scores": {
          "a": 42,
          "b": 58
        }
      },
      {
        "by": 14,
        "category": "ergonomics",
        "leads": "spoonacular",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Recognition responses carry polygons, bounding boxes and recursive subclasses for every segment with no field selection; the language parameter is the only shaping control (10 of 25). History by date range, daily and weekly summaries, a batch endpoint for up to five users, no pagination on lists (12 of 20). Numeric codes with messages, such as 708 naming the valid languages, and troubleshooting guidance per status (15 of 20). Reads are safe to repeat; each recognition POST logs a new intake and spends a credit with no idempotency key (8 of 20). One required field (the image) with defaults from the user's profile, but no official SDK; the 'ready-to-use code in 35+ languages' is generated snippets (9 of 15). 10 + 12 + 15 + 8 + 9 = 54.",
          "b": "`number` caps results on every search (1 to 100), `addRecipeInformation`, `fillIngredients` and `includeNutrition` switch sections on, and the MCP server lists six compact tools, but there is no field selection and full recipe objects are large (15 of 25). Offset and number pagination with filters by cuisine, diet, intolerances, nutrient ranges, equipment, time and sort keys (18 of 20). 402 and 429 are documented with quota headers, other errors are not, and no error body is shown (10 of 20). Reads are GET and safe to repeat, writes to meal plans and custom foods have no idempotency key, and the MCP tools carry no annotations (10 of 20). No required parameter on complexSearch and generated SDKs in 24 languages (15 of 15). 15 + 18 + 10 + 10 + 15 = 68."
        },
        "scores": {
          "a": 54,
          "b": 68
        }
      },
      {
        "by": 9,
        "category": "maintenance",
        "leads": "logmeal",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service. The welcome and feature overview pages carry an updatedAt of 7 October 2026, within 30 days of 3 November, and the credential rotation endpoints are documented; no dated API change exists beyond that, so the docs update stands in (25 of 30). No dated changelog, so three changes in 90 days are not established (0 of 20). Email support within 24 to 48 hours on weekdays and a contact form, no public changelog or community channel (6 of 15). No official SDK and no MCP registry entry (0 of 15). No package to assess (0 of 10). 25 + 0 + 6 + 0 + 0 = 31.",
          "b": "Read as a closed service. The newest dated change on the updates page is February 2026 (Nutrition by Photo, recipe extraction from video), more than 180 days before 3 November 2026, and the SDK repository's last push is 2 December 2025 (0 of 30). No dated changes in the last 90 days (0 of 20). Updates page, Discord, contact form and paid support from $99 a month; three open issues on the clients repository could not be read (8 of 15). Generated SDKs in 24 languages, last pushed December 2025, and an npm MCP server, but no vendor entry in the official MCP registry, which lists only third-party spoonacular servers (10 of 15). spoonacular-mcp has one release (1.0.0, 4 August 2025), a test script and no CI (4 of 10). 0 + 0 + 8 + 10 + 4 = 22."
        },
        "scores": {
          "a": 31,
          "b": 22
        }
      },
      {
        "by": 6,
        "category": "schema",
        "leads": "logmeal",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The reference is generated from an OpenAPI specification and each endpoint page shows its schema, but no specification file is linked or served at a known path (15 of 25). llms.txt with a Markdown twin of every page (10). Endpoint descriptions state purpose, token type, limits and plan, with recommendations such as using the quantity variant on a Recommend plan (15 of 20). Enums for language codes and Nutri-Score categories, required flags, but coordinates are described two ways and the plan needed for nutri_score fields is stated inconsistently (11 of 15). Examples on every endpoint, error codes per endpoint and a numeric code with message in the 400 body (12 of 15). v2 in the path, deprecated endpoints marked with replacements, version endpoints for live APIs and models, but no dated changelog (8 of 15). 15 + 10 + 15 + 11 + 12 + 8 = 71.",
          "b": "Public OpenAPI 3.0.0 document (info version 2.0.2, 97 paths, 99 operations) in the vendor's spoonacular-api-clients repository, linked from the SDK page, and the MCP server's six tools carry JSON Schema inputs (25). No llms.txt (404) and no Markdown docs (0 of 10). Each endpoint states its purpose and point cost, with little on when not to use it (12 of 20). Parameters are typed with required flags, `number` is bounded, but diet, cuisine, intolerance and meal-type values sit in prose lists rather than enums (9 of 15). Request and response examples on every endpoint, 402 and 429 documented in the quota text, but the OpenAPI document lists only 200, 401, 403 and 404 and no error body shape (9 of 15). No version in the path; a dated updates page by month back to February 2020 records field removals with notice, the last in December 2022 for 30 June 2023 (10 of 15). 25 + 0 + 12 + 9 + 9 + 10 = 65."
        },
        "scores": {
          "a": 71,
          "b": 65
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "AIGecko Technologies S.L.",
        "b": "skycraft GmbH",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "0",
        "b": "6",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "2026-02-01",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-04-16",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "6 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "LogMeal and spoonacular score within a point of each other on agent readiness, 49.1 (D) and 49 (D). spoonacular leads on reliability, agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, LogMeal or spoonacular?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do LogMeal and spoonacular need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for LogMeal. spoonacular runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call LogMeal and spoonacular without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 71 against 65",
          "Security \u0026 auth, 58 against 20",
          "Maintenance \u0026 community, 31 against 22"
        ],
        "also": null,
        "goodFor": "Agents that log meals from photos for a person and keep a nutrition history with goals, plans and manager oversight, within the EU.",
        "slug": "logmeal",
        "watchFor": "No plan price is published; the pricing pages describe credits and limits and leave figures to the account"
      },
      {
        "aheadOn": [
          "Reliability, 58 against 42",
          "Agent ergonomics, 68 against 54",
          "Payments \u0026 pricing, 40 against 20"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.",
        "slug": "spoonacular",
        "watchFor": "One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server"
      }
    ],
    "history": null,
    "job": {
      "capability": "cooking.food-recognition",
      "name": "Cooking food recognition"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/fatsecret-vs-logmeal.json",
        "title": "fatsecret Platform API vs LogMeal",
        "url": "https://www.anchorterminal.com/compare/fatsecret-vs-logmeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular.json",
        "title": "fatsecret Platform API vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/logmeal-vs-nutritionix.json",
        "title": "LogMeal vs Nutritionix API",
        "url": "https://www.anchorterminal.com/compare/logmeal-vs-nutritionix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.json",
        "title": "Nutritionix API vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/edamam-vs-logmeal.json",
        "title": "Edamam vs LogMeal",
        "url": "https://www.anchorterminal.com/compare/edamam-vs-logmeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/edamam-vs-spoonacular.json",
        "title": "Edamam vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/edamam-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eat-this-much-vs-logmeal.json",
        "title": "Eat This Much Partner API vs LogMeal",
        "url": "https://www.anchorterminal.com/compare/eat-this-much-vs-logmeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular.json",
        "title": "Eat This Much Partner API vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 16,
        "edge": "spoonacular",
        "key": "reliability",
        "logmeal": 42,
        "name": "Reliability",
        "spoonacular": 58,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "edge": "logmeal",
        "key": "schema",
        "logmeal": 71,
        "name": "Schema \u0026 documentation",
        "spoonacular": 65,
        "weight": 13
      },
      {
        "by": 14,
        "edge": "spoonacular",
        "key": "ergonomics",
        "logmeal": 54,
        "name": "Agent ergonomics",
        "spoonacular": 68,
        "weight": 13
      },
      {
        "by": 38,
        "edge": "logmeal",
        "key": "security",
        "logmeal": 58,
        "name": "Security \u0026 auth",
        "spoonacular": 20,
        "weight": 14
      },
      {
        "by": 20,
        "edge": "spoonacular",
        "key": "payments",
        "logmeal": 20,
        "name": "Payments \u0026 pricing",
        "spoonacular": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 9,
        "edge": "logmeal",
        "key": "maintenance",
        "logmeal": 31,
        "name": "Maintenance \u0026 community",
        "spoonacular": 22,
        "weight": 7
      },
      {
        "by": 4,
        "edge": "spoonacular",
        "key": "transparency",
        "logmeal": 57,
        "name": "Transparency \u0026 trust",
        "spoonacular": 61,
        "weight": 7
      }
    ],
    "summary": "LogMeal and spoonacular score within a point of each other on agent readiness, 49.1 (D) and 49 (D). spoonacular leads on reliability, agent ergonomics and payments \u0026 pricing. Both do cooking food recognition.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "logmeal": "Photo recognition that returns dishes, ingredients, grams and nutrients, with per-user tokens, rate-limit headers, backoff guidance and a 30-day trial with no card. No price is published, there is no status page, SLA or security programme, and submitted images are kept indefinitely and used to develop models unless the user asks for deletion.",
      "spoonacular": "A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular",
    "json": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.min.md"
  },
  "markdown": "LogMeal and spoonacular score within a point of each other on agent readiness, 49.1 (D) and 49 (D). spoonacular leads on reliability, agent ergonomics and payments \u0026 pricing. Both do cooking food recognition.\n\n- LogMeal: grade D, 49.1/100, rank #1045 of 1349. Markdown https://www.anchorterminal.com/tools/logmeal.md · JSON https://www.anchorterminal.com/api/v1/tools/logmeal.json\n- spoonacular: grade D, 49/100, rank #1048 of 1349. Markdown https://www.anchorterminal.com/tools/spoonacular.md · JSON https://www.anchorterminal.com/api/v1/tools/spoonacular.json\n- Best recipe, nutrition and meal planning APIs for AI agents: https://www.anchorterminal.com/best/cooking/index.md\n- All 28 cooking comparisons: https://www.anchorterminal.com/compare/cooking/index.md\n\n## Which one, for what\n\n### LogMeal (D)\n\nGood for: Agents that log meals from photos for a person and keep a nutrition history with goals, plans and manager oversight, within the EU.\n\nAhead on:\n- Schema \u0026 documentation, 71 against 65\n- Security \u0026 auth, 58 against 20\n- Maintenance \u0026 community, 31 against 22\n\nWatch for: No plan price is published; the pricing pages describe credits and limits and leave figures to the account\n\n### spoonacular (D)\n\nGood for: Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.\n\nAhead on:\n- Reliability, 58 against 42\n- Agent ergonomics, 68 against 54\n- Payments \u0026 pricing, 40 against 20\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server\n\n\n## Why the edge\n\n### Security \u0026 auth: LogMeal +38\n\n- LogMeal (58): Three bearer token types scoped by role (company, end user, manager), one token per end user, a rotation endpoint that needs a fresh password proof, and instant disabling of an end user; the tokens are JWTs with no stated expiry and no finer scopes (24 of 30). Per-user tokens cannot reach other users, managers see only the users they are granted, and deletion of intakes is a separate endpoint, but there is no read-only token and no confirmation step (15 of 20). Food names come from LogMeal's own model and dataset, with custom recipe names from the customer (10 of 15). GET /v2/info/usages returns request history per APIUser and credit headers show spend per call (9 of 15). No security.txt (404 on three hosts), disclosure policy, bug bounty or certification found (0 of 20). 24 + 15 + 10 + 9 + 0 = 58.\n- spoonacular (20): One key per account with no scopes, expiry or rotation procedure, documented first as the `apiKey` query parameter and also sent in the query string by the MCP server; the `x-api-key` header is the alternative. One all-powerful key (10) less 10 for the documented query string (0 of 30). The data endpoints are read-only and a user's meal plan is written only with that user's `username` and `hash`, but there is no read-only key mode or confirmation step (10 of 20). Recipe text, instructions and extracted pages come from third-party websites and no guidance on treating them as untrusted was found (5 of 15). The console shows quota use and the headers report it per call, but no request log was found (5 of 15). security.txt returns 404 and no disclosure policy, bug bounty or certification was found (0 of 20). 0 + 10 + 5 + 5 + 0 = 20.\n\n### Payments \u0026 pricing: spoonacular +20\n\n- LogMeal (20): No x402, MPP or L402 (0 of 40). No price is published; the pricing pages name the plans and describe credits, and the figures sit in the account (0 of 20). A 30-day trial of every endpoint with no card, capped at 200 queries and 5 users (20 of 20). A person signs up in a browser and chooses a plan there (0 of 20). 0 + 0 + 20 + 0 = 20.\n- spoonacular (40): No x402, MPP or L402 (0 of 40). Plan prices and per-point overage rates ($0.005, $0.004 and $0.002) are public, with the point cost of every endpoint (20). The Free plan gives 50 points a day with no card (20). A person signs up in the console in a browser, and no key API exists (0 of 20). 0 + 20 + 20 + 0 = 40.\n\n### Reliability: spoonacular +16\n\n- LogMeal (42): Read with the hosted lines. No status page was found on logmeal.com, the docs or llms.txt, and a search found none (0), so there is no incident history to read (5). Limits are published with numbers, 20 images a day and 1 a second per APIUser on standard plans, monthly credits per company, and 200 queries on the trial (15). HTTP 429 is documented with RateLimit-Reset, troubleshooting says to back off exponentially and respect Retry-After, but intake writes have no idempotency key (12 of 15). No SLA; the pricing page promises email answers within 24 to 48 hours on weekdays (0 of 10). The v2 API is generally available (10). 0 + 5 + 15 + 12 + 0 + 10 = 42.\n- spoonacular (58): Read with the hosted lines. A status page exists at status.spoonacular.com (UptimeRobot), but on 3 November 2026 it rendered 'There was an error while fetching the data' with no components or history, so half credit (10 of 20) and no readable incident record (5). Daily point quotas and requests-per-second limits are published by plan, 60 a minute on Free and 5, 10 and 20 a second on Cook, Culinarian and Chef (15). HTTP 429 and 402 are documented with three quota headers, but there is no Retry-After, backoff guidance or idempotency key for the meal-plan writes (8 of 15). The pricing page states 99 per cent uptime on Cook and Culinarian and 99.9 per cent on Chef, and the FAQ says SLAs are sold above $250 a month (10). The API is generally available (10). 10 + 5 + 15 + 8 + 10 + 10 = 58.\n\n### Agent ergonomics: spoonacular +14\n\n- LogMeal (54): Recognition responses carry polygons, bounding boxes and recursive subclasses for every segment with no field selection; the language parameter is the only shaping control (10 of 25). History by date range, daily and weekly summaries, a batch endpoint for up to five users, no pagination on lists (12 of 20). Numeric codes with messages, such as 708 naming the valid languages, and troubleshooting guidance per status (15 of 20). Reads are safe to repeat; each recognition POST logs a new intake and spends a credit with no idempotency key (8 of 20). One required field (the image) with defaults from the user's profile, but no official SDK; the 'ready-to-use code in 35+ languages' is generated snippets (9 of 15). 10 + 12 + 15 + 8 + 9 = 54.\n- spoonacular (68): `number` caps results on every search (1 to 100), `addRecipeInformation`, `fillIngredients` and `includeNutrition` switch sections on, and the MCP server lists six compact tools, but there is no field selection and full recipe objects are large (15 of 25). Offset and number pagination with filters by cuisine, diet, intolerances, nutrient ranges, equipment, time and sort keys (18 of 20). 402 and 429 are documented with quota headers, other errors are not, and no error body is shown (10 of 20). Reads are GET and safe to repeat, writes to meal plans and custom foods have no idempotency key, and the MCP tools carry no annotations (10 of 20). No required parameter on complexSearch and generated SDKs in 24 languages (15 of 15). 15 + 18 + 10 + 10 + 15 = 68.\n\n### Maintenance \u0026 community: LogMeal +9\n\n- LogMeal (31): Read as a closed service. The welcome and feature overview pages carry an updatedAt of 7 October 2026, within 30 days of 3 November, and the credential rotation endpoints are documented; no dated API change exists beyond that, so the docs update stands in (25 of 30). No dated changelog, so three changes in 90 days are not established (0 of 20). Email support within 24 to 48 hours on weekdays and a contact form, no public changelog or community channel (6 of 15). No official SDK and no MCP registry entry (0 of 15). No package to assess (0 of 10). 25 + 0 + 6 + 0 + 0 = 31.\n- spoonacular (22): Read as a closed service. The newest dated change on the updates page is February 2026 (Nutrition by Photo, recipe extraction from video), more than 180 days before 3 November 2026, and the SDK repository's last push is 2 December 2025 (0 of 30). No dated changes in the last 90 days (0 of 20). Updates page, Discord, contact form and paid support from $99 a month; three open issues on the clients repository could not be read (8 of 15). Generated SDKs in 24 languages, last pushed December 2025, and an npm MCP server, but no vendor entry in the official MCP registry, which lists only third-party spoonacular servers (10 of 15). spoonacular-mcp has one release (1.0.0, 4 August 2025), a test script and no CI (4 of 10). 0 + 0 + 8 + 10 + 4 = 22.\n\n### Schema \u0026 documentation: LogMeal +6\n\n- LogMeal (71): The reference is generated from an OpenAPI specification and each endpoint page shows its schema, but no specification file is linked or served at a known path (15 of 25). llms.txt with a Markdown twin of every page (10). Endpoint descriptions state purpose, token type, limits and plan, with recommendations such as using the quantity variant on a Recommend plan (15 of 20). Enums for language codes and Nutri-Score categories, required flags, but coordinates are described two ways and the plan needed for nutri_score fields is stated inconsistently (11 of 15). Examples on every endpoint, error codes per endpoint and a numeric code with message in the 400 body (12 of 15). v2 in the path, deprecated endpoints marked with replacements, version endpoints for live APIs and models, but no dated changelog (8 of 15). 15 + 10 + 15 + 11 + 12 + 8 = 71.\n- spoonacular (65): Public OpenAPI 3.0.0 document (info version 2.0.2, 97 paths, 99 operations) in the vendor's spoonacular-api-clients repository, linked from the SDK page, and the MCP server's six tools carry JSON Schema inputs (25). No llms.txt (404) and no Markdown docs (0 of 10). Each endpoint states its purpose and point cost, with little on when not to use it (12 of 20). Parameters are typed with required flags, `number` is bounded, but diet, cuisine, intolerance and meal-type values sit in prose lists rather than enums (9 of 15). Request and response examples on every endpoint, 402 and 429 documented in the quota text, but the OpenAPI document lists only 200, 401, 403 and 404 and no error body shape (9 of 15). No version in the path; a dated updates page by month back to February 2020 records field removals with notice, the last in December 2022 for 30 June 2023 (10 of 15). 25 + 0 + 12 + 9 + 9 + 10 = 65.\n\n## Score by category\n\n| Category | Weight | LogMeal | spoonacular | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 42 | 58 | spoonacular +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 71 | 65 | LogMeal +6 |\n| Agent ergonomics | 13% (16.2 this run) | 54 | 68 | spoonacular +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 20 | LogMeal +38 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 40 | spoonacular +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 31 | 22 | LogMeal +9 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 57 | 61 | spoonacular +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **49.1 · D** | **49 · D** | |\n\n## Facts side by side\n\n| Fact | LogMeal | spoonacular |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | AIGecko Technologies S.L. | skycraft GmbH |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  | stdio |\n| Auth | API key | API key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Tools exposed | 0 | 6 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-10-07 | 2026-02-01 |\n| Terms last updated | no date given | 2026-04-16 |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | yes | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 6 stars |\n\n## Verdicts\n\n**LogMeal.** Photo recognition that returns dishes, ingredients, grams and nutrients, with per-user tokens, rate-limit headers, backoff guidance and a 30-day trial with no card. No price is published, there is no status page, SLA or security programme, and submitted images are kept indefinitely and used to develop models unless the user asks for deletion.\n\n**spoonacular.** A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most.\n\n## Before you call either\n\n### LogMeal\n\n1. Create one APIUser per person with the company token, set the user's country and language first, and call recognition with that user's token only\n2. Send JPEG images resized before upload; a 429 may mean the per-second, daily or, on the trial, monthly limit, so wait for RateLimit-Reset or Retry-After and back off exponentially\n3. Read GET /v2/info/limitations before a batch, since it reports credits and daily limits without spending any\n4. Do not retry a recognition call blindly; each successful POST to /v2/image/segmentation/complete logs an intake and uses a credit, so check for the imageId first\n5. Tell the person that uploaded photos are kept and used to develop LogMeal's models unless deletion is requested\n\n### spoonacular\n\n1. Send the key as the `x-api-key` header rather than `apiKey=` in the URL, and keep `number` small, since every result adds 0.01 points to the call's cost\n2. Read `X-API-Quota-Left` on each response; a 402 means the day's points are gone until midnight UTC and a 429 means the plan's requests-per-second limit, with no Retry-After to wait on\n3. Use `/recipes/complexSearch` with `addRecipeInformation=true` for one call instead of a search followed by one information call per recipe\n4. Do not store ingredients, instructions or nutrition between sessions; the terms allow only recipe ids, titles and image urls to be kept\n5. Show the original recipe source and a link to it with every recipe, as the terms require\n\n## Questions\n\n### Which is better for AI agents, LogMeal or spoonacular?\n\nLogMeal and spoonacular score within a point of each other on agent readiness, 49.1 (D) and 49 (D). spoonacular leads on reliability, agent ergonomics and payments \u0026 pricing.\n\n### Do LogMeal and spoonacular need an API key?\n\nBoth need an API key.\n\n### Can an agent call LogMeal and spoonacular without installing anything?\n\nNo hosted endpoint is listed for LogMeal. spoonacular runs on your own machine, with no hosted endpoint listed.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.json, and with the fewest tokens: https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"logmeal\", \"b\": \"spoonacular\"}`. From a terminal: `anchor compare logmeal spoonacular`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/logmeal.json and https://www.anchorterminal.com/api/v1/tools/spoonacular.json\n\n## Other comparisons with LogMeal or spoonacular\n\n- [fatsecret Platform API vs LogMeal](https://www.anchorterminal.com/compare/fatsecret-vs-logmeal.md)\n- [fatsecret Platform API vs spoonacular](https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular.md)\n- [LogMeal vs Nutritionix API](https://www.anchorterminal.com/compare/logmeal-vs-nutritionix.md)\n- [Nutritionix API vs spoonacular](https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.md)\n- [Edamam vs LogMeal](https://www.anchorterminal.com/compare/edamam-vs-logmeal.md)\n- [Edamam vs spoonacular](https://www.anchorterminal.com/compare/edamam-vs-spoonacular.md)\n- [Eat This Much Partner API vs LogMeal](https://www.anchorterminal.com/compare/eat-this-much-vs-logmeal.md)\n- [Eat This Much Partner API vs spoonacular](https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "LogMeal vs spoonacular",
        "url": ""
      }
    ],
    "description": "LogMeal and spoonacular score within a point of each other for cooking food recognition, 49.1 and 49 out of 100. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "LogMeal D 49.1",
      "spoonacular D 49",
      "scores"
    ],
    "h1": "LogMeal vs spoonacular",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/logmeal-vs-spoonacular",
    "published": "2026-10-01",
    "section": "tools",
    "title": "LogMeal vs spoonacular for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular"
  },
  "tokens": {
    "markdown": 4250,
    "slim": 2830
  },
  "version": 1
}
