Skip to main content
Glama

Gemini MCP Server

code_quality_checks.shโ€ข3.1 kB
#!/bin/bash # Zen MCP Server - Code Quality Checks # This script runs all required linting and testing checks before committing changes. # ALL checks must pass 100% for CI/CD to succeed. set -e # Exit on any error echo "๐Ÿ” Running Code Quality Checks for Zen MCP Server" echo "=================================================" # Determine Python command if [[ -f ".zen_venv/bin/python" ]]; then PYTHON_CMD=".zen_venv/bin/python" PIP_CMD=".zen_venv/bin/pip" echo "โœ… Using venv" elif [[ -n "$VIRTUAL_ENV" ]]; then PYTHON_CMD="python" PIP_CMD="pip" echo "โœ… Using activated virtual environment: $VIRTUAL_ENV" else echo "โŒ No virtual environment found!" echo "Please run: ./run-server.sh first to set up the environment" exit 1 fi echo "" # Check and install dev dependencies if needed echo "๐Ÿ” Checking development dependencies..." DEV_DEPS_NEEDED=false # Check each dev dependency for tool in ruff black isort pytest; do # Check if tool exists in venv or in PATH if [[ -f ".zen_venv/bin/$tool" ]] || command -v $tool &> /dev/null; then continue else DEV_DEPS_NEEDED=true break fi done if [ "$DEV_DEPS_NEEDED" = true ]; then echo "๐Ÿ“ฆ Installing development dependencies..." $PIP_CMD install -q -r requirements-dev.txt echo "โœ… Development dependencies installed" else echo "โœ… Development dependencies already installed" fi # Set tool paths if [[ -f ".zen_venv/bin/ruff" ]]; then RUFF=".zen_venv/bin/ruff" BLACK=".zen_venv/bin/black" ISORT=".zen_venv/bin/isort" PYTEST=".zen_venv/bin/pytest" else RUFF="ruff" BLACK="black" ISORT="isort" PYTEST="pytest" fi echo "" # Step 1: Linting and Formatting echo "๐Ÿ“‹ Step 1: Running Linting and Formatting Checks" echo "--------------------------------------------------" echo "๐Ÿ”ง Running ruff linting with auto-fix..." $RUFF check --fix --exclude test_simulation_files --exclude .zen_venv echo "๐ŸŽจ Running black code formatting..." $BLACK . --exclude="test_simulation_files/" --exclude=".zen_venv/" echo "๐Ÿ“ฆ Running import sorting with isort..." $ISORT . --skip-glob=".zen_venv/*" --skip-glob="test_simulation_files/*" echo "โœ… Verifying all linting passes..." $RUFF check --exclude test_simulation_files --exclude .zen_venv echo "โœ… Step 1 Complete: All linting and formatting checks passed!" echo "" # Step 2: Unit Tests echo "๐Ÿงช Step 2: Running Complete Unit Test Suite" echo "---------------------------------------------" echo "๐Ÿƒ Running unit tests (excluding integration tests)..." $PYTHON_CMD -m pytest tests/ -v -x -m "not integration" echo "โœ… Step 2 Complete: All unit tests passed!" echo "" # Step 3: Final Summary echo "๐ŸŽ‰ All Code Quality Checks Passed!" echo "==================================" echo "โœ… Linting (ruff): PASSED" echo "โœ… Formatting (black): PASSED" echo "โœ… Import sorting (isort): PASSED" echo "โœ… Unit tests: PASSED" echo "" echo "๐Ÿš€ Your code is ready for commit and GitHub Actions!" echo "๐Ÿ’ก Remember to add simulator tests if you modified tools"

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/BeehiveInnovations/gemini-mcp-server'

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