devops-practices

ai-4-devops/devops-practices
0 starsMITCommunity

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

AI-powered DevOps knowledge base with practices, templates, and automation tools

README.md

DevOps Practices - MCP Server

![CI/CD Pipeline](https://github.com/ai-4-devops/devops-practices/actions/workflows/ci.yml) ![License: MIT](https://opensource.org/licenses/MIT) ![Version](https://github.com/ai-4-devops/devops-practices/releases) ![MCP Registry](https://registry.modelcontextprotocol.io/?search=devops-practices) ![PyPI](https://pypi.org/project/devops-practices-mcp/)

mcp-name: io.github.ai-4-devops/devops-practices

Purpose: Productivity framework for DevOps engineers using AI assistance (Claude Code) while working on PoCs.

Type: Model Context Protocol (MCP) Server for Claude Code

Version: 1.4.0

Status: ๐ŸŽ‰ Officially Published in the MCP Registry (Published: February 18, 2026)

Published Versions:

  • ๐Ÿ“ฆ PyPI: v1.4.0 โ†’ Git tag v1.4.0 (34ca572)
  • ๐ŸŒ MCP Registry: v1.4.0 โ†’ Git tag v1.4.0 (34ca572)
  • ๐Ÿš€ Latest Development: main branch (may include unreleased features)

---

Who is this for? DevOps engineers using Claude Code (VS Code plugin) for PoC development. What it does: Provides structure (TRACKER, ISSUES, docs, SoPs) so you can focus on building without worrying about documentation overhead. What it's NOT: Not a DevOps tutorial - it's a productivity framework for AI-assisted development.

---

Why This MCP Server?

Solves the CLAUDE.md Bloat Problem

Tired of maintaining massive CLAUDE.md files (1000+ lines) across multiple projects? This MCP centralizes reusable DevOps instructions for engineers working on multiple PoCs, eliminating repeated instructions across projects and folders.

The Problem:

  • โŒ Large CLAUDE.md files eat up context window
  • โŒ Same practices duplicated across every project
  • โŒ Reinventing TRACKER.md, ISSUES.md, docs, SoPs for every PoC
  • โŒ Inconsistent standards across projects
  • โŒ Context wasted on instructions instead of actual work

The Solution:

  • โœ… Pre-built structure - Templates for TRACKER, ISSUES, docs, SoPs
  • โœ… Focus on work - Not on "how should I document this?"
  • โœ… Consistency - Same standards across all your PoCs
  • โœ… Team alignment - Same patterns enable seamless collaboration and easy handovers across sessions, systems, and team members
  • โœ… Faster startup - Copy template, start working
  • โœ… Context saved - No bloated CLAUDE.md files

What you get (structure, not knowledge):

  • ๐Ÿ“‹ TRACKER.md template - Start tracking immediately, don't design tracking
  • ๐Ÿ› ISSUES.md system - Start logging issues, don't setup Jira
  • ๐Ÿ“š Documentation standards - Start writing docs, don't debate structure
  • ๐Ÿ“– Runbook templates - Start documenting ops, don't create SoP formats
  • ๐Ÿ”„ Session continuity - Start handoffs, don't design handoff protocols

When searching "devops" in the MCP Registry (as of February 2026), this is the only result. While other MCPs focus on:

  • ๐Ÿ”ง Development tools (code generation, testing, debugging)
  • ๐Ÿ“Š Data analysis (databases, APIs, analytics)
  • ๐ŸŽจ Content creation (writing, design, media)

This MCP provides:

  • ๐Ÿ—๏ธ Configuration structure - How to organize configs per environment, generate new env configs from completed ones, create and validate SoPs
  • ๐Ÿ“š Documentation patterns - TRACKER, ISSUES, docs, runbook templates ready to copy
  • ๐Ÿ”„ Operations templates - Session handoff, runbook formats, documentation standards
  • ๐ŸŽฏ Structured guidance - GG-SS organized practices for quick discovery

What makes it different:

  • Prescriptive, not generative - Provides proven practices, not generated code
  • Infrastructure-first - Built for ops teams, not developers
  • Reusable patterns - Templates and standards across all your projects
  • AI-native design - Organized for Claude to query and apply contextually
  • R&D optimized - Accelerates proof-of-concept development and experimentation

Perfect for: DevOps engineers using Claude Code (VS Code plugin) to build PoCs and conduct R&D with AI assistance.

---

How It Works

No server management required:

  • โœ… Auto-start: Spawns when Claude Code/Desktop starts
  • โœ… Background: Runs silently while you work
  • โœ… On-demand: Claude queries practices as needed
  • โœ… Auto-stop: Shuts down when Claude closes
  • โœ… Fallback: Access practices via GitHub/local if MCP unavailable (see Troubleshooting)

Configuration Options:

You can configure the MCP server globally (all projects) or per-project:

Option 1: Global Configuration (~/.claude.json) ``json { "mcpServers": { "devops-practices": { "command": "python3", "args": ["-u", "~/.mcp-servers/devops-practices/mcp-server.py"], "env": {"PYTHONUNBUFFERED": "1"} } } } ``

Option 2: Project-Level Configuration (.mcp.json in project root) ``json { "mcpServers": { "devops-practices": { "command": "python3", "args": ["-u", "~/.mcp-servers/devops-practices/mcp-server.py"], "env": {"PYTHONUNBUFFERED": "1"} } } } ``

Setup Steps:

  1. Install the MCP server (see Installation section below)
  2. Add configuration to ~/.claude.json (global) or .mcp.json (per-project)
  3. Restart Claude Code/Desktop
  4. MCP server runs automatically - no manual startup needed

Note: The -u flag and PYTHONUNBUFFERED ensure real-time logging for debugging.

---

What This Provides

This MCP server provides shared DevOps practices that are common across infrastructure projects:

Available Practices (11)

Organized using GG-SS prefix pattern (Group-Sequence) for better discoverability:

Naming Pattern: GG-SS-practice-name

  • GG = Group ID (01-04) - Functional category
  • SS = Sequence ID (01-03) - Order within group
  • Example: 03-02-air-gapped-workflow = Group 03, Sequence 02

Group Legend:

  • 01 = Workflow & Processes (how to work effectively)
  • 02 = Version Control & Project Management (git, issues)
  • 03 = Infrastructure & Configuration (K8s, deployments, config)
  • 04 = Documentation Standards (docs, READMEs, runbooks)

---

Group 01: Workflow & Processes

  1. 01-01-session-continuity - State tracking, handoff protocols, CURRENT-STATE.md
  2. 01-02-task-tracking - TRACKER.md, CURRENT-STATE.md, PENDING-CHANGES.md
  3. 01-03-efficiency-guidelines - When to script vs copy-paste, batching commands

Group 02: Version Control & Project Management

  1. 02-01-git-practices - Using git mv, commit conventions, backup protocols, GitLab Flow
  2. 02-02-issue-tracking ๐Ÿ†• - In-repository Jira-like issue tracking system (Advanced)

Group 03: Infrastructure & Configuration

  1. 03-01-configuration-management โญ - Config organization, placeholders, environment isolation
  2. 03-02-air-gapped-workflow - Working across laptop, CloudShell, bastion, and EKS
  3. 03-03-standard-workflow - Common operational patterns and workflows

Group 04: Documentation Standards

  1. 04-01-documentation-standards - HOW/WHAT/WHY structure, naming conventions
  2. 04-02-readme-maintenance โญ - Directory documentation standards and best practices
  3. 04-03-runbook-documentation โญ - Mandatory session log standards and requirements

Available Templates (7)

  1. TRACKER.md - Task tracking template (milestones)
  2. CURRENT-STATE.md - Session handoff template
  3. CLAUDE.md - Simplified project instructions template
  4. RUNBOOK.md โญ - Session log template with all required sections
  5. ISSUE.md ๐Ÿ†• - Individual issue template (Advanced)
  6. ISSUES.md ๐Ÿ†• - Issue index template with stats dashboard (Advanced)
  7. issues/README.md ๐Ÿ†• - How to use the issue system (Advanced)

---

Architecture

devops-practices-mcp/
โ”œโ”€โ”€ README.md                    # This file
โ”œโ”€โ”€ mcp-server.py                # MCP server implementation
โ”œโ”€โ”€ requirements.txt             # Python dependencies
โ”œโ”€โ”€ .github/workflows/ci.yml     # GitHub Actions pipeline
โ”œโ”€โ”€ health-check.sh              # Health validation script
โ”œโ”€โ”€ practices/                   # Shared practice documents (11 files, GG-SS organized)
โ”‚   โ”œโ”€โ”€ 01-01-session-continuity.md
โ”‚   โ”œโ”€โ”€ 01-02-task-tracking.md
โ”‚   โ”œโ”€โ”€ 01-03-efficiency-guidelines.md
โ”‚   โ”œโ”€โ”€ 02-01-git-practices.md
โ”‚   โ”œโ”€โ”€ 02-02-issue-tracking.md  # ๐Ÿ†• Advanced: In-repo issue tracking
โ”‚   โ”œโ”€โ”€ 03-01-configuration-management.md
โ”‚   โ”œโ”€โ”€ 03-02-air-gapped-workflow.md
โ”‚   โ”œโ”€โ”€ 03-03-standard-workflow.md
โ”‚   โ”œโ”€โ”€ 04-01-documentation-standards.md
โ”‚   โ”œโ”€โ”€ 04-02-readme-maintenance.md
โ”‚   โ””โ”€โ”€ 04-03-runbook-documentation.md
โ”œโ”€โ”€ templates/                   # File templates (7 files)
โ”‚   โ”œโ”€โ”€ TRACKER-template.md
โ”‚   โ”œโ”€โ”€ CURRENT-STATE-template.md
โ”‚   โ”œโ”€โ”€ CLAUDE-template.md
โ”‚   โ”œโ”€โ”€ RUNBOOK-template.md
โ”‚   โ”œโ”€โ”€ ISSUE-TEMPLATE.md        # ๐Ÿ†• Individual issue template
โ”‚   โ”œโ”€โ”€ ISSUES.md                # ๐Ÿ†• Issue index with dashboard
โ”‚   โ””โ”€โ”€ issues-README.md         # ๐Ÿ†• Issue system guide
โ”œโ”€โ”€ tools/                       # Automation tools ๐Ÿ†•
โ”‚   โ””โ”€โ”€ issue-manager.sh         # CLI for managing issues
โ””โ”€โ”€ config/                      # MCP configuration
    โ””โ”€โ”€ mcp-config.json          # Server configuration

---

MCP Tools

The MCP server provides 5 tools for Claude to query practices and templates:

| Tool | Description | Example | |------|-------------|---------| | list_practices | List all available practices | Returns list of 10 practices | | get_practice | Get practice content by name | get_practice("01-02-task-tracking") | | list_templates | List all available templates | Returns list of 4 templates | | get_template | Get template content by name | get_template("TRACKER-template") | | render_template | Render template with variable substitution | render_template("TRACKER-template", {"PROJECT_NAME": "my-project"}) |

Template Variable Substitution

Templates support ${VARIABLE} placeholders that are automatically substituted:

Auto-provided variables:

  • ${DATE} - Current date (YYYY-MM-DD format)
  • ${TIMESTAMP} - UTC timestamp (YYYYMMDDTHHMMz format)
  • ${USER} - Current system user
  • ${YEAR} - Current year

Custom variables: Pass any additional variables when rendering: ``python render_template("RUNBOOK-template", { "SESSION_NUMBER": "1", "TITLE": "Kafka Deployment", "CLUSTER_NAME": "example-eks-uat", "OBJECTIVE_DESCRIPTION": "Deploy Kafka cluster to UAT" }) ``

All ${...} placeholders in the template are replaced with provided values.

---

CI/CD Pipeline

This repository includes a GitHub Actions pipeline (.github/workflows/ci.yml) that automatically validates changes:

Pipeline Jobs

On every merge request and commit to main/develop:

  1. health-check - Runs the comprehensive health check script
  2. python-validation - Validates Python syntax and dependencies
  3. practice-validation - Ensures all practice files exist
  4. template-validation - Ensures templates contain variable placeholders
  5. link-checker - Checks documentation cross-references

Benefits

  • โœ… Prevents breaking changes from reaching main branch
  • โœ… Catches missing files or syntax errors automatically
  • โœ… Ensures consistent quality standards
  • โœ… No manual validation needed

Pipeline Status

Check pipeline status in GitHub:

  • Green checkmark โœ… - All checks passed, safe to merge
  • Red X โŒ - Checks failed, review errors before merging

---

Documentation

Quick Reference

  • PRACTICE-INDEX.md - Quick lookup guide for which practice to use when
  • Organized by task type (deploying, documenting, troubleshooting, etc.)
  • Common scenarios with recommended practices
  • Practice dependencies and relationships

Migration Guide

  • MIGRATION-GUIDE.md - Roll out MCP to existing projects
  • Step-by-step migration from monolithic CLAUDE.md
  • Configuration setup for Claude Desktop/Code
  • Testing and validation procedures
  • Rollback plan if needed

Version History

  • CHANGELOG.md - Complete version history and upgrade guides
  • Version 1.0.0 (2026-02-13): 10 practices, 4 templates, health check tool
  • Version 0.1.0 (2026-02-13): Initial release

Health Check

  • health-check.sh - Validate MCP server before deployment
  • 14 comprehensive checks (directory structure, files, Python environment, loading tests)
  • Colored output with pass/fail counts
  • Exit codes: 0 (healthy), 1 (unhealthy)

Usage: ``bash cd devops-practices-mcp bash health-check.sh ``

---

How Projects Use This

Project CLAUDE.md Structure

Each project has a simplified CLAUDE.md:

# Claude AI Assistant - [Project Name]

## MCP Service Integration
**Shared Practices**: `devops-practices` MCP server

Claude has access to shared DevOps practices via MCP:
- Air-gapped workflow
- Documentation standards
- Session continuity protocols
- Task tracking guidelines
- Git best practices
- Efficiency guidelines

โš ๏ธ Fallback: If MCP unavailable, see Appendix or GitHub practices

## Project-Specific: [Project Details]
[Only project-specific instructions here]

## Appendix: Critical Practices (Fallback)
[Emergency practice summaries if MCP down - see CLAUDE-template.md]

Benefits

  • DRY: Shared practices written once, used everywhere
  • Consistency: All projects follow same standards
  • Maintainability: Update once, all projects benefit
  • Discoverability: Claude can query practices when needed
  • Resilient: Fallback to GitHub/local/appendix if MCP unavailable

Template: See CLAUDE-template.md for full structure including fallback appendix

---

Installation & Setup

๐Ÿ”ง Manual Installation (Most Stable - Recommended for Development)

Best for: Developers, contributors, or anyone who wants full control

1. Clone Repository

# Clone to recommended location
git clone https://github.com/ai-4-devops/devops-practices.git ~/.mcp-servers/devops-practices
cd ~/.mcp-servers/devops-practices

2. Install Dependencies

# Using uv (10-100x faster)
curl -LsSf https://astral.sh/uv/install.sh | sh
uv pip install -r requirements.txt

# Or using traditional pip
pip install -r requirements.txt

3. Configure MCP Server

Edit ~/.claude/config.json: ``json { "mcpServers": { "devops-practices": { "command": "python3", "args": ["-u", "~/.mcp-servers/devops-practices/mcp-server.py"], "env": {"PYTHONUNBUFFERED": "1"} } } } ``

4. Restart Claude Code/Desktop

5. Verify MCP Connection

Ask Claude: "Can you list the available DevOps practices from the MCP server?"

๐Ÿ’ก Tip: Claude may need a reminder to check the MCP. If it doesn't respond with practice names, try:

  • "Please verify you can access the devops-practices MCP server"
  • "List all available MCP tools"
  • Restart Claude Code again

---

๐Ÿงช Experimental / Testing (For Nerds)

โš ๏ธ Note: These methods are experimental and not yet fully tested. Use Manual Installation (above) for reliable setup.

Option 1: MCP Registry via Claude Desktop UI (Experimental):

  1. Open Claude Desktop
  2. Go to Settings โ†’ Developer โ†’ MCP Servers
  3. Search for "devops-practices"
  4. Click "Install"
  5. Restart Claude Code/Desktop

Option 2: Install via uvx (โœจ Recommended - automatic venv): ```bash

Add MCP server using uvx (handles venv automatically)

claude mcp add devops-practices -- uvx devops-practices-mcp

Restart Claude Code/Desktop to activate

**Why recommended:** `uvx` automatically manages the virtual environment for you - no setup needed.

**Option 3: Install with uv + venv** (For Python developers):

Install uv if you don't have it

curl -LsSf https://astral.sh/uv/install.sh | sh

Create virtual environment

uv venv ~/.venvs/devops-practices-mcp

Activate venv

source ~/.venvs/devops-practices-mcp/bin/activate

Install MCP server

uv pip install devops-practices-mcp

Add to Claude configuration (using venv's python)

claude mcp add devops-practices -- ~/.venvs/devops-practices-mcp/bin/python -m devops_practices_mcp

Restart Claude Code/Desktop to activate

**Why use this:** Full control over the virtual environment with modern `uv` tooling.

**Option 4: Install to user directory** (Legacy - no venv):

Install using pip (to ~/.local/)

pip install --user devops-practices-mcp

Add to Claude configuration

claude mcp add devops-practices -- python3 -m devops_practices_mcp

Restart Claude Code/Desktop to activate


**Option 5: Install system-wide** (Requires sudo):

Install system-wide (requires root)

sudo pip install devops-practices-mcp

Add to Claude configuration

claude mcp add devops-practices -- python3 -m devops_practices_mcp

Restart Claude Code/Desktop to activate


**Option 6: Manual configuration** (Edit config files directly):

Install via pip or uvx, then edit `~/.claude/config.json`:

{ "mcpServers": { "devops-practices": { "command": "uvx", "args": ["devops-practices-mcp"], "env": {} } } } ```

---

Real-World Use Cases

1. Multi-Environment Kafka Deployment

Scenario: Deploying Kafka across dev โ†’ test โ†’ uat โ†’ prod

Without MCP:

  • Duplicate 580-line CLAUDE.md in each project
  • Repeat same issues on each environment (12 hours total)
  • No standardized approach across teams

With MCP:

  • Claude queries get_practice("configuration-management") for installation SOPs
  • Copies dev runbook for test environment (56% time savings)
  • All teams follow same standards automatically

Result: 5.25 hours vs 12 hours (56% faster)

2. Standardized Git Workflow

Scenario: Team needs consistent branching strategy

Without MCP:

  • Each project has different branching approach
  • New team members confused about workflow
  • Git practices documented differently everywhere

With MCP:

  • Claude queries get_practice("02-01-git-practices")
  • Everyone gets same 200+ line GitLab Flow documentation
  • Single source of truth for git standards

Result: Consistent workflow across all 15 projects

3. Air-Gapped Infrastructure Deployment

Scenario: Deploying to secure environment without internet

Without MCP:

  • Re-explain workflow every session
  • Copy-paste commands from old runbooks
  • Inconsistent file transfer procedures

With MCP:

  • Claude queries get_practice("air-gapped-workflow")
  • Gets step-by-step: Laptop โ†’ S3 โ†’ Bastion โ†’ Target
  • Consistent process every time

Result: Zero security incidents, predictable deployments

4. Project Documentation Setup

Scenario: Starting new infrastructure project

Without MCP:

  • Create CLAUDE.md from scratch (2 hours)
  • Copy-paste from old projects (inconsistent)
  • Miss important practices

With MCP: `` User: "Create project structure for monitoring-stack project" Claude: [Queries MCP for templates] Claude: Creates TRACKER.md, CURRENT-STATE.md, RUNBOOK.md All following latest standards ``

Result: 15 minutes vs 2 hours (88% faster)

5. Issue Tracking for Complex Projects

Scenario: Managing 50+ work items across 3-month project

Without MCP:

  • Use external Jira (access issues, overhead)
  • Or track in scattered markdown files
  • No consistent format

With MCP:

  • Claude queries get_template("ISSUES")
  • Creates in-repo issue tracking with dashboard
  • Uses tools/issue-manager.sh for CLI management

Result: Git-based tracking, no external dependencies

---

Usage Examples

For Claude

When working on your projects:

Query Practice: `` User: "What's the air-gapped workflow for file transfers?" Claude: [Queries MCP: get_practice("air-gapped-workflow")] Claude: [Receives markdown content] Claude: "Here's the air-gapped workflow..." ``

Get Template (Raw): `` User: "Show me the TRACKER template" Claude: [Queries MCP: get_template("TRACKER-template")] Claude: [Receives template with ${VARIABLES}] Claude: "Here's the template..." ``

Render Template (With Variables): `` User: "Create a TRACKER.md for my kafka-deployment project" Claude: [Queries MCP: render_template("TRACKER-template", { "PROJECT_NAME": "kafka-deployment", "DATE": "2026-02-14", "PHASE_NAME": "UAT Deployment" })] Claude: [Receives rendered template with all variables substituted] Claude: [Creates TRACKER.md with actual values] ``

Updating Practices

For Contributors: ```bash cd devops-practices-mcp vim practices/documentation-standards.md

Make changes

git add practices/documentation-standards.md git commit -m "Update documentation standards: add new RUNBOOKS guidelines" git push

All projects using this MCP server now get updated standards


---

## Branching Strategy

This repository uses **GitLab Flow** with semantic versioning to ensure stability for dependent projects.

### Branch Structure

main โ† Production releases only (v1.0.0, v1.1.0, etc.) โ†‘ develop โ† Active development, integration branch โ†‘ feature/ โ† New practices, templates release/ โ† Version preparation (v1.2.0) hotfix/* โ† Critical production fixes ```

Branch Types

| Branch | Purpose | Created From | Merges To | |--------|---------|--------------|-----------| | main | Production releases (tagged) | - | - | | develop | Active development | main | main (via release) | | feature/ | New functionality | develop | develop | | release/ | Version preparation | develop | main + develop | | hotfix/* | Critical fixes | main | main + develop |

Why GitLab Flow?

  • โœ… Stability: main always contains tested, production-ready code
  • โœ… Safety: Changes go through develop before reaching production
  • โœ… Testing: CI/CD validates all changes before merge
  • โœ… Versioning: Clear semantic version releases (v1.0.0, v1.1.0, etc.)
  • โœ… Traceability: Full history of what changed and when

Quick Workflows

Add New Practice/Template: ```bash git checkout develop git checkout -b feature/add-security-practice

Make changes, commit

git push origin feature/add-security-practice

Create PR โ†’ develop


**Create Release**:

git checkout develop git checkout -b release/v1.2.0

Update CHANGELOG.md, version numbers

Create PR โ†’ main

Tag release: git tag v1.2.0

Merge back to develop


**Critical Hotfix**:

git checkout main git checkout -b hotfix/critical-bug

Fix, commit, push

Create PR โ†’ main (fast-track)

Also merge to develop


**Full Documentation**: See [CONTRIBUTING.md](CONTRIBUTING.md) and [git-practices.md](practices/git-practices.md)

---

## Governance

### Who Maintains This
- **Owner**: Uttam Jaiswal Lead
- **Contributors**: DevOps Engineers
- **Review Process**: PR required for changes

### Update Protocol

**For New Practices/Templates**:
1. Create feature branch from `develop`
2. Update practice or template files
3. Run health check: `bash health-check.sh`
4. Update documentation (README.md, PRACTICE-INDEX.md)
5. Create PR with description โ†’ `develop`
6. Code review by team
7. Merge to `develop` after CI/CD passes

**For Releases**:
1. Create release branch from `develop`: `release/v1.x.0`
2. Update CHANGELOG.md and version numbers
3. Create PR โ†’ `main`
4. Tag release after merge: `git tag v1.x.0`
5. Merge release back to `develop`
6. Announce to team (affects all dependent projects)

**For Critical Fixes**:
1. Create hotfix branch from `main`: `hotfix/issue-name`
2. Fix issue and test thoroughly
3. Create PR โ†’ `main` (fast-track approval)
4. Tag hotfix release: `git tag v1.x.1`
5. Merge to `develop` to keep in sync
6. Announce urgent fix to team

**See**: [CONTRIBUTING.md](CONTRIBUTING.md) for detailed workflows

### Versioning
- **Major version** (2.0): Breaking changes to structure
- **Minor version** (1.1): New practices added
- **Patch version** (1.0.1): Clarifications, fixes

---

## Projects Using This MCP Server

| Project | Purpose | Location |
|---------|---------|----------|
| kafka-deployment | Apache Kafka deployment | Example project
| observability-stack | Observability stack | Example project
| network-infra | Network infrastructure | Example project

---

## Development

**See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed contribution workflow, branching strategy, and code review process.**

### Adding a New Practice
1. Create markdown file in `practices/`
2. Use clear structure with examples
3. Update `mcp-server.py` if needed
4. Test with Claude
5. Update this README (practice count)
6. Update [PRACTICE-INDEX.md](PRACTICE-INDEX.md) (add to scenario lists)
7. Update [CHANGELOG.md](CHANGELOG.md) (document the addition)
8. Run health check: `bash health-check.sh`

### Adding a New Template
1. Create template file in `templates/`
2. Use placeholders: `${PROJECT_NAME}`, `${DATE}`, etc. (see auto-provided variables in MCP Tools section)
3. No code changes needed - `render_template` handles all `${...}` substitutions automatically
4. Test template: `render_template("your-template", {"VAR": "value"})`
5. Update this README (template count)
6. Update [CHANGELOG.md](CHANGELOG.md) (document the addition)
7. Run health check: `bash health-check.sh`

### Making Changes
- **Before release:** Run health check to validate all files
- **After changes:** Update CHANGELOG.md with version bump
- **Breaking changes:** Update MIGRATION-GUIDE.md with migration notes
- **New features:** Update PRACTICE-INDEX.md with usage scenarios

---

## Troubleshooting

### Claude Can't Access MCP Server

**Symptoms:** Claude doesn't return practices when asked, or acts like MCP doesn't exist

**Solutions:**
1. **Remind Claude explicitly:** "Please check the devops-practices MCP server and list available practices"
2. **Verify MCP is loaded:** Ask "What MCP servers do you have access to?"
3. **Check configuration:** Verify `~/.claude/config.json` has correct paths (must be absolute paths)
4. **Restart Claude Code:** MCP servers load on startup
5. **Check logs:** Look at `~/.cache/claude/mcp-devops-practices.log` for errors
6. **Verify MCP process:** Run `ps aux | grep mcp-server.py` to confirm it's running

**๐Ÿ’ก Pro Tip:** Claude sometimes "forgets" to check MCP servers. Explicitly remind it to verify the MCP before proceeding with tasks.

**Log location:** `~/.cache/claude/mcp-devops-practices.log`

### MCP Server is Down or Unavailable

**Symptoms:** MCP server process crashed, not responding, or cannot start

**Fallback Options:**

**Option 1: GitHub Practices (Recommended)**

Access practices directly from GitHub: https://github.com/ai-4-devops/devops-practices/tree/main/practices

Ask Claude to read practices via GitHub URLs when MCP unavailable. ```

Option 2: Local Clone ```bash

Access practices from local clone

ls ~/.mcp-servers/devops-practices-mcp/practices/

Read practice directly

cat ~/.mcp-servers/devops-practices-mcp/practices/03-02-air-gapped-workflow.md ```

Option 3: CLAUDE.md Appendix ``` Projects using the CLAUDE-template.md have a built-in appendix with critical practice summaries for emergency fallback.

See: templates/CLAUDE-template.md (Appendix section) ```

Prevention:

  • Use .mcp.json for project-level config (more reliable)
  • Add MCP health check to pre-session checklist
  • Keep local clone updated: git pull origin main
  • Monitor logs: tail -f ~/.cache/claude/mcp-devops-practices.log

Related: MIGRATION-GUIDE.md for project-specific fallback setup

Practice File Not Found

  1. Verify file exists: ls practices/
  2. Check filename matches exactly (case-sensitive)
  3. Check MCP server logs

Template Substitution Failing

  1. Verify placeholder syntax: ${VARIABLE}
  2. Check template file encoding (UTF-8)
  3. Review mcp-server.py logs

---

License

MIT License - Free to use and modify

---

Maintained By: Uttam Jaiswal Last Updated: 2026-02-20 Version: 1.4.0

Related MCP servers

Browse all โ†’