explaingit

kaikaku-ai/epicure-mcp

13PythonAudience · developerComplexity · 3/5Setup · moderate

TLDR

A self-contained MCP server that lets AI assistants answer food ingredient pairing and flavor questions using pre-computed embeddings stored locally, with no external API calls at query time.

Mindmap

mindmap
  root((Epicure MCP))
    What it does
      Ingredient pairing queries
      Flavor exploration
      No external AI at runtime
    Thirteen Tools
      Compatibility scorer
      Nearest neighbor finder
      Cultural profile builder
      SLERP morphing
      UMAP 2D position
    Data Bundle
      Pre-computed embeddings
      Ingredient metadata CSV
      13 MB total
    Use Cases
      Cooking AI assistant
      Recipe tool building
      Flavor research
    Deployment
      Azure Container Apps
      Scales to zero
      GitHub Actions included
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Add ingredient pairing recommendations to an AI cooking assistant by connecting this MCP server to Claude Code or Cursor.

USE CASE 2

Build a flavor exploration tool that explains why two ingredients work together using cluster-and-bridge graphs.

USE CASE 3

Deploy a fully offline ingredient compatibility API on Azure Container Apps that scales to zero between requests.

USE CASE 4

Visualize where an ingredient sits in flavor space relative to its nearest neighbors using the UMAP 2D projection tool.

Tech stack

PythonMCPAzure Container AppsUMAPDocker

Getting it running

Difficulty · moderate Time to first run · 30min

Requires deploying the server locally or to Azure Container Apps and connecting a MCP-compatible client such as Claude Code or Cursor.

No license information is mentioned in the explanation.

In plain English

Epicure MCP is a read-only server that exposes a set of tools for exploring relationships between food ingredients. It runs the Model Context Protocol, which means it can connect directly to AI coding assistants like Claude Code or Cursor, letting users ask ingredient-related questions as part of a conversation. The server works entirely from pre-computed data bundled inside the repository. There are no calls to external AI services at query time: every result is computed on the fly using embeddings and ingredient metadata stored in CSV and binary files totaling about 13 megabytes. This makes the server fully self-contained and predictable in cost. The thirteen available tools cover a range of uses. Some handle pairings: given two ingredients, the server can compute how compatible they are, find the top nearest neighbors in embedding space, or build a cluster-and-bridge graph to explain why certain combinations work. Others cover cultural and flavor context: a tool can project an ingredient onto named cuisine directions to produce a cultural profile, or show which flavor axes correlate with each other. More geometric tools include SLERP-based morphing (moving an ingredient toward another in embedding space) and Pareto frontier navigation for balancing proximity against a flavor axis. A UMAP-based tool provides a 2D position for each ingredient and its nearest neighbors in that flattened view. Logging captures structured data per tool call including latency and a hashed client IP, with the raw IP never stored. Rate limiting is handled in-process with a token bucket, though limits can drift across replicas. The server is designed for deployment on Azure Container Apps, with scripts and a GitHub Actions workflow included. It can scale to zero between requests with a cold start of a few seconds while the bundle loads.

Copy-paste prompts

Prompt 1
Use Epicure MCP to find the top 5 ingredients that pair best with miso paste and explain why each one works using flavor axes.
Prompt 2
Query Epicure to morph the flavor profile of chicken halfway toward salmon in embedding space and list the most compatible ingredients for the resulting midpoint.
Prompt 3
Connect the Epicure MCP server to my Claude Code session and build a recipe pairing check that flags incompatible ingredient combinations before suggesting a dish.
Open on GitHub → Explain another repo

← kaikaku-ai on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.