npm @sommelierx/mcp-serverstdioMITupdated 4mo ago
Wine pairing intelligence for AI assistants. Connect Claude, Cursor, Windsurf, or any MCP-compatible client to a sommelier-grade pairing algorithm that matches wines to your ingredients, dishes, and recipes.
What can you do with rogertheunissenmerge oss?
@sommelierx/mcp-server
Wine pairing intelligence for AI assistants. Connect Claude, Cursor, Windsurf, or any MCP-compatible client to a sommelier-grade pairing algorithm that matches wines to your ingredients, dishes, and recipes.
Quick Start
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"sommelierx": {
"command": "npx",
"args": ["@sommelierx/mcp-server"]
}
}
}
That is it. Ask Claude "What wine goes with grilled salmon?" and it will use SommelierX to answer.
With a Pro API key
For recipe extraction, group pairing, and score breakdowns:
{
"mcpServers": {
"sommelierx": {
"command": "npx",
"args": ["@sommelierx/mcp-server"],
"env": {
"SOMMELIERX_API_KEY": "sk_live_your_key_here"
}
}
}
}
Cursor / Windsurf / Other MCP Clients
The same configuration works. Add the command and args to your client's MCP settings.
Available Tools
| Tool | What it does | Tier |
|---|---|---|
pair_wine_with_ingredients |
Find wines for a list of ingredients (e.g. "salmon, lemon, dill") | Free |
pair_wine_with_meal |
Find wines for a dish name (e.g. "risotto ai funghi") | Free |
find_meals_for_wine |
Find dishes that pair with a wine style (e.g. "Barolo") | Free |
search_ingredients |
Search the ingredient database | Free |
search_meals |
Search the meal database | Free |
pair_wine_with_recipe_url |
Extract ingredients from a recipe URL and pair wines | Pro |
group_pairing |
Find the best wine across multiple dishes (e.g. 3-course dinner) | Pro |
Authentication
SommelierX supports two authentication methods. You can use either one -- no need to configure both.
Option 1: API Key (subscription)
Set the SOMMELIERX_API_KEY environment variable in your MCP client config. The key format is sk_live_.... You get a monthly call allowance based on your tier (Free / Pro / Enterprise).
{
"mcpServers": {
"sommelierx": {
"command": "npx",
"args": ["@sommelierx/mcp-server"],
"env": {
"SOMMELIERX_API_KEY": "sk_live_your_key_here"
}
}
}
}
Get your API key at api.sommelierx.com.
Option 2: x402 Payment (pay per call)
No API key needed. Your AI agent pays per call using USDC on the Base network via the Coinbase x402 protocol. When a request lacks an API key, the server returns a 402 Payment Required response with a payment payload. x402-compatible agents handle this automatically.
This is ideal for:
- AI agents that manage their own wallet
- Pay-as-you-go usage without a subscription
- Agent-to-agent commerce (no human in the loop)
Pricing (per call)
| Tool | Price | Tier |
|---|---|---|
pair_wine_with_meal |
$0.01 | Free |
find_meals_for_wine |
$0.01 | Free |
search_ingredients |
$0.005 | Free |
search_meals |
$0.005 | Free |
pair_wine_with_ingredients |
$0.02 | Pro |
pair_wine_with_recipe_url |
$0.02 | Pro |
group_pairing |
$0.03 | Pro |
With an API key, calls are deducted from your tier allowance. With x402, each call is charged at the listed price.
Example Conversations
Basic pairing:
"What wine pairs well with salmon, asparagus, and hollandaise sauce?"
Reverse pairing:
"I have a bottle of Barolo. What should I cook?"
Recipe URL:
"What wine goes with this recipe? https://www.allrecipes.com/recipe/..."
Dinner party:
"I'm planning a 3-course dinner: Caesar salad, rack of lamb, and chocolate mousse. What single wine works for all courses?"
How It Works
- You ask your AI assistant a wine question
- The assistant calls the appropriate SommelierX tool
- The MCP server translates your input into structured API calls
- SommelierX's pairing algorithm (17 food DNA dimensions x 19 wine DNA dimensions) calculates matches
- You get scored wine recommendations based on real sommelier expertise
Ingredient Resolution
When you use pair_wine_with_ingredients, the server automatically resolves natural language ingredient names to database entries. The AI assistant does not need to know database IDs -- it passes ingredient names directly.
Configuration
| Environment Variable | Required | Default | Description |
|---|---|---|---|
SOMMELIERX_API_KEY |
No | -- | API key for Pro/Enterprise access. Without a key, free tier (50 calls/day). |
SOMMELIERX_API_URL |
No | https://api.sommelierx.com |
API base URL. |
SOMMELIERX_LANGUAGE |
No | en |
Default language for results (en, nl, fr, de, es, it). |
API Tiers
| Tier | Daily Limit | Per-Minute Limit | Features |
|---|---|---|---|
| Free | 50 calls | 2/min | Basic pairing, search, ingredient/meal lookup |
| Pro ($49/mo) | 500 calls | 20/min | + Recipe URL extraction, group pairing, score breakdowns |
| Enterprise | 10,000 calls | 100/min | + Custom limits, SLA |
Get your API key at api.sommelierx.com
API Documentation
Full API documentation is available at docs.sommelierx.com.
The OpenAPI specification is served at https://api.sommelierx.com/api/v1/openapi.json.
Development
npm install
npm run build
npm run dev # development mode with hot reload
npm run typecheck # type checking without emit
Requirements
- Node.js >= 18.0.0
License
MIT
Install
Add rogertheunissenmerge oss to your client. Pick the one you use.
claude mcp add mcp-server -- npx -y @sommelierx/mcp-servercodex mcp add mcp-server -- npx -y @sommelierx/mcp-serveramp mcp add mcp-server -- npx -y @sommelierx/mcp-server{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-server","command":"npx","args":["-y","@sommelierx/mcp-server"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-server": {
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-server": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-server": {
"command": {
"path": "npx",
"args": [
"-y",
"@sommelierx/mcp-server"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @sommelierx/mcp-serverRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
7 tools
rogertheunissenmerge oss exposes 7 tools to a connected agent.
- pair_wine_with_ingredients
- Find wines for a list of ingredients (e.g. "salmon, lemon, dill")
- pair_wine_with_meal
- Find wines for a dish name (e.g. "risotto ai funghi")
- find_meals_for_wine
- Find dishes that pair with a wine style (e.g. "Barolo")
- search_ingredients
- Search the ingredient database
- search_meals
- Search the meal database
- pair_wine_with_recipe_url
- Extract ingredients from a recipe URL and pair wines
- group_pairing
- Find the best wine across multiple dishes (e.g. 3-course dinner)
Score
69 / 100
Good
- Documentation25/25
- Maintenance13/25
- Trust13/20
- Capability6/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 124 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 7 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.1.2Latest | Apr 16, 2026 |