Edamam · Capability

Edamam Nutrition Analysis — Nutrition

Nutrition Analysis — Nutrition. 2 operations. Lead operation: Full Recipe Analysis. Self-contained Naftiko capability covering one Edamam business surface.

Run with Naftiko EdamamNutrition AnalysisFood And Drink

What You Can Do

POST
Analyzerecipe — Full recipe analysis from ingredient list.
/v1/nutrition-details
GET
Analyzeingredientline — Analyze a single ingredient text line.
/v1/nutrition-data

MCP Tools

analyze-recipe

Full nutrition analysis for a recipe.

read-only
analyze-ingredient-line

Analyze a single ingredient text line.

read-only idempotent

Capability Spec

nutrition-analysis-nutrition.yaml Raw ↑
naftiko: "1.0.0-alpha2"

info:
  label: "Edamam Nutrition Analysis — Nutrition"
  description: >-
    Nutrition Analysis — Nutrition. 2 operations. Lead operation: Full Recipe Analysis.
    Self-contained Naftiko capability covering one Edamam business surface.
  tags:
    - Edamam
    - Nutrition Analysis
    - Food And Drink
  created: "2026-05-30"
  modified: "2026-05-30"

binds:
  - namespace: env
    keys:
      EDAMAM_NUTRITION_APP_ID: EDAMAM_NUTRITION_APP_ID
      EDAMAM_NUTRITION_APP_KEY: EDAMAM_NUTRITION_APP_KEY

capability:

  consumes:
    - type: http
      namespace: "nutrition-analysis-nutrition"
      baseUri: "https://api.edamam.com"
      description: "Edamam Nutrition Analysis API — NLP-driven recipe / line nutrient analysis."
      authentication:
        type: apikey
        key: app_id
        value: "{{env.EDAMAM_NUTRITION_APP_ID}}"
        placement: query
      resources:
        - name: "nutrition-details"
          path: "/api/nutrition-details"
          operations:
            - name: "analyzeRecipe"
              method: POST
              description: "Full recipe analysis from a list of ingredient text lines."
              inputParameters:
                - name: app_id
                  in: query
                  type: string
                  required: true
                - name: app_key
                  in: query
                  type: string
                  required: true
                - name: beta
                  in: query
                  type: boolean
                  required: false
                - name: body
                  in: body
                  type: object
                  required: true
                  description: "title + ingr[] + (optional) yield + (optional) prep + (optional) url."
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: "$."
        - name: "nutrition-data"
          path: "/api/nutrition-data"
          operations:
            - name: "analyzeIngredientLine"
              method: GET
              description: "Individual text line analysis for a single ingredient."
              inputParameters:
                - name: app_id
                  in: query
                  type: string
                  required: true
                - name: app_key
                  in: query
                  type: string
                  required: true
                - name: ingr
                  in: query
                  type: string
                  required: true
                  description: "Ingredient text line (e.g. '1 cup brown rice')."
                - name: nutrition-type
                  in: query
                  type: string
                  required: false
                  description: "cooking | logging."
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: "$."

  exposes:
    - type: rest
      namespace: "nutrition-analysis-nutrition-rest"
      port: 8080
      description: "REST adapter for Edamam Nutrition Analysis."
      resources:
        - path: "/v1/nutrition-details"
          name: "nutrition-details"
          description: "REST surface for full recipe nutrition analysis."
          operations:
            - method: POST
              name: "analyzeRecipe"
              description: "Full recipe analysis from ingredient list."
              call: "nutrition-analysis-nutrition.analyzeRecipe"
              with:
                app_id: "rest.app_id"
                app_key: "rest.app_key"
                beta: "rest.beta"
                body: "rest.body"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: "/v1/nutrition-data"
          name: "nutrition-data"
          description: "REST surface for single ingredient nutrition lookup."
          operations:
            - method: GET
              name: "analyzeIngredientLine"
              description: "Analyze a single ingredient text line."
              call: "nutrition-analysis-nutrition.analyzeIngredientLine"
              with:
                app_id: "rest.app_id"
                app_key: "rest.app_key"
                ingr: "rest.ingr"
                nutrition-type: "rest.nutrition-type"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      namespace: "nutrition-analysis-nutrition-mcp"
      port: 9090
      transport: http
      description: "MCP adapter for Edamam Nutrition Analysis."
      tools:
        - name: "analyze-recipe"
          description: "Full nutrition analysis for a recipe."
          hints:
            readOnly: true
            destructive: false
            idempotent: false
          call: "nutrition-analysis-nutrition.analyzeRecipe"
          with:
            app_id: "tools.app_id"
            app_key: "tools.app_key"
            beta: "tools.beta"
            body: "tools.body"
          outputParameters:
            - type: object
              mapping: "$."
        - name: "analyze-ingredient-line"
          description: "Analyze a single ingredient text line."
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: "nutrition-analysis-nutrition.analyzeIngredientLine"
          with:
            app_id: "tools.app_id"
            app_key: "tools.app_key"
            ingr: "tools.ingr"
            nutrition-type: "tools.nutrition-type"
          outputParameters:
            - type: object
              mapping: "$."