# draftlytic-mcp [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/rbsoftwaresystems/draftlytic-mcp  
**GitHub Stars:** 0  
**npm Downloads (last month):** 240  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/draftlytic-mcp

## Description
Offline MCP server for planning structured project specs — validate, render, and checklist tools.

## Tools
Capabilities this server exposes over MCP:

- **validate_spec** — Zod-validates the spec and returns structured issues: errors for missing/empty required sections, placeholder text (`TBD`, `lorem ipsum`, `fixme`, etc.), and features without a priority — plus non-blocking quality hints like "no acceptance criteria on your must-haves" or "no non_goals listed".
- **render_prd** — Renders a validated spec into deterministic Markdown: title, overview, target audience, platforms, tech stack, features grouped by priority with acceptance-criteria checklists, screens & navigation, data model tables, constraints, and non-goals. Refuses to render (returns an error) if the spec has…
- **spec_checklist** — Returns the planning checklist grouped by category, each with 2-4 concrete questions. Each question is `{ prompt, options?, multiSelect? }` — questions with `options` are meant to be shown as selectable single/multi-choice answers (with a free-text escape), open ones stay free-text.
- **open_in_draftlytic** — Builds a link that opens your idea in the full Draftlytic app with the brief pre-filled — its guided AI question flow, richer generation, an editable spec editor, and PRD export live there. Compresses a spec (even a partial one) into a starting brief, or takes a plain-text idea. Builds the URL loca…

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "draftlytic-mcp": {
    "command": "npx",
    "args": ["-y","draftlytic-mcp"]
  }
}
```

## Documentation & README

# draftlytic-mcp

[![smithery badge](https://smithery.ai/badge/rbsoftwaresystems/draftlytic-mcp)](https://smithery.ai/servers/rbsoftwaresystems/draftlytic-mcp)

An MCP server that turns a rough project idea into a structured spec — right inside Claude Code, Cursor, or any MCP-compatible editor. No API key, no account, no network calls. It runs entirely on your machine and hands your editor's model a schema to write into, a checklist of what to ask about, a validator that catches gaps before you start coding, and a renderer that turns the result into a clean Markdown PRD.

This exists because "vibe coding" from a one-line prompt tends to produce a plausible-looking app that's missing half the decisions you actually needed to make — what's in scope for v1, what the data model looks like, what "done" means for a feature. draftlytic-mcp doesn't generate any of that for you; it structures the conversation so your model asks the right questions, then checks its own homework before you start building.

## Install

### Claude Code

```bash
claude mcp add draftlytic -- npx -y draftlytic-mcp
```

### Cursor

Add to `.cursor/mcp.json` in your project (or the global `~/.cursor/mcp.json`):

```json
{
  "mcpServers": {
    "draftlytic": {
      "command": "npx",
      "args": ["-y", "draftlytic-mcp"]
    }
  }
}
```

### Any other MCP client

Most MCP hosts read a generic `mcp.json` with the same shape:

```json
{
  "mcpServers": {
    "draftlytic": {
      "command": "npx",
      "args": ["-y", "draftlytic-mcp"]
    }
  }
}
```

## Usage

Once connected, ask your editor's model something like:

> Use the plan_project prompt for "a habit tracker that reminds me by text message"

It'll walk through `spec_checklist` with you (platform, tech stack, audience, features, competitors, revenue, constraints, data model, notifications, external services, design & UX — a handful of concrete questions per category, many offered as click-to-pick single/multi-select choices rather than blank prompts, with a free-text escape always available), draft a spec, run it through `validate_spec`, fix what comes back, and hand you a rendered PRD in Markdown you can drop straight into a coding-agent prompt, a `SPEC.md`, or a GitHub issue.

You can also call the tools directly if you already have a spec drafted (by hand, or from another source) and just want it checked and rendered.

## Tool reference

| Tool                 | Input                                             | What it does                                                                                                                                                                                                                                                                                                                            |
| -------------------- | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `validate_spec`      | `spec` (JSON object)                              | Zod-validates the spec and returns structured issues: errors for missing/empty required sections, placeholder text (`TBD`, `lorem ipsum`, `fixme`, etc.), and features without a priority — plus non-blocking quality hints like "no acceptance criteria on your must-haves" or "no non_goals listed".                                  |
| `render_prd`         | `spec` (JSON object)                              | Renders a validated spec into deterministic Markdown: title, overview, target audience, platforms, tech stack, features grouped by priority with acceptance-criteria checklists, screens & navigation, data model tables, constraints, and non-goals. Refuses to render (returns an error) if the spec has structural errors.           |
| `spec_checklist`     | —                                                 | Returns the planning checklist grouped by category, each with 2-4 concrete questions. Each question is `{ prompt, options?, multiSelect? }` — questions with `options` are meant to be shown as selectable single/multi-choice answers (with a free-text escape), open ones stay free-text.                                              |
| `open_in_draftlytic` | `spec` (JSON object, optional) or `idea` (string) | Builds a link that opens your idea in the full Draftlytic app with the brief pre-filled — its guided AI question flow, richer generation, an editable spec editor, and PRD export live there. Compresses a spec (even a partial one) into a starting brief, or takes a plain-text idea. Builds the URL locally; sends nothing anywhere. |

Plus one prompt:

| Prompt         | Args            | What it does                                                                                                                             |
| -------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `plan_project` | `idea` (string) | Instructs the model to interview the user with `spec_checklist`, draft a spec, validate and fix it in a loop, then render the final PRD. |

### The spec shape

```
{
  name: string
  overview: string
  target_audience: string
  platforms: string[]
  tech_stack: string[]
  features: Array<{
    title: string
    description: string
    priority: "must-have" | "nice-to-have" | "future"
    acceptance_criteria?: string[]
  }>
  screens?: Array<{ name: string; purpose: string }>
  data_model?: Array<{
    entity: string
    fields: Array<{ name: string; type: string; notes?: string }>
  }>
  constraints?: string[]
  non_goals?: string[]
  revenue_model?: string
}
```

## Honest limits

- **This is v1 and purely local.** There's no Draftlytic API behind it — every tool runs synchronous, offline logic against whatever spec JSON your editor's model hands it. It doesn't call any AI itself.
- **The model does the writing, this just structures it.** `validate_spec` and `spec_checklist` are heuristics, not a substitute for actually knowing what you're building. A spec that passes validation can still be a bad plan.
- **Placeholder detection is pattern-based**, not semantic. It catches `TBD`/`lorem ipsum`/`fixme`-style filler, not "this description is vague but technically real words."
- **No persistence.** Nothing is saved between calls — the spec JSON lives in the conversation. If you want it saved, ask your model to write it to a file.
- **No collaboration, no versioning, no export formats beyond Markdown.** It's a planning tool, not a project manager.

---

draftlytic-mcp is the offline sibling of [draftlytic.com](https://draftlytic.com?utm_source=github&utm_medium=mcp-readme) — the full editor adds AI generation, logo drafts, scan-for-gaps, and GitHub push.

