Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (developer-onboarding-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Developer Onboarding MCP Server
An AI-powered developer onboarding system built as a Model Context Protocol (MCP) server. This tool provides role-based, personalized onboarding experiences for developers joining new projects, with intelligent project analysis and progress tracking.
🎯 Features
Role-Based Onboarding
- Frontend Developers: UI/UX components, styling systems, state management
- Backend Developers: APIs, databases, server architecture, business logic
- Testing Engineers: Testing strategies, automation frameworks, quality assurance
- DevOps Engineers: Infrastructure, CI/CD pipelines, deployment processes
- Full-Stack Developers: Complete system understanding across all layers
Intelligent Project Analysis
- Automatic tech stack detection
- Architecture pattern recognition
- Component mapping to roles
- Dependency analysis
- Complexity assessment
Personalized Learning
- Individual progress tracking
- Role-specific milestones
- Adaptive difficulty based on experience level
- Personalized recommendations
- Session persistence across multiple sessions
Comprehensive Tracking
- User profiles and preferences
- Session management
- Milestone completion tracking
- Time spent analytics
- Activity logging
🏗️ Architecture
Core Components
- MCP Server: Protocol-compliant server for Cursor integration
- Project Analyzer: Scans and understands project structure
- Role Identifier: Captures developer role and preferences
- Progress Tracker: Monitors onboarding milestones
- Documentation Generator: Creates role-specific guides
- User Manager: Handles profiles and sessions
Tools Available
identify-user-role
: Role selection and profile setupanalyze-project
: Project structure and tech stack analysistrack-progress
: Milestone and progress managementmanage-user
: User profile and session managementgenerate-documentation
: Role-specific guide generationanalyze-code
: Code patterns and best practicessetup-environment
: Environment validation and setup
Resources Available
project://
: Project structure, tech stack, and analysisonboarding://
: Session progress and milestone datauser://
: User profiles and personal dashboardsknowledge://
: Documentation, guides, and best practices
🚀 Getting Started
Prerequisites
- Node.js 18 or higher
- npm or pnpm
- Git
Installation
Clone the repository
git clone <repository-url> cd developer-onboarding-mcp
Install dependencies
npm install
Build the project
npm run build
Start the server
npm start
Development
Run in development mode
npm run dev
Run tests
npm test
Lint and format
npm run lint npm run format
🔧 Cursor Integration
Configure MCP in Cursor
Add to Cursor MCP settings (
~/.cursor/mcp_servers.json
):{ "servers": { "developer-onboarding": { "command": "node", "args": ["path/to/developer-onboarding-mcp/dist/index.js"], "env": {} } } }
Restart Cursor to load the MCP server
Verify connection by checking MCP tools are available
Usage in Cursor
Start onboarding:
Use the identify-user-role tool to begin the onboarding process
Analyze your project:
Use analyze-project with your project path to understand the structure
Track progress:
Use track-progress to monitor your learning milestones
📊 Database Schema
The system uses SQLite with the following main tables:
users
: Developer profiles and preferencesprojects
: Project metadata and analysis resultsuser_roles
: Role assignments per projectonboarding_sessions
: Active learning sessionsprogress_tracking
: Individual milestone progressrole_milestones
: Predefined learning milestonesuser_activity
: Activity and engagement logs
🛠️ Configuration
Environment Variables
LOG_LEVEL
: Logging level (debug, info, warn, error)DATABASE_PATH
: Custom database file location
Project Configuration
Create a .onboarding-config.json
in your project root for custom settings:
{
"projectType": "web",
"customRoles": ["data", "security"],
"skipSteps": ["environment_setup"],
"estimatedTime": 480
}
📈 Analytics and Insights
The system tracks comprehensive analytics:
- User Engagement: Session duration, activity patterns
- Learning Effectiveness: Completion rates, time estimates
- Project Complexity: Difficulty assessment accuracy
- Role Efficiency: Role-specific learning effectiveness
🤝 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
Development Guidelines
- Follow TypeScript strict mode
- Write comprehensive tests
- Use conventional commit messages
- Update documentation for new features
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built on the Model Context Protocol by Anthropic
- Inspired by developer onboarding best practices
- Designed for seamless Cursor IDE integration
📞 Support
For support and questions:
- Create an issue in this repository
- Review the troubleshooting guide in the knowledge base
- Check the documentation for common solutions
Happy Onboarding! 🚀