Yeti
by macorifice
README.md
# Yeti
Available on npm as [`yeti-mcp`](https://www.npmjs.com/package/yeti-mcp).
An [MCP](https://modelcontextprotocol.io) server that guides product design work through mandatory phases, so an AI assistant like Claude can run a project from problem to verified scope.
It covers five phases, in order:
1. **discovery**: problem, users and goal
2. **definition**: requirements (MoSCoW) and user stories
3. **prioritization**: RICE scoring of ideas
4. **flows**: Mermaid flow diagrams
5. **verification**: all `must` requirements completed, then the project closes
Projects have a mode, chosen at creation:
- **`strict`** (default): a phase advances only when its requirements are met. `advance_phase` tells you what is missing.
- **`free`**: phases advance regardless, and the response lists what was skipped.
## Tools
| Tool | What it does |
| --- | --- |
| `create_project` | Start a project in the discovery phase, in `strict` or `free` mode |
| `get_project` | Show phase, what is missing, and linked items |
| `advance_phase` | Move to the next phase, or list what is missing |
| `add_requirement` | Add a requirement with a MoSCoW priority |
| `list_requirements` | List requirements, filtered by priority, status or project |
| `export_backlog` | Export a project backlog as Markdown or CSV |
| `set_requirement_status` | Mark a requirement `open` or `done` |
| `add_user_story` | Create a user story with acceptance criteria |
| `prioritize_rice` | Compute and sort RICE scores |
| `map_user_flow` | Generate a Mermaid flow diagram, with Yes/No branches on decisions |
Requirements, stories, RICE scores and flows accept an optional `projectId` to link them to a project.
## Requirements
- Node.js 18 or later
## Install
```bash
git clone https://github.com/macorifice/yeti.git
cd yeti
npm install
npm run build
```
## Connect to Claude Desktop
Add this to `claude_desktop_config.json`, using the absolute path to `dist/index.js` on your machine:
```json
{
"mcpServers": {
"yeti": {
"command": "node",
"args": ["/absolute/path/to/yeti/dist/index.js"]
}
}
}
```
Restart Claude Desktop after editing the file.
## Data
Data is stored in `data/db.json` inside the project folder. To use another location, set the `PRODUCT_DESIGN_DB` environment variable:
```json
"env": { "PRODUCT_DESIGN_DB": "/absolute/path/to/db.json" }
```
## Test
```bash
npm test
```
The test starts the server on a temporary database and checks every tool and the phase flow.
## Status
Early version (0.2.0). Projects can run in `strict` or `free` mode.
## License
MIT. See [LICENSE](LICENSE).
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues