MCP-Creator-MCP
# MCP-Creator-MCP š
**A meta-MCP server that democratizes MCP server creation through AI-guided workflows and intelligent templates.**
Transform vague ideas into production-ready MCP servers with minimal cognitive overhead and maximum structural elegance.
## šÆ Vision
Creating MCP servers should be as simple as describing what you want. MCP Creator bridges the gap between idea and implementation, providing intelligent guidance, proven templates, and streamlined workflows.
## ⨠Core Features
- **š¤ AI-Guided Creation**: Get intelligent suggestions and best practices tailored to your use case
- **š Template Library**: Curated collection of proven MCP server patterns
- **š Workflow Engine**: Save and reuse creation workflows for consistent results
- **šØ Gradio Interface**: User-friendly web interface for visual server management
- **š§ Multi-Language Support**: Python, Gradio, and expanding language ecosystem
- **š Built-in Monitoring**: Server health checks and operational visibility
- **š”ļø Best Practices**: Automated validation and security recommendations

## š Quick Start
### Prerequisites
- Python 3.10 or higher
- uv package manager
- Claude Desktop (for MCP integration)
### Installation
```bash
# Clone and set up the project
git clone https://github.com/angrysky56/mcp-creator-mcp.git
cd mcp-creator-mcp
# Create and activate virtual environment
uv venv --python 3.12 --seed
source .venv/bin/activate
# Install dependencies
uv add -e .
# Configure environment
cp .env.example .env
# Edit .env with your API keys (see Configuration section)
```
### Basic Usage
#### Option 1: As an MCP Server (Recommended)
1. **Configure Claude Desktop**:
```bash
# Copy the example config
cp example_mcp_config.json ~/path/to/claude_desktop_config.json
# Edit paths and API keys as needed
```
2. **Start using in Claude Desktop**:
- Restart Claude Desktop
- Use tools like `create_mcp_server`, `list_templates`, `get_ai_guidance`
#### Option 2: Standalone Interface
```bash
# Launch the Gradio interface
uv run gradio_interface.py
# Or use the CLI
uv run mcp-creator-gui
```
## š Configuration
### Environment Variables
Create a `.env` file with your settings:
```env
# AI Model Providers (at least one required for AI guidance)
ANTHROPIC_API_KEY=your_anthropic_key_here
OPENAI_API_KEY=your_openai_key_here
OLLAMA_BASE_URL=http://localhost:11434
# MCP Creator Settings
DEFAULT_OUTPUT_DIR=./mcp_servers
LOG_LEVEL=INFO
# Gradio Interface
GRADIO_SERVER_PORT=7860
GRADIO_SHARE=false
```
### Claude Desktop Integration
1. **Edit your Claude Desktop config** (usually at `~/.config/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"mcp-creator": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-creator-mcp",
"run",
"python",
"main.py"
],
"env": {
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}
```
2. **Restart Claude Desktop**
## š ļø Usage Examples
### Creating Your First MCP Server
```python
# In Claude Desktop, ask:
"Create an MCP server called 'weather_helper' that provides weather data and forecasts"
# Or use the tool directly:
create_mcp_server(
name="weather_helper",
description="Provides weather data and forecasts",
language="python",
template_type="basic",
features=["tools", "resources"]
)
```
### Getting AI Guidance
```python
# Ask for specific guidance:
get_ai_guidance(
topic="security",
server_type="database"
)
# Or access guidance resources:
# Use resource: mcp-creator://guidance/sampling
```
### Managing Templates
```python
# List available templates
list_templates()
# Filter by language
list_templates(language="python")
```
## šļø Architecture
### Core Principles
- **Simplicity**: Each component has a single, clear responsibility
- **Predictability**: Consistent patterns reduce cognitive load
- **Extensibility**: Modular design enables easy customization
- **Reliability**: Comprehensive error handling and graceful degradation
### Component Overview
```
āāā src/mcp_creator/
ā āāā core/ # Core server functionality
ā ā āāā config.py # Clean configuration management
ā ā āāā template_manager.py # Template system
ā ā āāā server_generator.py # Server creation engine
ā āāā workflows/ # Workflow management
ā āāā ai_guidance/ # AI assistance system
ā āāā utils/ # Shared utilities
āāā templates/ # Template library
āāā ai_guidance/ # Guidance content
āāā mcp_servers/ # Generated servers (default)
```
## š Template System
### Available Templates
- **Python Basic**: Clean, well-structured foundation
- **Python with Resources**: Database and API integration patterns
- **Python with Sampling**: AI-enhanced server capabilities
- **Gradio Interface**: Interactive UI with MCP integration
### Creating Custom Templates
Templates use Jinja2 with clean abstractions:
```python
# Template structure
templates/languages/{language}/{template_name}/
āāā metadata.json # Template configuration
āāā template.py.j2 # Main template file
āāā README.md.j2 # Documentation template
```
## š Workflow System
### Saving Workflows
```python
save_workflow(
name="Database MCP Server",
description="Complete database integration workflow",
steps=[
{
"id": "collect_requirements",
"type": "input",
"config": {"fields": ["db_type", "connection_string"]}
},
{
"id": "security_review",
"type": "ai_guidance",
"config": {"topic": "database_security"}
},
{
"id": "generate_server",
"type": "generation",
"config": {"template": "python:database"}
}
]
)
```
## š§ Development
### Project Structure
The codebase follows clean architecture principles:
- **Separation of Concerns**: Each module has a single responsibility
- **Dependency Injection**: Components are loosely coupled
- **Error Boundaries**: Graceful failure handling throughout
- **Type Safety**: Comprehensive type hints and validation
### Adding New Templates
1. Create template directory: `templates/languages/{lang}/{name}/`
2. Add `metadata.json` with template configuration
3. Create `template.{ext}.j2` with Jinja2 template
4. Test with the template manager
### Contributing
1. Fork the repository
2. Create a feature branch with descriptive name
3. Follow the existing code patterns and style
4. Add tests for new functionality
5. Submit a pull request with clear description
## š”ļø Security & Best Practices
### Built-in Protections
- **Input Validation**: All user inputs are validated and sanitized
- **Process Management**: Proper cleanup prevents resource leaks
- **Error Handling**: Graceful failure with helpful messages
- **Logging**: Comprehensive operational visibility
### Recommended Practices
- Use environment variables for sensitive data
- Implement rate limiting for production deployments
- Regular security audits of generated servers
- Monitor server performance and resource usage
## š Troubleshooting
### Common Issues
**Server won't start:**
```bash
# Check dependencies
uv add -e .
# Verify configuration
cat .env
# Check logs
tail -f logs/mcp-creator.log
```
**Claude Desktop integration:**
```bash
# Verify config file syntax
python -m json.tool claude_desktop_config.json
# Check server connectivity
python main.py --test
```
**Template errors:**
```bash
# List available templates
uv run python -c "from src.mcp_creator import TemplateManager; print(TemplateManager().list_templates())"
```
## š Monitoring & Operations
### Health Checks
The server provides built-in health monitoring:
- **Resource usage tracking**
- **Error rate monitoring**
- **Performance metrics**
- **Template validation**
### Logging
All operations are logged to stderr (MCP compliance):
```bash
# View logs in real-time
python main.py 2>&1 | tee mcp-creator.log
```
## š What's Next?
- **Multi-language expansion**: TypeScript, Go, Rust templates
- **Cloud deployment**: Integration with major cloud platforms
- **Collaboration features**: Team workflows and template sharing
- **Advanced AI**: Enhanced code generation and optimization
- **Marketplace**: Community template and workflow ecosystem
## š License
MIT License - see [LICENSE](LICENSE) for details.
## š¤ Contributing
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## š¬ Support
- **Issues**: [GitHub Issues](https://github.com/angrysky56/mcp-creator-mcp/issues)
- **Discussions**: [GitHub Discussions](https://github.com/angrysky56/mcp-creator-mcp/discussions)
- **Documentation**: [Wiki](https://github.com/angrysky56/mcp-creator-mcp/wiki)
---
**Built with ā¤ļø for the MCP community**
*MCP Creator makes sophisticated AI integrations accessible to everyone, from hobbyists to enterprise teams.*
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose with no overlap: create_mcp_server generates new servers, get_ai_guidance provides development advice, list_templates shows available templates, and save_workflow stores reusable workflows. The descriptions reinforce these distinct functions, making tool selection unambiguous.
Three tools follow a consistent verb_noun pattern (create_mcp_server, list_templates, save_workflow), while get_ai_guidance uses a get_noun pattern that slightly deviates. The naming is still readable and predictable, with only minor inconsistency in verb choice.
Four tools is well-scoped for an MCP creation assistant, covering the core workflow: creating servers, getting guidance, listing templates, and saving workflows. Each tool earns its place without redundancy or obvious gaps in this focused domain.
The toolset covers the main MCP creation lifecycle: planning (guidance), setup (templates), execution (creation), and reuse (workflow saving). A minor gap exists in managing or modifying existing servers (e.g., update or delete operations), but agents can work around this given the server's focused scope.