MCP Software Engineer Server
A comprehensive Model Context Protocol (MCP) server that enables Claude to work as a full-stack software engineer with complete development capabilities.
Features
🚀 Project Management
- Project Creation: Initialize projects with popular frameworks (React, Vue, Angular, Express, FastAPI, Django, etc.)
- Full-Stack Templates: Ready-to-use templates with frontend, backend, and database integration
- Technology Stack Selection: Automatic setup with TypeScript, authentication, testing, and more
💾 Database Operations
- Multi-Database Support: PostgreSQL, MySQL, SQLite, MongoDB, Redis
- ORM Integration: Prisma, TypeORM, Sequelize, Mongoose, Drizzle
- Migration Management: Create and run database migrations
- Model Generation: Auto-generate database models and schemas
- Seeding & Backup: Database seeding and backup utilities
🎨 Frontend Development
- Component Generation: Create React, Vue, Angular, Svelte components
- Styling Solutions: Tailwind CSS, Bootstrap, Material-UI, Styled Components
- Page & Routing: Setup pages with routing (React Router, Vue Router, etc.)
- State Management: Redux, Zustand, Vuex, Pinia, NgRx
- Form Handling: React Hook Form, Formik, VeeValidate with validation
- Bundle Optimization: Webpack, Vite optimization configurations
⚙️ Backend Development
- API Endpoints: RESTful API creation with full CRUD operations
- Authentication: JWT, OAuth2, Passport.js, session-based auth
- Middleware: Custom middleware for auth, CORS, rate limiting, logging
- WebSockets: Real-time communication setup
- Background Jobs: Task queues with Bull, Agenda, Celery
- Validation: Request validation with Joi, Yup, Zod, Pydantic
🚢 Deployment & DevOps
- Containerization: Docker and Docker Compose generation
- Cloud Deployment: AWS, GCP, Azure, Vercel, Netlify, Heroku
- CI/CD Pipelines: GitHub Actions, GitLab CI, Jenkins
- SSL/TLS: Let's Encrypt, Cloudflare, AWS ACM
- Load Balancing: Nginx, HAProxy, cloud load balancers
- Monitoring: Prometheus, Grafana, Sentry, DataDog
🧪 Testing & Quality
- Testing Frameworks: Jest, Vitest, Pytest, Mocha
- Test Types: Unit, integration, end-to-end testing
- Code Quality: ESLint, Prettier, Git hooks with Husky
- Security Scanning: Dependency and code vulnerability scanning
🔧 Development Tools
- Version Control: Git repository initialization with best practices
- File Operations: Advanced file system operations
- Caching: Redis, Memcached, in-memory caching
- Message Queues: RabbitMQ, Kafka, SQS, Redis queues
- AI Integration: OpenAI, Anthropic, HuggingFace, TensorFlow
Installation
- Clone the repository:
git clone <repository-url>
cd mcp-software-engineer
- Install dependencies:
npm install
- Build the server:
npm run build
- Configure Claude Desktop: Add to your Claude Desktop configuration file:
{
"mcpServers": {
"software-engineer": {
"command": "node",
"args": ["/path/to/mcp-software-engineer/dist/index.js"],
"env": {}
}
}
}
Available Tools
Project & File Management
create_project- Create new projects with various frameworksread_file- Read file contentswrite_file- Write content to filescreate_directory- Create directory structureslist_files- List files and directoriessearch_files- Search for text patterns in files
Database Tools
init_database- Initialize database with ORMcreate_migration- Create database migrationsrun_migrations- Execute migrationsgenerate_model- Generate database modelsseed_database- Create and run database seedsbackup_database- Create database backupsquery_database- Execute database queries
Web Development
create_component- Generate frontend componentssetup_styling- Configure CSS frameworkscreate_page- Create pages with routingsetup_routing- Configure routing systemssetup_state_management- Setup state managementsetup_forms- Configure form handlingoptimize_bundle- Optimize build configurations
Backend Development
create_api_endpoint- Create RESTful API endpointssetup_authentication- Configure authentication systemscreate_middleware- Create custom middlewaresetup_validation- Configure request validationsetup_websockets- Setup WebSocket supportcreate_background_job- Create background taskssetup_logging- Configure logging systems
Deployment & DevOps
create_dockerfile- Generate optimized Dockerfilescreate_docker_compose- Create Docker Compose configurationsdeploy_to_cloud- Deploy to cloud providerssetup_ci_cd- Configure CI/CD pipelinessetup_monitoring- Setup application monitoringsetup_ssl- Configure SSL/TLS certificatessetup_load_balancer- Setup load balancing
Testing & Quality
setup_testing- Configure testing frameworkscreate_test- Generate test filesrun_tests- Execute tests with coveragesecurity_scan- Run security scans
Git & Version Control
init_repository- Initialize Git repositorycreate_branch- Create and switch branchescommit_changes- Stage and commit changessetup_hooks- Configure Git hooks
Usage Examples
Create a Full-Stack Application
// Create a new full-stack project
await createProject({
name: "my-app",
type: "full-stack",
path: "/projects",
features: ["typescript", "database", "auth", "testing", "docker"]
});
// Setup database
await initDatabase({
type: "prisma",
database: "postgresql",
projectPath: "/projects/my-app"
});
// Create API endpoints
await createApiEndpoint({
name: "User",
framework: "express",
methods: ["GET", "POST", "PUT", "DELETE"],
authentication: true,
validation: true,
projectPath: "/projects/my-app"
});
Setup Frontend with React
// Create React components
await createComponent({
name: "UserProfile",
framework: "react",
type: "functional",
projectPath: "/projects/my-app",
styling: "tailwind",
withTests: true
});
// Setup state management
await setupStateManagement({
type: "zustand",
framework: "react",
projectPath: "/projects/my-app"
});
Deploy to Cloud
// Create Dockerfile
await createDockerfile({
framework: "node",
type: "full-stack",
projectPath: "/projects/my-app"
});
// Setup CI/CD
await setupCiCd({
platform: "github-actions",
projectPath: "/projects/my-app",
stages: ["test", "build", "deploy"],
deploymentTarget: "aws"
});
Requirements
- Node.js 18 or higher
- npm or yarn
- Git
- Docker (optional, for containerization)
- Various language runtimes depending on project type
Contributing
- Fork the repository
- Create a feature branch
- Add your improvements
- Write tests for new functionality
- Submit a pull request
License
MIT License - see LICENSE file for details
Support
For issues and feature requests, please use the GitHub issue tracker.
