Doppio Coffee MCP

Order coffee from a roastery DOPPIO, directly through MCP

☕ Doppio Coffee MCP Server

Doppio Coffee MCP

Order freshly roasted specialty coffee from DOPPIO roastery (Zilina, Slovakia) directly through AI assistants.

License: MIT


Features

  • Browse Coffee Catalog - Filter by origin, roast level, flavor notes, acidity, bitterness
  • Personalized Suggestions - AI recommends coffees based on your saved preferences
  • One-Click Ordering - Create checkout with automatic 20% MCP discount
  • Save Preferences - Remember your brewing method, favorite size, and shipping address
  • Slovak Roastery - Fresh coffee from Zilina, shipped across Europe

Quick Start

Option 1: Download Bundle (Easiest)

  1. Download doppio-coffee-mcp.mjs from Releases
  2. Add to Claude Desktop config:
{
  "mcpServers": {
    "doppio-coffee": {
      "command": "node",
      "args": ["/path/to/doppio-coffee-mcp.mjs"]
    }
  }
}
  1. Restart Claude Desktop and start ordering coffee!

Option 2: npx (Recommended)

{
  "mcpServers": {
    "doppio-coffee": {
      "command": "npx",
      "args": ["-y", "doppio-coffee-mcp"]
    }
  }
}

Note: The -y flag auto-confirms the package installation.

Option 3: Build from Source

git clone https://github.com/tomas-chudjak/doppio-coffee-mcp.git
cd doppio-coffee-mcp/mcp-server
npm install
npm run build
{
  "mcpServers": {
    "doppio-coffee": {
      "command": "node",
      "args": ["/path/to/mcp-server/dist/index.js"]
    }
  }
}

Available Tools

list_coffees

Browse available coffees with powerful filtering.

ParameterTypeDescription
preparationfilter | espresso | omniBrewing method
coffee_typerobusta | arabica | blend | decafCoffee type
sizesmall | medium | largePackage size
originstringCountry (e.g., "Brazil", "Ethiopia")
roast_levelstringRoast level (Light, Medium, Dark)
price_maxnumberMaximum price in EUR
flavorstringFlavor note (chocolate, fruit, nuts...)
altitude_minnumberMinimum altitude in meters
acidity_min / acidity_max1-5Acidity level (higher = brighter)
bitterness_min / bitterness_max1-5Bitterness level (higher = more intense)

Example: "Show me Ethiopian coffees with fruity notes under 15 EUR"


get_coffee_detail

Get detailed information about a specific coffee including origin story, processing method, and tasting notes.

ParameterTypeDescription
coffee_idstringCoffee ID from catalog

create_order

Create an order with automatic 20% MCP discount.

ParameterTypeDescription
itemsarrayList of coffees to order
items[].coffee_idstringCoffee ID
items[].sizesmall | medium | largePackage size
items[].quantitynumberNumber of bags
emailstringEmail for order (optional if saved)

Example: "Order 2 bags of large Dolce Vita"


set_preferences

Save your coffee preferences for faster ordering.

ParameterTypeDescription
preparationfilter | espresso | omniYour brewing method
coffee_typestringPreferred coffee type
default_sizesmall | medium | largeDefault package size
emailstringEmail for orders
shipping_addressobjectYour shipping address

get_preferences

Retrieve your saved preferences.


Package Sizes

SizeWeightBest For
small220gTrying new coffees
330gFilter only coffees
medium500gRegular consumption
large1kgDaily drinkers, offices

Example Conversations

Browsing:

"What coffees do you have from Ethiopia?" "Show me something with chocolate notes, low acidity" "I want a light roast for filter brewing"

Ordering:

"Order a large bag of Dolce Vita" "I'll take 2x medium Rwanda and 1x large Brazil" "Reorder my usual coffee"

Preferences:

"I use an espresso machine, remember that" "My default size should be large" "Save my email as john@example.com"


Development

# Install dependencies
npm install

# Build TypeScript
npm run build

# Watch mode (auto-rebuild)
npm run dev

# Run server
npm start

Project Structure

mcp-server/
├── src/
│   ├── index.ts      # MCP server & tool definitions
│   ├── api.ts        # Backend API client
│   ├── preferences.ts # Local preferences storage
│   └── types.ts      # TypeScript interfaces
├── dist/             # Compiled JavaScript
└── package.json

Support

For questions or issues:


License

MIT License - see LICENSE for details.


Related Servers