PRD Generator MCP Server
The PRD Generator MCP server (ainative-prd-mcp) provides 18 tools for creating, validating, and managing Product Requirement Documents. It has built-in knowledge of all 22 AINative products and 1,968 API endpoints.
npm i ainative-prd-mcp
Full functionality (AI generation, PRD persistence, semantic search) requires a ZeroDB API key. Template rendering, validation, and platform discovery work without an account. The server auto-provisions a free instance on first run if no credentials are found.
Quick Start
npx ainative-prd-mcp
On first run without credentials, the server:
- Provisions a free ZeroDB instance (~800ms)
- Saves credentials to
.mcp.jsonand.env - Prints a claim URL to take permanent ownership
Setup
Claude Code / Cursor / Windsurf
{
"mcpServers": {
"prd-generator": {
"command": "npx",
"args": ["-y", "ainative-prd-mcp"],
"env": {
"ZERODB_API_KEY": "ak_your_key",
"ZERODB_API_URL": "https://api.ainative.studio"
}
}
}
}
Remote MCP (HTTP Transport)
{
"mcpServers": {
"prd-generator": {
"url": "https://mcp.ainative.studio/prd-generator",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}
Auto-Provisioning (No API Key)
{
"mcpServers": {
"prd-generator": {
"command": "npx",
"args": ["-y", "ainative-prd-mcp"]
}
}
}
Tools Reference
Generation Tools (4)
prd_generate
Generate a full PRD with AI and AINative platform context. Auto-detects relevant services and saves to ZeroDB.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
product_name | string | yes | Name of the product or feature |
description | string | yes | What needs to be built |
target_audience | string | yes | Who will use it |
core_features | string[] | yes | List of core features |
constraints | string[] | no | Technical or business constraints |
template | string | no | Template: standard, ainative-feature, agent-capability |
issue_number | integer | no | GitHub issue to link |
ainative_services | string[] | no | AINative services to use (auto-detected if omitted) |
additional_context | string | no | Extra context or requirements |
Example:
{
"product_name": "Agent Webhooks",
"description": "Webhook notifications for agent lifecycle events",
"target_audience": "Developers using Agent Cloud",
"core_features": ["Registration", "Event filtering", "Retry logic"],
"template": "ainative-feature",
"ainative_services": ["Agent Cloud", "ZeroDB"]
}
prd_generate_section
Generate or regenerate a single section without touching the rest of the PRD.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
section_name | string | yes | Section to generate (e.g., technical_architecture, user_stories) |
prd_id | string | no | Existing PRD ID for context |
context | string | no | Additional context for this section |
prd_refine
Refine an existing PRD based on feedback. Version history tracked automatically.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
prd_id | string | yes | Saved PRD ID |
feedback | string | yes | What needs to change |
sections_to_update | string[] | no | Limit to specific sections |
prd_from_issue
Generate a PRD from a GitHub issue number.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
issue_number | integer | yes | GitHub issue number |
repo | string | no | Repository (default: AINative-Studio/core) |
template | string | no | Template to use (default: ainative-feature) |
Template Tools (4)
prd_list_templates
List built-in and custom templates.
prd_get_template
Get a template by name with placeholder variables.
| Name | Type | Required | Description |
|---|---|---|---|
name | string | yes | Template name |
prd_create_template
Create a custom template stored persistently in ZeroDB.
| Name | Type | Required | Description |
|---|---|---|---|
name | string | yes | Template name |
description | string | yes | What it's for |
content | string | yes | Markdown with {{PLACEHOLDER}} variables |
prd_render_template
Render a template with variable substitution (no AI, deterministic).
| Name | Type | Required | Description |
|---|---|---|---|
template_name | string | yes | Template to render |
variables | object | yes | Key-value pairs for substitution |
Validation Tools (3)
prd_validate
Validate against 15 quality rules and AINative architecture constraints.
| Name | Type | Required | Description |
|---|---|---|---|
content | string | conditional | PRD markdown (or use prd_id) |
prd_id | string | conditional | Saved PRD to validate |
strict | boolean | no | Include AINative-specific rules (default: true) |
Rules include:
- Structure: title, introduction, features, acceptance criteria, timeline
- Content: problem statement, user stories, test plan, security
- AINative: correct API paths, ZeroDB usage, no third-party memory (Supabase/Firebase rejected)
prd_score
Score completeness 0-100 with letter grade.
| Name | Type | Required | Description |
|---|---|---|---|
content | string | conditional | PRD markdown |
prd_id | string | conditional | Saved PRD ID |
Returns: { score: 85, grade: "B", breakdown: { ... } }
prd_check_api_refs
Verify all API endpoint and service references actually exist in the AINative platform.
| Name | Type | Required | Description |
|---|---|---|---|
content | string | conditional | PRD markdown |
prd_id | string | conditional | Saved PRD ID |
Memory Tools — ZeroDB-Powered (4)
prd_save
Save a PRD as a persistent ZeroDB plan artifact with automatic version tracking.
| Name | Type | Required | Description |
|---|---|---|---|
title | string | yes | PRD title |
content | string | yes | Full PRD markdown |
tags | string[] | no | Tags for categorization |
Returns: { prd_id: "uuid", saved: true }
prd_load
Load a saved PRD by ID. Use at session start to resume work.
| Name | Type | Required | Description |
|---|---|---|---|
prd_id | string | yes | Artifact ID from prd_save |
prd_search
Semantic search across all saved PRDs. Find by topic, not just keywords.
| Name | Type | Required | Description |
|---|---|---|---|
query | string | yes | Natural language query |
limit | integer | no | Max results (default 10) |
tags | string[] | no | Filter by tags |
prd_history
Get version history showing how a PRD evolved over time (unified diffs).
| Name | Type | Required | Description |
|---|---|---|---|
prd_id | string | yes | Artifact ID |
Platform Discovery Tools (3)
prd_list_services
List all 22 AINative products with descriptions, API prefixes, SDKs, and pricing.
| Name | Type | Required | Description |
|---|---|---|---|
category | string | no | Filter by category |
verbose | boolean | no | Include features, SDKs, endpoints |
prd_get_api_catalog
Get API details for a specific AINative service.
| Name | Type | Required | Description |
|---|---|---|---|
service | string | yes | Service name (e.g., "ZeroDB", "Agent Cloud") |
prd_suggest_stack
Given requirements, suggest which AINative services to use.
| Name | Type | Required | Description |
|---|---|---|---|
requirements | string | yes | What you need to build |
features | string[] | no | Required features |
constraints | string[] | no | Technical constraints |
Authentication
| Method | Config | Notes |
|---|---|---|
| API Key | ZERODB_API_KEY=ak_... | Recommended. Get one: npx zerodb-cli init |
| Username/Password | ZERODB_USERNAME + ZERODB_PASSWORD | Auto-refreshes JWT |
| Auto-provision | No config needed | Free instance on first run |
Source Code
- npm:
ainative-prd-mcp - GitHub:
AINative-Studio/ainative-prd-mcp