Skip to main content
Glama
hew

Dieter Rams MCP Server

by hew
README.md
# Dieter Rams MCP Server

An MCP server that evaluates product designs against Dieter Rams' 10 principles of good design.

## Installation

```bash
npm install dieter-rams-mcp
```

### Prerequisites

- Node.js 16+ 
- Python 3.7+

Install Python dependencies:
```bash
pip install -r requirements.txt
```

## Usage

### As MCP Server
```bash
npx dieter-rams-mcp
```

### Programmatically
```javascript
const { startMCPServer } = require('dieter-rams-mcp');
startMCPServer();
```

### Claude Desktop Configuration
Add to your `claude_desktop_config.json`:
```json
{
  "mcpServers": {
    "dieter-rams": {
      "command": "npx",
      "args": ["dieter-rams-mcp"]
    }
  }
}
```

### Other MCP Clients
For other MCP clients, use:
- **Command**: `npx dieter-rams-mcp`
- **Transport**: stdio
- **Environment**: Ensure Python 3.7+ and Node.js 16+ are available

## Tools

### `evaluate_design`
Complete evaluation against all 10 principles
```json
{
  "description": "A minimalist smartphone with clean lines and intuitive interface",
  "category": "consumer electronics"
}
```

### `principle_check`
Check specific principle with evidence
```json
{
  "description": "Tesla Model S dashboard with single touchscreen",
  "principle": 4,
  "evidence": "All controls accessible through one interface"
}
```

### `get_principles`
List all 10 principles - no parameters needed

### `suggest_improvements`
Get improvement recommendations
```json
{
  "description": "Overcomplicated smart home app with 50+ buttons",
  "current_issues": ["Too many options", "Confusing navigation"]
}
```

## Example Outputs

### `evaluate_design` Response
```json
{
  "overall_score": 7.2,
  "principle_scores": {
    "1": { "score": 8, "feedback": "Innovative use of gesture controls" },
    "2": { "score": 9, "feedback": "Clearly serves user needs" },
    "3": { "score": 7, "feedback": "Clean aesthetic but could be refined" }
  },
  "summary": "Strong functional design with room for aesthetic improvement",
  "recommendations": ["Simplify color palette", "Reduce visual noise"]
}
```

### `principle_check` Response
```json
{
  "principle": 4,
  "score": 6,
  "passes": false,
  "feedback": "Interface requires too much learning",
  "evidence_analysis": "Single touchscreen reduces physical complexity but cognitive load remains high",
  "suggestions": ["Add voice commands", "Implement gesture shortcuts"]
}

## The 10 Principles

1. Good design is innovative
2. Good design makes a product useful
3. Good design is aesthetic
4. Good design makes a product understandable
5. Good design is unobtrusive
6. Good design is honest
7. Good design is long-lasting
8. Good design is thorough down to the last detail
9. Good design is environmentally-friendly
10. Good design is as little design as possible

*"Less, but better" - Weniger, aber besser*

### Learn More About Dieter Rams
- [Wikipedia: Dieter Rams](https://en.wikipedia.org/wiki/Dieter_Rams)
- [Vitsoe: Dieter Rams Principles](https://www.vitsoe.com/us/about/good-design)
- [Book: Less and More - The Design Ethos of Dieter Rams](https://www.amazon.com/Less-More-Design-Ethos-Dieter/dp/3931936651)

## Troubleshooting

### Python Dependencies Not Found
```bash
pip install -r requirements.txt
```
Or try:
```bash
python3 -m pip install -r requirements.txt
```

### Permission Errors on macOS/Linux
```bash
sudo pip install -r requirements.txt
```

### Python Command Not Found
- Ensure Python 3.7+ is installed
- Try `python` instead of `python3`
- On Windows, ensure Python is in PATH

### MCP Server Won't Start
1. Check Node.js version: `node --version` (requires 16+)
2. Verify Python imports: `python3 -c "import fastmcp"`
3. Check file permissions on `server.py`

## License

ISC License - see package.json for details.

## Contributing

Issues and pull requests welcome. This is an open-source project for evaluating designs against timeless design principles.