Skip to main content
Glama

MCP-Creator-MCP

README.md•9.22 kB
# 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 ![alt text](image.png) ## šŸš€ 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.*

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/angrysky56/mcp-creator-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server