Metadata-Version: 2.4
Name: ui-ticket-mcp
Version: 0.4.0
Summary: Review system MCP server for UI prototypes. Humans write comments in browser, AI agents resolve them via MCP.
Author: 0ics-srls
License-Expression: MIT
Project-URL: Homepage, https://github.com/0ics-srls/ui-ticket-mcp
Project-URL: Repository, https://github.com/0ics-srls/ui-ticket-mcp
Project-URL: Issues, https://github.com/0ics-srls/ui-ticket-mcp/issues
Keywords: mcp,review,ui,prototype,ai-agent,fastapi
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: mcp[cli]>=1.0.0
Requires-Dist: fastapi>=0.115.0
Requires-Dist: uvicorn[standard]>=0.30.0
Requires-Dist: aiosqlite>=0.20.0
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-asyncio; extra == "dev"
Requires-Dist: httpx; extra == "dev"

# ui-ticket-mcp

Review system for UI prototypes. Humans write comments in the browser, AI agents resolve them via MCP. One server serves both.

## Setup

Start the server:

```bash
PROJECT_ROOT=/path/to/your/project uvx ui-ticket-mcp
# → http://localhost:3200 (/mcp + /api)
```

Add to your `.mcp.json`:

```json
{
  "mcpServers": {
    "review-system": {
      "type": "http",
      "url": "http://localhost:3200/mcp"
    }
  }
}
```

Reviews are stored in `{PROJECT_ROOT}/.reviews/reviews.db` (auto-created, committable to git). Port configurable via `REVIEW_PORT` env var.

> **Fallback** if you don't have `uv`: `pip install ui-ticket-mcp`, then run `ui-ticket-mcp`.

### MCP Tools

| Tool | Description |
|------|-------------|
| `get_review_summary()` | Summary of pages with open/resolved counts |
| `get_reviews(page_id?)` | List comments, optionally filtered by page |
| `add_review(page_id, author, text)` | Add a new comment |
| `resolve_review(review_id, resolved_by?)` | Mark as resolved |
| `reopen_review(review_id)` | Reopen a resolved review |
| `batch_resolve(page_id, resolved_by?)` | Resolve all open on a page |
| `get_pending_work()` | Open reviews grouped by page (todo list) |
| `find_source_file_tool(page_id)` | Find source files matching a page_id |
| `get_setup_guide()` | Full setup guide for the review system |

## REST API (for browser UI)

| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/reviews/summary` | Per-page summary |
| GET | `/api/reviews` | All reviews |
| GET | `/api/reviews/{page_id}` | Reviews for a page |
| POST | `/api/reviews/{page_id}` | Add review |
| PATCH | `/api/review/{id}` | Update status/text |
| DELETE | `/api/review/{id}` | Delete review |

## More

Full documentation: [github.com/0ics-srls/ui-ticket-mcp](https://github.com/0ics-srls/ui-ticket-mcp)
