PMOS
README.md
# PMOS
Product Manager Operating System. An MCP server that gives an agent product data, feedback, metrics, sandbox analysis, and gated Jira tickets — so it can investigate drops, write PRDs, and file work with evidence.
Implemented on [OpenCode](https://opencode.ai).
## What you get
**Tools**
| Tool | Purpose |
|------|---------|
| `get_product` | Product, users, competitors (default: ShipIt) |
| `list_features` / `get_feature` | Roadmap features + feedback count |
| `search_feedback` / `get_feedback_summary` | Quotes, sentiment, themes |
| `get_funnel_metrics` | Onboarding conversion over time |
| `get_feature_metrics` | Feature series (e.g. completion, step-3 drop-off) |
| `run_sandbox_analysis` | Isolated pandas/Python (Docker; off in compose) |
| `create_jira_ticket` | Preview first; `approved=True` only after the user says yes |
**Resources:** `product://shipit` · `feature://{id}` · `metrics://onboarding`
**Prompts:** `generate_prd` · `analyze_feature` · `analyze_customer_feedback`
**Skills** (`.opencode/skills/`): analyze feedback, feature analysis, write PRD, prioritize roadmap, create Jira tickets.
## Demo data
Seeded product **ShipIt** — engineering PM SaaS vs Linear / Jira / Asana. Onboarding wizard is the leak: completion falling, Step 3 drop-off rising, mostly negative setup feedback.
## Run
```bash
cp deployment/.env.example deployment/.env # set PMOS_MCP_TOKEN
cd deployment && docker compose up --build
```
Health: `GET http://localhost:8000/health` · MCP: `http://localhost:8000/mcp`
Client:
```json
{
"mcpServers": {
"pmos": {
"url": "http://localhost:8000/mcp",
"headers": { "Authorization": "Bearer <PMOS_MCP_TOKEN>" }
}
}
}
```
Optional Jira: `JIRA_URL`, `JIRA_EMAIL`, `JIRA_API_TOKEN`, `JIRA_PROJECT` in `deployment/.env`. Missing creds → local stub. Need a real **Jira Software** project (not Atlas).
```bash
cd mcp && python tests/run_tests.py
```
SQLite locally if `PMOS_DATABASE_URL` is unset; Postgres in Docker.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues