Install
$ agentstack add mcp-vinnyfds-docagent ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
DocAgent - AI-Powered Document Generation Suite
[](https://python.org) [](https://gofastmcp.com) [](https://github.com/langchain-ai/langgraph) [](https://opensource.org/licenses/MIT)
> AI-powered document generation suite with LangGraph workflows and Cursor IDE integration via MCP (Model Context Protocol)
DocAgent is a comprehensive document generation system that creates professional software documentation using AI. It integrates seamlessly with Cursor IDE through MCP servers and supports 12 different document types with orchestrated workflows.
🚀 Features
Document Types
- 📋 Business Requirements (BRD/PRD) - Product and business requirement documents
- ⚙️ Functional Requirements (FRD) - Detailed functional specifications
- 🏗️ System Requirements (SRD) - System architecture and requirements
- 🧪 Technical Requirements (TRD/TDD) - Technical design and test documents
- 🗄️ Database Design (ERD/API) - Entity relationship diagrams and API specs
- 🎨 UI/UX Design - Wireframes and design system documentation
- 📊 Project Planning - Project plans and milestone tracking
- ✅ Test Strategy - Comprehensive testing documentation
- 🚀 CI/CD Documentation - Deployment and environment setup
- 📦 Release Runbooks - Release procedures and rollback plans
Core Capabilities
- 🔄 LangGraph Workflows - Parallel document generation with conditional logic
- 🎯 Smart Orchestration - Profile-based generation (Full, Lean, Tech-only, PM-only)
- 💻 Cursor IDE Integration - Native MCP server integration
- 🛡️ Safe File Operations - Collision detection and backup systems
- 📝 Jinja2 Templates - Customizable document templates
- ⚡ FastMCP v2 - Modern MCP protocol implementation
- 🔧 CLI Tools - Command-line interface for batch operations
📦 Installation
Prerequisites
- Python 3.9+
- Cursor IDE
- Git
Quick Setup
# Clone the repository
git clone https://github.com/vinnyfds/docagent.git
cd docagent
# Install dependencies
pip install -r requirements.txt
# Create environment file
cp .env.template .env
# Edit .env with your API keys
# Verify installation
python scripts/verify_mcp.py
Cursor IDE Integration
# Install FastMCP
pip install fastmcp
# The MCP servers will be automatically configured in Cursor
# Restart Cursor to load the DocAgent tools
🎯 Quick Start
Using Cursor IDE (Recommended)
- Open any file in Cursor
- Type
/to open command palette - Look for DocAgent tools:
ping()- Health checkgenerate_all()- Generate all documentsorchestrate_docgen()- Profile-based generation
Using CLI
# Generate all documents
python scripts/cli_generate.py --idea tests/fixtures/idea_sample.json --all
# Generate specific documents
python scripts/cli_generate.py --idea my_idea.json --docs brd_prd frd srd
# Use orchestration profiles
python -c "
from orchestrator.graph import orchestrate_docgen
from docs_agent.state import Idea
import json
with open('tests/fixtures/idea_sample.json') as f:
data = json.load(f)
idea = Idea(**data)
result = orchestrate_docgen(idea, profile='lean', overwrite=False)
print('Generated:', result)
"
🏗️ Architecture
System Overview
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Cursor IDE │◄──►│ FastMCP Server │◄──►│ LangGraph │
│ │ │ │ │ Workflow │
│ - Command Palette│ │ - DocGenAgent │ │ │
│ - Tools Integration │ │ - Orchestrator │ │ - Parallel Nodes│
│ - MCP Protocol │ │ - Tool Registry │ │ - Conditional │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌──────────────────┐
│ Document Engine │
│ │
│ - Jinja2 Templates│
│ - Safe File Ops │
│ - Output Manager │
└──────────────────┘
Project Structure
docagent/
├── docs_agent/ # Core document generation agent
│ ├── __init__.py # Package initialization
│ ├── state.py # Pydantic models (Idea, Context, DocRequest)
│ ├── graph.py # LangGraph workflow definition
│ ├── server.py # FastMCP server implementation
│ ├── nodes/ # Document generation nodes
│ │ ├── brd_prd.py # Business requirements
│ │ ├── frd.py # Functional requirements
│ │ ├── srd.py # System requirements
│ │ └── ... # Other document types
│ ├── prompts/ # Jinja2 templates
│ │ ├── brd_prd.md.jinja
│ │ ├── openapi.yaml.jinja
│ │ └── ...
│ └── utils/ # Utilities
│ ├── render.py # Template rendering
│ └── safety.py # Safe file operations
├── orchestrator/ # Orchestration layer
│ ├── graph.py # Orchestration logic
│ └── server.py # Orchestrator MCP server
├── scripts/ # CLI and utilities
│ ├── cli_generate.py # Command-line interface
│ ├── verify_mcp.py # Installation verification
│ └── test_mcp_servers.py # Server testing
├── tests/ # Test suite
│ └── fixtures/ # Test data
│ └── idea_sample.json
├── outputs/ # Generated documents
├── .cursor_rules # Cursor IDE guardrails
├── requirements.txt # Python dependencies
├── .env.template # Environment template
└── README.md # This file
🎮 Usage Examples
Idea Structure
{
"title": "E-commerce Platform",
"description": "Modern e-commerce platform with AI recommendations",
"context": {
"domain": "E-commerce",
"stakeholders": ["Product Manager", "Engineering Team", "UX Designer"],
"timeline": "6 months",
"budget": "$500K"
},
"personas": [
{"name": "Customer", "description": "Online shoppers"},
{"name": "Admin", "description": "Platform administrators"}
],
"modules": [
{"name": "User Management", "description": "User registration and profiles"},
{"name": "Product Catalog", "description": "Product browsing and search"},
{"name": "Shopping Cart", "description": "Cart and checkout functionality"}
],
"entities": [
{"name": "User", "fields": ["id", "email", "profile"]},
{"name": "Product", "fields": ["id", "name", "price", "inventory"]}
],
"apis": [
{"name": "User API", "methods": ["GET", "POST", "PUT", "DELETE"]},
{"name": "Product API", "methods": ["GET", "POST", "PUT"]}
]
}
Orchestration Profiles
PROFILES = {
"full": [
"brd_prd", "frd", "srd", "trd_tdd", "erd_api",
"ui_wireframes", "project_plan", "test_strategy",
"cicd_env", "release_runbook"
],
"lean": ["brd_prd", "frd", "srd", "erd_api"],
"tech_only": ["srd", "trd_tdd", "erd_api", "cicd_env"],
"pm_only": ["brd_prd", "project_plan", "test_strategy", "release_runbook"]
}
🛠️ Development
Running Tests
# Run verification tests
python scripts/verify_mcp.py
# Test MCP servers
python scripts/test_mcp_servers.py
# Generate sample documents
python scripts/cli_generate.py --idea tests/fixtures/idea_sample.json --all
Code Quality
# Install development dependencies
pip install ruff pytest
# Run linting
ruff check .
# Run tests
pytest -v
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
🔧 Configuration
Environment Variables
# Required
OPENAI_API_KEY=your_openai_api_key_here
# Optional
DOCGEN_BUCKET=your_s3_bucket_for_outputs
ALLOW_OVERWRITE=false
LOG_LEVEL=INFO
ENVIRONMENT=development
MCP_HOST=localhost
MCP_PORT=3000
Cursor MCP Setup
The MCP servers are automatically configured for Cursor IDE. Manual configuration:
{
"mcpServers": {
"DocGenAgent": {
"command": "cmd",
"args": ["/c", "python", "docs_agent/server.py"],
"cwd": "/path/to/docagent"
},
"DocGenOrchestrator": {
"command": "cmd",
"args": ["/c", "python", "orchestrator/server.py"],
"cwd": "/path/to/docagent"
}
}
}
📚 Documentation
- [Installation Guide](docs/installation.md)
- [MCP Setup Guide](MCP_SETUP.md)
- [Template Customization](docs/templates.md)
- [AWS Deployment](docs/aws-deployment.md)
- [API Reference](docs/api-reference.md)
🚀 Deployment
AWS Lambda (Coming Soon)
# Package for serverless deployment
npm install -g serverless
serverless deploy
Docker
# Build container
docker build -t docagent .
# Run container
docker run -p 3000:3000 docagent
🤝 Contributing
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
Contributors
- @vinnyfds - Creator & Maintainer
📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
🙏 Acknowledgments
- LangGraph - Workflow orchestration
- FastMCP - MCP server framework
- Cursor IDE - AI-powered development environment
- Jinja2 - Template engine
📧 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: vinnyfds@gmail.com
🎯 Transform your ideas into comprehensive documentation with AI-powered precision!
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: vinnyfds
- Source: vinnyfds/docagent
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.