Provides Docker image building and registry management capabilities, with templates for building and pushing Docker images to registries.
Offers comprehensive GitLab CI template management with specialized templates for build configurations, security scanning (SAST/SCA), and reusable components for CI/CD pipeline generation.
Includes build tools and CI templates specifically for Python applications, enabling automated building and deployment of Python projects.
MCP Server Demo
A demonstration Model Context Protocol (MCP) server that provides tools and resources for Java CI/CD workflows and GitLab CI template management.
📁 Repository Structure
🚀 Features
MCP Server Tools
- Mathematical Operations:
sum_two_numbers()
- Add two integers - CI/CD Template Management: Access to GitLab CI template resources
- Java Build Tools: Maven-based build commands and configurations
- Security Scanning: SAST and SCA scanning capabilities
- Docker Operations: Image building and registry management
- Deployment Automation: Environment-specific deployment commands
GitLab CI Templates
- Build Templates: Java and Python build configurations
- Security Scanning: SAST and SCA scanning templates
- Docker Integration: Image build and push templates
- Reusable Components: Template-based CI/CD pipeline generation
🛠️ Setup Instructions
Prerequisites
- Python 3.13 or higher
- uv package manager
Installation
- Clone the repository
- Install dependencies
- Verify installation
🚀 Starting the MCP Server
Method 1: Using uv run
Method 2: Direct execution
Method 3: Using the MCP CLI
🔧 Configuration
Environment Variables
The server uses standard MCP configuration. No additional environment variables are required for basic operation.
GitLab CI Templates
The ci-templates/
directory contains reusable GitLab CI templates:
build.gitlab-ci.yml
- Build job templates for Java and Pythonsast-scanner.gitlab-ci.yml
- Static Application Security Testing templatessca-scanner.gitlab-ci.yml
- Software Composition Analysis templatesbuild-image.gitlab-ci.yml
- Docker image build and push templates
📋 Usage Examples
Using the MCP Server Tools
- Add two numbers
- Access CI templates
Generating GitLab CI Files
The server provides resources to help generate GitLab CI configurations using the available templates:
- Java Application CI
- Uses
.build-java
template - Includes SAST and SCA scanning
- Docker image building and deployment
- Uses
- Python Application CI
- Uses
.build-python
template - Includes security scanning
- Container deployment capabilities
- Uses
🔍 Available Resources
File Resources
file://ci-templates/build.gitlab-ci.yml
- Java and Python build templatesfile://ci-templates/sast-scanner.gitlab-ci.yml
- SAST scanning templatesfile://ci-templates/sca-scanner.gitlab-ci.yml
- SCA scanning templatesfile://ci-templates/build-image.gitlab-ci.yml
- Docker build templates
Dynamic Resources
greeting://{name}
- Personalized greeting messagespipeline://{project_name}
- CI/CD pipeline statusproject://{project_name}
- Project informationtemplate://{template_name}
- Template information
🧪 Testing
Run the server in development mode
Test individual tools
📦 Dependencies
Core Dependencies
mcp[cli]>=1.11.0
- Model Context Protocol server and CLI tools
Development Dependencies
- Python 3.13+ for modern language features
- uv for fast dependency management
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🆘 Troubleshooting
Common Issues
- MCP server not starting
- Ensure Python 3.13+ is installed
- Verify dependencies with
uv sync
- Check for port conflicts
- Template access issues
- Verify
ci-templates/
directory exists - Check file permissions
- Ensure template files are properly formatted
- Verify
- GitLab CI generation problems
- Verify template syntax
- Check for missing template dependencies
- Ensure proper job inheritance
Getting Help
- Check the MCP documentation
- Review the template files in
ci-templates/
- Examine the server implementation in
server.py
🔗 Related Links
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
A Model Context Protocol server that provides tools and resources for Java CI/CD workflows and GitLab CI template management.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.Last updated -1262,433TypeScriptMIT License
- -securityAlicense-qualityA modular server that implements the Model Context Protocol standard, providing tools for interacting with GitHub, GitLab, Google Maps, Memory storage, and web automation through a unified gateway.Last updated -6733PythonApache 2.0
- AsecurityAlicenseAqualityA Model Context Protocol server that enables interaction with GitLab accounts to manage repositories, merge requests, code reviews, and CI/CD pipelines through natural language.Last updated -418TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to interact with Git repositories, providing tools to read, search, and manipulate Git repositories through commands like status, diff, commit, and branch management.Last updated -12PythonMIT License