Skip to main content
Glama
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.

Maintenance

ActivityMaintained
ResponsivenessNo issues