trackmcp
Back to directory
AIDataNordic

Food-Recipe-MCP

View on GitHub

A production-grade semantic search server for food recipes — built for AI agents using the Model Context Protocol (MCP). Search across 50,000+ recipes with hybrid dense + sparse retrieval and cross-encoder reranking.

1 stars PythonOthers Updated Jul 5, 2026
fastmcpfoodmcprecipessemantic-search

Documentation

Food Recipe MCP

Semantic search over 50,000+ food recipes — built for AI agents and LLMs. Two-stage hybrid retrieval (dense + sparse BM25, fused via RRF) with cross-encoder reranking. Supports natural language queries in Norwegian and English.

Live endpoint: `https://recipes.aidatanorge.no/mcp`

Transport: `streamable-http`

Demo: https://recipes.aidatanorge.no/


Connect

Add to your MCP client config:

json
{
  "mcpServers": {
    "food-recipe": {
      "type": "streamable-http",
      "url": "https://recipes.aidatanorge.no/mcp"
    }
  }
}

Or with Claude Code:

bash
claude mcp add --transport http food-recipe https://recipes.aidatanorge.no/mcp

Quick Test

Try the live demo in your browser:

https://recipes.aidatanorge.no/

No installation or configuration needed.


MCP Tools

`search_recipes`

Semantic search over 50,000+ recipes from Food.com with hybrid retrieval and reranking.

python
search_recipes(
    query="quick Italian pasta for weeknight dinner",
    diet="vegetarian",      # vegetarian | vegan | gluten-free | dairy-free | low-carb | keto | paleo
    max_minutes=30,         # maximum total cooking time in minutes
    difficulty="easy",      # easy | medium | hard
    limit=5                 # default 5, max 20
)
# Returns: rerank_score, rrf_score, title, description, total_time, difficulty,
#          diet, main_ingredient, servings, ingredients, instructions, nutrition,
#          rating, rating_count, source, recipe_id

Query examples:

  • `"Swedish meatballs with gravy"`
  • `"healthy high-protein chicken bowl"`
  • `"easy chocolate cake for beginners"`
  • `"traditional Norwegian kjøttkaker"`
  • `"hurtig pasta med kylling"`

Search pipeline: Dense embedding (`intfloat/e5-large-v2`, 1024d) + sparse BM25, fused via Reciprocal Rank Fusion (RRF), reranked by `mmarco-mMiniLMv2-L12-H384-v1`.

`ping`

python
ping(name="world")
# Returns: "Hello world! Recipe MCP server is running."

Data

  • Source: Food.com (~50,000 recipes)
  • Coverage: Wide range of cuisines, meal types, and cooking styles
  • Nutritional data: calories, fat, protein, carbohydrates, sodium, fiber, sugar per serving
  • Ratings: user rating + rating count per recipe
  • Languages: English and Norwegian supported natively in queries

Architecture

code
Food.com recipes → Python ingest → Qdrant (recipe_data_v2 collection)
                                         ↓
                              Hybrid search (dense e5-large-v2 + sparse BM25)
                                         ↓
                              RRF fusion + cross-encoder reranking
                                         ↓
                              FastMCP 3.2 → MCP clients / AI agents

Technical Stack

  • Embeddings: `intfloat/e5-large-v2` (1024d dense) + `Qdrant/bm25` (sparse)
  • Reranker: `cross-encoder/mmarco-mMiniLMv2-L12-H384-v1`
  • Vector DB: Qdrant (self-hosted)
  • Server: FastMCP 3.2 over HTTP
  • Infrastructure: Ubuntu Server 24 LTS, Cloudflare Tunnel

License

MIT

Frequently asked questions

What is Food-Recipe-MCP?

Food-Recipe-MCP is A production-grade semantic search server for food recipes — built for AI agents using the Model Context Protocol (MCP). Search across 50,000+ recipes with hybrid dense + sparse retrieval and cross-encoder reranking.

How do I install Food-Recipe-MCP?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is Food-Recipe-MCP open source?

Yes — it is hosted on GitHub at https://github.com/AIDataNordic/Food-Recipe-MCP and has 1 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP