meticulous-mcp
# meticulous-mcp
MCP server for controlling [Meticulous](https://meticuloushome.com) espresso machines via Claude and other AI clients.
## Installation
### Claude Desktop
Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"meticulous": {
"command": "npx",
"args": ["-y", "meticulous-mcp"]
}
}
}
```
## Configuration
| Environment Variable | Default | Description |
|---------------------|---------|-------------|
| `METICULOUS_URL` | `http://meticulousimaginativeflavorprofile.local` | Your machine's URL |
## Available Tools
### Machine
- `get_device_info` - Get device information (firmware, serial, etc.)
- `get_status` - Get current machine status (temperatures, pressures)
- `get_settings` - Get machine settings
- `update_setting` - Update a machine setting
- `execute_action` - Execute machine actions
### Profiles
- `list_profiles` - List all profiles
- `get_profile` - Get profile details
- `load_profile` - Load a profile for brewing
- `get_last_profile` - Get the last used profile
- `save_profile` - Create or update a profile
- `get_profile_schema` - Get the JSON schema for profiles
### Brewing
- `start_brew` - Start brewing with current profile
- `stop_brew` - Stop the current brew
- `tare_scale` - Tare the scale
- `preheat` - Start preheating
- `reset_machine` - Reset the machine
### History
- `search_shot_history` - Search shot history
- `get_shot_details` - Get details of a specific shot
- `get_last_shot` - Get the most recent shot
- `get_current_shot` - Get current shot in progress
- `get_history_stats` - Get brewing statistics
- `rate_shot` - Rate a shot
## Usage with Other Projects
The tools can be imported for use in other projects:
```typescript
import { registerMCPTools, type ToolContext } from "meticulous-mcp/tools"
```
## Related Projects
- [meticulous-bridge](https://github.com/naticha/meticulous-bridge) - Bridge agent for cloud connectivity
## License
MIT
TDQS
Scored across 22 tools
Tools are clearly grouped by functionality (machine info, brewing, profiles, shot history, ratings, settings) with no overlap. Descriptions explicitly differentiate similar tools like get_current_shot, get_last_shot, and get_shot_details.
All tool names consistently use verb_noun pattern in snake_case (e.g., get_device_info, start_brew, save_profile). No mixed conventions or inconsistent verb tense.
22 tools is slightly above the typical 15 but still well-scoped for an espresso machine control surface covering device info, profile management, brewing, shot history, and settings. Each tool serves a distinct purpose.
Covers major operations: profile CRUD (except delete), brewing lifecycle, shot history with details, and settings. Minor gap: no explicit delete profile tool, but core workflows are supported.