Provides project templates for creating Blazor .NET web applications with predefined structure and boilerplate code
Supports creation of web projects with CSS styling through HTML/CSS/JavaScript templates
Provides project templates for creating Django web applications with basic project structure and configuration
Enables creation of Node.js Express API projects with predefined template structure and boilerplate code
Provides project templates for creating FastAPI applications with basic project structure and configuration
Enables creation of Flask web applications with predefined templates and basic project structure
Provides tools for initializing Git repositories in project directories
Supports creation of JavaScript-based web projects through various HTML/JS/CSS templates
Provides project templates for creating .NET applications, particularly Blazor web applications
Enables creation of Next.js projects with Shadcn UI and Tailwind CSS configuration through predefined templates
Provides project templates for creating Node.js applications, particularly Express API projects
Provides tools for executing npm commands safely within project directories for package management
Enables creation of Python projects using Django, FastAPI, and Flask templates, plus tools for executing Python commands
Provides project templates for creating React applications with TypeScript configuration and boilerplate code
Supports creation of Next.js projects preconfigured with Tailwind CSS for utility-first styling
Enables creation of TypeScript-based React projects with predefined templates and configuration
Project Creator MCP
Overview
project-creator-mcp is a Model Context Protocol (MCP) server built with FastMCP that enables AI assistants to create, manage, and scaffold complete project structures. It provides a comprehensive suite of tools for file system operations, project generation from templates, and command execution—all accessible through natural language interactions with MCP-compatible AI clients like Claude Desktop, Cline, and others.
Whether you're building a simple HTML page, a full-stack web application, or a containerized microservice, this tool streamlines project setup and lets you focus on writing code.
Features
🚀 20+ Project Templates: Pre-configured templates for popular frameworks and languages including React, Next.js, Vue, Angular, FastAPI, Flask, Django, Express, Go Gin, and more
🐳 Docker Support: Templates for Dockerfiles and Docker Compose configurations (Python, Node.js, Go, full-stack setups)
🤖 AI-Native Interface: Natural language project creation through MCP-compatible AI assistants
📁 File System Tools: Create, read, copy, and manage files and directories programmatically
⚡ Command Execution: Safe execution of npm, Python, and system commands with proper error handling
🔧 Extensible: Easily add custom templates using Python generator scripts
🎯 FastMCP Powered: Built on FastMCP for optimal performance and developer experience
Prerequisites
Python 3.8+ installed and accessible via
pythoncommandpip (Python package installer)
Node.js and npm (for JavaScript/TypeScript templates)
MCP-compatible AI client (Claude Desktop, Cline, or other MCP clients)
Installation
Clone the repository:
git clone https://github.com/jackalterman/project-creator-mcp.git cd project-creator-mcpInstall dependencies:
pip install -r requirements.txt
Configuration
Claude Desktop
Locate your Claude Desktop configuration file:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Add the MCP server configuration:
{ "mcpServers": { "project-creator": { "command": "python", "args": ["C:\\absolute\\path\\to\\project-creator-mcp\\project_builder.py"], "env": { "PYTHONUNBUFFERED": "1" } } } }Replace the path with the actual absolute path to
Restart Claude Desktop to load the MCP server.
Other MCP Clients
For other MCP clients (Cline, etc.), refer to their documentation for configuring MCP servers. The server runs via:
Sample AI Prompts
Here are real-world examples of how to interact with AI assistants using this MCP server:
Basic Web Projects
React & Next.js Projects
Backend APIs
Docker & DevOps
MCP Server Development
Advanced Workflows
Available Templates
Web Frontend
html_js_css_separate_files: Modern HTML5 page with external CSS and JavaScript fileshtml_js_css_single_file: Single-file HTML page with embedded styles and scriptsreact_typescript: React application with TypeScript configurationnextjs_shadcn_tailwind: Next.js with ShadCN UI components and Tailwind CSSnextjs_auto: Next.js with default settings (non-interactive setup)vue_js: Vue.js application with Vue CLIangular_typescript: Angular application with TypeScript
Backend APIs
node_express_api: Node.js Express API with TypeScriptpython_fastapi: FastAPI application with modern Python async patternspython_flask: Flask web application with basic template structurepython_django: Django project with standard configurationgo_gin_api: Go API using the Gin web framework
MCP Servers
fast_mcp_python: FastMCP Python server templatefast_mcp_node: FastMCP Node.js server template
Docker & DevOps
docker_python: Multi-stage Dockerfile for Python applicationsdocker_node: Multi-stage Dockerfile for Node.js applicationsdocker_go: Multi-stage Dockerfile for Go applicationsdocker_compose_simple: Simple Docker Compose with app and databasedocker_compose_full_stack: Full-stack Docker Compose (web, database, cache, nginx)
Available MCP Tools
Project Management Tools
create_project_from_template(template_name, project_name, project_path)
Create a new project from a predefined templatetemplate_name: Template identifier (e.g., "react_typescript", "python_fastapi")project_name: Name for the new projectproject_path: Directory where project should be created (default: current directory)
list_available_templates()
List all available project templates with descriptionscreate_project_structure(project_name, structure, base_path)
Create a custom project structure from a nested dictionaryget_project_info(path)
Get information about a project directory (files, structure, metadata)
File System Tools
create_file(path, content, overwrite)
Create a file with specified contentread_file(path)
Read and return file contentscreate_directory(path)
Create a directory (creates parent directories if needed)list_directory(path)
List directory contents with detailed informationcopy_file_or_directory(source, destination)
Copy a file or directory to a new locationsearch_and_replace_in_file(file_path, search_pattern, replacement, use_regex)
Search and replace text in a file (supports regex)
Command Execution Tools
run_npm_command(command, cwd)
Execute npm commands safely (install, build, start, etc.)run_python_command(command, cwd)
Execute Python commands safely (pip, scripts, etc.)run_command(command, cwd, input)
Generic command runner with optional input for interactive promptsinitialize_git_repository(path)
Initialize a Git repository in the specified directory
Adding New Templates
To add custom templates, see the Adding New Templates.md guide. Templates can be:
Command-based: Execute CLI tools (e.g.,
create-react-app,django-admin)Script-based: Use Python generator scripts for custom structures
Security
This MCP server includes security features:
Path validation to prevent directory traversal attacks
Command sanitization for safe execution
Configurable allowed directories and commands
Input validation for all tool parameters
Contributing
Contributions are welcome! To contribute:
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-template)Commit your changes (
git commit -m 'Add amazing template')Push to the branch (
git push origin feature/amazing-template)Open a Pull Request
License
This project is open source and available under the MIT License.
Acknowledgments
Built with FastMCP by jlowin
Inspired by the Model Context Protocol specification
Thanks to all contributors and template creators
Need help? Open an issue on GitHub or check the Adding New Templates guide for customization options.