khair335/codeconnect-mcp-server
If you are the rightful owner of codeconnect-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
A Model Context Protocol (MCP) server that facilitates secure interactions between AI clients and developer tools like GitHub and Jira through structured requests.
MCP Server - Developer Tools Integration
A Model Context Protocol (MCP) server that enables AI clients to securely interact with developer tools like GitHub and Jira through structured requests.
🎯 Features
- MCP Protocol Implementation: Full Model Context Protocol compliance using official SDKs
- GitHub Integration: List issues, create issues, comment, fetch repository stats
- Jira Integration: List tickets, create tickets, update status with JQL support
- Secure Authentication: OAuth flows, JWT tokens, encrypted API key storage
- Real-time Demo: Interactive frontend showcasing MCP capabilities
- Dark Mode UI: Modern, responsive interface with dark theme
🏗 Architecture
mcp-server/
├── backend/ # Express.js + TypeScript server
│ ├── src/
│ │ ├── mcp/ # MCP protocol implementation
│ │ ├── services/ # GitHub/Jira API services
│ │ ├── models/ # MongoDB schemas
│ │ └── routes/ # API endpoints
├── frontend/ # React demo application
└── docs/ # Project documentation
🚀 Quick Start
Prerequisites
- Node.js 18+ and npm 8+
- MongoDB 5.0+
- GitHub OAuth App credentials
- Jira API token
Installation
-
Clone and setup
git clone <repository> cd mcp-server npm run install:all -
Environment Configuration
cp env.example .env # Edit .env with your API credentials -
Start Development Servers
# Start both backend and frontend npm run dev # Or start individually npm run dev:backend # Backend on :3001 npm run dev:frontend # Frontend on :3000
🛠 Development
Backend Development
cd backend
npm run dev # Start with hot reload
npm run build # Build for production
npm test # Run tests
npm run lint # Check code quality
Frontend Development
cd frontend
npm start # Start development server
npm run build # Build for production
npm test # Run tests
MCP Server
The MCP server runs on port 3002 and implements the Model Context Protocol for:
- Tool Registration: Dynamic tool discovery and schema definition
- Request Handling: Secure tool execution with parameter validation
- Response Formatting: Standardized MCP response structures
🔧 Configuration
Environment Variables
| Variable | Description | Default |
|---|---|---|
PORT | Backend server port | 3001 |
MCP_PORT | MCP server port | 3002 |
MONGODB_URI | MongoDB connection string | localhost:27017/mcp_server |
GITHUB_CLIENT_ID | GitHub OAuth app ID | - |
JIRA_API_TOKEN | Jira API token | - |
GitHub OAuth Setup
- Create OAuth App at GitHub Developer Settings
- Set callback URL to
http://localhost:3001/auth/github/callback - Add
GITHUB_CLIENT_IDandGITHUB_CLIENT_SECRETto.env
Jira API Setup
- Generate API token at Atlassian Account Settings
- Add
JIRA_DOMAIN,JIRA_EMAIL, andJIRA_API_TOKENto.env
📚 API Documentation
MCP Endpoints
POST /api/v1/mcp/tools/call- Execute MCP toolGET /api/v1/mcp/tools/list- List available toolsGET /api/v1/mcp/health- Server health check
Available Tools
GitHub Tools
github_list_issues- List repository issuesgithub_create_issue- Create new issuegithub_comment_issue- Comment on issuegithub_repo_stats- Fetch repository statistics
Jira Tools
jira_list_tickets- List tickets with JQLjira_create_ticket- Create new ticketjira_update_status- Update ticket status
🧪 Testing
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Watch mode
npm run test:watch
🚀 Deployment
Docker Deployment
# Build and run with Docker Compose
docker-compose up -d
# Or build individually
docker build -t mcp-server ./backend
docker run -p 3001:3001 mcp-server
Production Considerations
- Set
NODE_ENV=production - Use strong JWT secrets
- Enable HTTPS
- Set up monitoring and logging
- Configure database backups
🤝 Contributing
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
📄 License
This project is licensed under the MIT License - see the file for details.
🙏 Acknowledgments
- Model Context Protocol for the protocol specification
- Express.js for the web framework
- React for the frontend framework
- MongoDB for the database
📞 Support
For support and questions:
- Create an issue in this repository
- Check the
- Review the MCP specification
Happy coding! 🚀