@emile-wine/mcp-server
v0.2.5
Published
Émile wine cellar MCP server — query and manage your cellar from Claude Desktop, Cursor, or any MCP client. Supports stdio (npx local) and http (OAuth-protected remote) transports.
Maintainers
Readme
@emile-wine/mcp-server
Émile is your French wine cellar app. This MCP server lets you query and manage your cellar from Claude Desktop, Cursor, or any Model Context Protocol client.
What it does
10 tools to talk to your Émile cellar:
| Tool | Description |
|---|---|
| search_wines | Search the catalog by name/producer/appellation |
| list_cellars | List your cellars |
| list_bottles | List bottles in a cellar |
| add_bottle | Add 1 bottle |
| add_bottles_batch | Add up to 100 bottles in one call |
| update_bottle | Change status, notes, location, price, vintage, quantity |
| delete_bottle | Remove a bottle (prefer update_bottle status=drunk for history) |
| recommend_bottles | Get bottle recommendations for a meal or maturity |
| scan_label | Identify a wine from a label photo (base64) |
| scan_labels_batch | Up to 10 label photos in one call |
Quick start (Claude Desktop)
1. Get an API key
Open the Émile iOS app → Profile → Settings → API Keys → tap + Generate. Copy the emile_live_... value (shown only once).
2. Edit your Claude Desktop config
~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"emile": {
"command": "npx",
"args": ["-y", "@emile-wine/mcp-server"],
"env": {
"EMILE_API_KEY": "emile_live_xxxxxxxxxxxxxxxx"
}
}
}
}3. Restart Claude Desktop
You should see the 🔌 indicator in the bottom of the input box, with emile listed.
4. Try it
"Show me my main cellar" "Recommend a bottle for tonight's pasta with mushrooms" "Add a 2018 Pomerol to Cave A"
Configuration
| Env var | Required | Default | Description |
|---|---|---|---|
| EMILE_API_KEY | yes | — | API key from the iOS app |
| EMILE_API_URL | no | https://api.emile.wine | Override for local dev (http://localhost:8000 allowed) |
| EMILE_LOG_LEVEL | no | info | One of debug, info, warn, error |
Troubleshooting
"Émile API key is invalid or revoked" — Generate a new key in the iOS app. Old keys are revoked when you delete them or when global key rotation happens (rare).
"Cannot reach Émile API" — Check your internet connection. The default endpoint https://api.emile.wine should be reachable; you can verify with:
curl https://api.emile.wine/health"Rate limit exceeded" — The MCP server inherits the API's rate limits (varies by endpoint, typically 10-60 req/min). Wait the suggested retry seconds.
Need to debug a tool call — set EMILE_LOG_LEVEL=debug in the config and check Claude Desktop's MCP logs at ~/Library/Logs/Claude/mcp*.log.
Privacy
This MCP server is stateless and doesn't persist anything. Your API key is read from env at startup. All requests go directly to https://api.emile.wine (or your override). Photo data sent to scan_label is processed transient by the backend (not stored). See https://api.emile.wine/privacy for the full policy.
Other MCP clients
The same npx -y @emile-wine/mcp-server invocation works in any client supporting stdio MCP servers:
- Cursor —
~/.cursor/mcp.json - Continue —
~/.continue/config.jsonexperimental.modelContextProtocolServer - Custom clients — connect to stdout/stdin, speak MCP
License
MIT — see LICENSE.
