naftiko: 1.0.0-alpha2 info: label: TheMealDB Meal Recipe Discovery description: Unified workflow for meal recipe discovery, search, and cooking inspiration. Combines search, lookup, filter, and category listing for home cooks, meal planners, and food enthusiasts. tags: - Recipes - Meals - Food - Cooking - Nutrition created: '2026-05-03' modified: '2026-05-06' binds: [] capability: consumes: - type: http namespace: mealdb baseUri: https://www.themealdb.com/api/json/v1/1 description: Open meal and recipe database API resources: - name: search path: /search.php description: Search meals by name or first letter operations: - name: search-meals method: GET description: Search for meals by name or first letter inputParameters: - name: s in: query type: string required: false description: Meal name to search - name: f in: query type: string required: false description: First letter to browse alphabetically outputRawFormat: json outputParameters: - name: result type: object value: $. - name: lookup path: /lookup.php description: Look up a meal by ID operations: - name: lookup-meal-by-id method: GET description: Retrieve full meal details by ID inputParameters: - name: i in: query type: string required: true description: Meal ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: random path: /random.php description: Get a random meal operations: - name: get-random-meal method: GET description: Retrieve a single random meal with full recipe outputRawFormat: json outputParameters: - name: result type: object value: $. - name: categories path: /categories.php description: Get all meal categories operations: - name: list-all-categories method: GET description: Get all meal categories with thumbnails and descriptions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: filter path: /filter.php description: Filter meals by ingredient, category, or area operations: - name: filter-meals method: GET description: Filter meals by ingredient, category, or region inputParameters: - name: i in: query type: string required: false description: Filter by ingredient - name: c in: query type: string required: false description: Filter by category - name: a in: query type: string required: false description: Filter by area/region outputRawFormat: json outputParameters: - name: result type: object value: $. - name: list path: /list.php description: List available categories, areas, or ingredients operations: - name: list-filter-values method: GET description: List all available filter values for categories, areas, or ingredients inputParameters: - name: c in: query type: string required: false description: Set to 'list' for categories - name: a in: query type: string required: false description: Set to 'list' for areas - name: i in: query type: string required: false description: Set to 'list' for ingredients outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: meal-discovery-api description: Unified REST API for meal recipe discovery and cooking inspiration. resources: - path: /v1/meals name: meals description: Search and browse meal recipes operations: - method: GET name: search-meals description: Search for meals by name call: mealdb.search-meals with: s: rest.s outputParameters: - type: object mapping: $. - path: /v1/meals/random name: random-meal description: Get a random meal recipe operations: - method: GET name: get-random-meal description: Retrieve a random meal recipe call: mealdb.get-random-meal outputParameters: - type: object mapping: $. - path: /v1/meals/{id} name: meal-detail description: Full meal recipe details operations: - method: GET name: lookup-meal description: Look up a meal by ID call: mealdb.lookup-meal-by-id with: i: rest.id outputParameters: - type: object mapping: $. - path: /v1/categories name: categories description: Meal categories operations: - method: GET name: list-categories description: List all meal categories call: mealdb.list-all-categories outputParameters: - type: object mapping: $. - path: /v1/meals/filter name: meal-filter description: Filter meals by attributes operations: - method: GET name: filter-meals description: Filter meals by ingredient, category, or area call: mealdb.filter-meals outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: meal-discovery-mcp transport: http description: MCP server for AI-assisted meal recipe discovery and cooking planning. tools: - name: search-meals description: Search for meal recipes by name (e.g. chicken, pasta, sushi) hints: readOnly: true openWorld: true call: mealdb.search-meals with: s: tools.name outputParameters: - type: object mapping: $. - name: browse-meals-by-letter description: Browse all meals starting with a specific letter hints: readOnly: true openWorld: true call: mealdb.search-meals with: f: tools.letter outputParameters: - type: object mapping: $. - name: lookup-meal-by-id description: Get full recipe details for a meal by its ID hints: readOnly: true openWorld: true call: mealdb.lookup-meal-by-id with: i: tools.id outputParameters: - type: object mapping: $. - name: get-random-meal description: Get a completely random meal recipe for cooking inspiration hints: readOnly: true openWorld: true call: mealdb.get-random-meal outputParameters: - type: object mapping: $. - name: list-all-categories description: List all meal categories with thumbnails and descriptions hints: readOnly: true openWorld: true call: mealdb.list-all-categories outputParameters: - type: object mapping: $. - name: filter-by-ingredient description: Find meals that use a specific ingredient hints: readOnly: true openWorld: true call: mealdb.filter-meals with: i: tools.ingredient outputParameters: - type: object mapping: $. - name: filter-by-category description: Filter meals by category (e.g. Chicken, Seafood, Dessert) hints: readOnly: true openWorld: true call: mealdb.filter-meals with: c: tools.category outputParameters: - type: object mapping: $. - name: filter-by-area description: Filter meals by regional cuisine (e.g. Italian, Japanese, Mexican) hints: readOnly: true openWorld: true call: mealdb.filter-meals with: a: tools.area outputParameters: - type: object mapping: $. - name: list-areas description: List all regional cuisines available in the database hints: readOnly: true openWorld: true call: mealdb.list-filter-values with: a: list outputParameters: - type: object mapping: $. - name: list-ingredients description: List all available ingredients in the database hints: readOnly: true openWorld: true call: mealdb.list-filter-values with: i: list outputParameters: - type: object mapping: $.