{
  "markdown": "# @sommelierx/mcp-server\n\nWine 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.\n\n## Quick Start\n\n### Claude Desktop\n\nAdd to `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"sommelierx\": {\n      \"command\": \"npx\",\n      \"args\": [\"@sommelierx/mcp-server\"]\n    }\n  }\n}\n```\n\nThat is it. Ask Claude _\"What wine goes with grilled salmon?\"_ and it will use SommelierX to answer.\n\n### With a Pro API key\n\nFor recipe extraction, group pairing, and score breakdowns:\n\n```json\n{\n  \"mcpServers\": {\n    \"sommelierx\": {\n      \"command\": \"npx\",\n      \"args\": [\"@sommelierx/mcp-server\"],\n      \"env\": {\n        \"SOMMELIERX_API_KEY\": \"sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n### Cursor / Windsurf / Other MCP Clients\n\nThe same configuration works. Add the `command` and `args` to your client's MCP settings.\n\n## Available Tools\n\n| Tool | What it does | Tier |\n|------|-------------|------|\n| `pair_wine_with_ingredients` | Find wines for a list of ingredients (e.g. \"salmon, lemon, dill\") | Free |\n| `pair_wine_with_meal` | Find wines for a dish name (e.g. \"risotto ai funghi\") | Free |\n| `find_meals_for_wine` | Find dishes that pair with a wine style (e.g. \"Barolo\") | Free |\n| `search_ingredients` | Search the ingredient database | Free |\n| `search_meals` | Search the meal database | Free |\n| `pair_wine_with_recipe_url` | Extract ingredients from a recipe URL and pair wines | Pro |\n| `group_pairing` | Find the best wine across multiple dishes (e.g. 3-course dinner) | Pro |\n\n## Authentication\n\nSommelierX supports two authentication methods. You can use either one -- no need to configure both.\n\n### Option 1: API Key (subscription)\n\nSet 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).\n\n```json\n{\n  \"mcpServers\": {\n    \"sommelierx\": {\n      \"command\": \"npx\",\n      \"args\": [\"@sommelierx/mcp-server\"],\n      \"env\": {\n        \"SOMMELIERX_API_KEY\": \"sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\nGet your API key at [api.sommelierx.com](https://api.sommelierx.com).\n\n### Option 2: x402 Payment (pay per call)\n\nNo API key needed. Your AI agent pays per call using USDC on the Base network via the [Coinbase x402 protocol](https://www.x402.org/). 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.\n\nThis is ideal for:\n- AI agents that manage their own wallet\n- Pay-as-you-go usage without a subscription\n- Agent-to-agent commerce (no human in the loop)\n\n### Pricing (per call)\n\n| Tool | Price | Tier |\n|------|-------|------|\n| `pair_wine_with_meal` | $0.01 | Free |\n| `find_meals_for_wine` | $0.01 | Free |\n| `search_ingredients` | $0.005 | Free |\n| `search_meals` | $0.005 | Free |\n| `pair_wine_with_ingredients` | $0.02 | Pro |\n| `pair_wine_with_recipe_url` | $0.02 | Pro |\n| `group_pairing` | $0.03 | Pro |\n\nWith an API key, calls are deducted from your tier allowance. With x402, each call is charged at the listed price.\n\n## Example Conversations\n\n**Basic pairing:**\n> \"What wine pairs well with salmon, asparagus, and hollandaise sauce?\"\n\n**Reverse pairing:**\n> \"I have a bottle of Barolo. What should I cook?\"\n\n**Recipe URL:**\n> \"What wine goes with this recipe? https://www.allrecipes.com/recipe/...\"\n\n**Dinner party:**\n> \"I'm planning a 3-course dinner: Caesar salad, rack of lamb, and chocolate mousse. What single wine works for all courses?\"\n\n## How It Works\n\n1. You ask your AI assistant a wine question\n2. The assistant calls the appropriate SommelierX tool\n3. The MCP server translates your input into structured API calls\n4. SommelierX's pairing algorithm (17 food DNA dimensions x 19 wine DNA dimensions) calculates matches\n5. You get scored wine recommendations based on real sommelier expertise\n\n### Ingredient Resolution\n\nWhen 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.\n\n## Configuration\n\n| Environment Variable | Required | Default | Description |\n|---------------------|----------|---------|-------------|\n| `SOMMELIERX_API_KEY` | No | -- | API key for Pro/Enterprise access. Without a key, free tier (50 calls/day). |\n| `SOMMELIERX_API_URL` | No | `https://api.sommelierx.com` | API base URL. |\n| `SOMMELIERX_LANGUAGE` | No | `en` | Default language for results (`en`, `nl`, `fr`, `de`, `es`, `it`). |\n\n## API Tiers\n\n| Tier | Daily Limit | Per-Minute Limit | Features |\n|------|------------|------------------|----------|\n| **Free** | 50 calls | 2/min | Basic pairing, search, ingredient/meal lookup |\n| **Pro** ($49/mo) | 500 calls | 20/min | + Recipe URL extraction, group pairing, score breakdowns |\n| **Enterprise** | 10,000 calls | 100/min | + Custom limits, SLA |\n\nGet your API key at [api.sommelierx.com](https://api.sommelierx.com)\n\n## API Documentation\n\nFull API documentation is available at [docs.sommelierx.com](https://docs.sommelierx.com).\n\nThe OpenAPI specification is served at `https://api.sommelierx.com/api/v1/openapi.json`.\n\n## Development\n\n```bash\nnpm install\nnpm run build\nnpm run dev       # development mode with hot reload\nnpm run typecheck # type checking without emit\n```\n\n## Requirements\n\n- Node.js >= 18.0.0\n\n## License\n\nMIT\n",
  "bytes": 5601,
  "sha": "5ac84067b3f53131add82fe5c7523324f675444e6ab705d925ec3a4818885b93",
  "repo_slug": "rogertheunissenmerge-oss/mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_rogertheunissenmerge_oss_mcp_s_ce357e70/readme"
}