ai-devsecops-agent-mcp-server
An MCP server that gives LLM clients six DevSecOps tools for pipeline, vulnerability, log, dependency, Kubernetes, and SRE-metric inspection.
get_pipeline_status— fetch recent GitHub Actions runs, filterable by branch and status (success/failure/in_progress/queued).triage_vulnerabilities— query the vulnerability board for CVEs ranked by severity, filterable by status (open/resolved/ignored) and minimum severity.search_logs— search application logs by service, level (INFO/WARN/ERROR/DEBUG), and keyword, returning timestamps and trace IDs.scan_dependencies— scan project dependencies for known vulnerabilities with an optional minimum severity threshold.get-kubernetes-events— fetch recent K8s events for a required namespace (default limit 50) to correlate OOMKills, scheduling failures, and deployment issues.get-prometheus-metrics— pull error-rate, latency, CPU, or memory metrics for a service over a configurable time window for SLI/SLO analysis.
Fetches CI/CD pipeline runs from GitHub Actions to monitor build status and pipeline health.
Queries a vulnerability board in Jira and returns severity-ranked CVEs for vulnerability triage.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ai-devsecops-agent-mcp-server What's the status of the main CI pipeline and any critical vulnerabilities?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AI-Assisted DevSecOps Agent — MCP Server 🤖🔒
An MCP (Model Context Protocol) server exposing DevSecOps tooling to LLM clients.
⚡ Progressive Execution: Supports zero-config simulation by default (Tier 1) and seamlessly promotes to live GitHub Actions and Kubernetes integrations when credentials are provided (Tier 2/3). See Execution Tiers.
The Problem
DevSecOps teams drown in context-switching: checking pipeline status in one tab, triaging vulnerabilities in another, searching logs in a third. Meanwhile, LLM coding assistants can write code but are blind to your operational reality — they can't see your failing builds, open CVEs, or production errors.
Related MCP server: SCML MCP Server
The Solution
This MCP server bridges the gap by exposing six security-critical tools to any MCP-compatible LLM client (GitHub Copilot, Claude Desktop, Cursor, etc.):
Tool | What It Does |
| Fetches CI/CD pipeline runs from GitHub Actions |
| Queries a vulnerability board and returns severity-ranked CVEs |
| Searches application logs by service, severity, and time range |
| Analyzes a |
| Fetches recent K8s events for incident correlation (OOMKills, scheduling failures) |
| Correlates SRE incidents across pipeline, vulnerability, and runtime data |
Why This Over the Obvious Alternative
Most "AI + DevOps" demos are chatbots with hardcoded responses. This project implements the Model Context Protocol (MCP) — the open standard for tool-use that GitHub Copilot, Claude, and other major LLM clients natively support. The tools return real, structured data that the LLM reasons over, not canned answers.
Architecture
┌─────────────────┐ MCP (stdio/SSE) ┌────────────────────────┐
│ LLM Client │◄───────────────────────►│ MCP Server │
│ (Copilot, │ │ │
│ Claude, etc.) │ │ ┌──────────────────┐ │
│ │ │ │ Pipeline Tool │ │
│ │ │ │ Vuln Triage Tool │ │
│ │ │ │ Log Search Tool │ │
│ │ │ │ Dep Scan Tool │ │
│ │ │ │ K8s Events Tool │ │
│ │ │ │ SRE Incident Tool│ │
│ │ │ └──────────────────┘ │
└─────────────────┘ └────────────────────────┘
│
┌───────┴───────┐
│ Mock Data │
│ (Simulated │
│ APIs) │
└───────────────┘🛠️ Tech Stack
Runtime: Node.js + TypeScript
Protocol: Model Context Protocol (MCP) SDK
Transport: stdio (local) and SSE (remote)
Containerization: Docker
🚀 Getting Started
Local Development
npm install
npm run build
npm run startWith Docker
docker-compose up -d --buildConnecting to Claude Desktop & MCP Clients
Option 1 — Direct Configuration (claude_desktop_config.json or .mcp.json)
Add to your Claude Desktop or Cursor configuration:
{
"mcpServers": {
"ai-devsecops-agent-mcp": {
"command": "node",
"args": ["dist/index.js"]
}
}
}Option 2 — 1-Click Installation via Smithery.ai
This server includes a verified smithery.yaml configuration for automated installation:
npx -y @smithery/cli install ai-devsecops-agent-mcp --client claudeOption 3 — Glama.ai Registry Manifest
This repository provides a standardized glama.json manifest conforming to https://glama.ai/mcp/schemas/server.json for directory indexing, tool inspection, and ownership claiming on the Glama.ai MCP Registry.
📁 Project Structure
src/
├── index.ts # MCP Server entry point
├── tools/
│ ├── pipeline.tool.ts # GitHub Actions pipeline status
│ ├── vulnerability.tool.ts # CVE triage from mock board
│ ├── logs.tool.ts # Log search across services
│ └── dependency.tool.ts # Dependency vulnerability scanning
└── data/
└── mock-data.ts # Simulated API responsesDecision Log
Decision | Rationale |
MCP over REST API | MCP is the emerging standard for LLM tool-use; REST would require custom integration per client |
TypeScript over Python | Aligns with existing TypeScript expertise; MCP TS SDK is mature |
Mock data layer | Keeps the PoC self-contained without requiring real GitHub/Jira API keys |
stdio transport | Default for local MCP; SSE available for remote deployment |
📋 Prerequisites
Tool | Version | Purpose |
>= 20.x | Runtime | |
>= 10.x | Package manager | |
>= 24.x | Containerization (optional) | |
MCP Client | Any | Claude Desktop, GitHub Copilot, Cursor, etc. |
🚀 Step-by-Step Setup
Option A: Local Development
# 1. Clone the repository
git clone https://github.com/SumitDalavi/ai-devsecops-agent-mcp.git
cd ai-devsecops-agent-mcp
# 2. Install dependencies
npm install
# 3. Build the TypeScript project
npm run build
# 4. Start the MCP server (stdio transport)
npm run startOption B: Docker
# 1. Clone and build
git clone https://github.com/SumitDalavi/ai-devsecops-agent-mcp.git
cd ai-devsecops-agent-mcp
# 2. Build and run
docker build -t devsecops-mcp-agent .
docker run -i devsecops-mcp-agentConnecting to Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"ai-devsecops-agent-mcp": {
"command": "node",
"args": ["/absolute/path/to/ai-devsecops-agent-mcp/dist/index.js"]
}
}
}🧪 Usage & Demo
Once connected to an MCP client, you can ask natural language questions like:
Prompt | Tool Invoked |
"Show me the latest pipeline runs" |
|
"Are there any critical vulnerabilities?" |
|
"Search for error logs in the payment service" |
|
"Scan dependencies for known CVEs" |
|
"Show me Kubernetes events in production" |
|
"Check for active incidents" |
|
The server returns structured JSON data that the LLM reasons over to provide contextual answers.
✅ Verification
# Verify the build succeeds
npm run build
# Verify the server starts (it will wait for MCP client connection on stdio)
node dist/index.js
# You should see: "DevSecOps MCP Agent running on stdio" on stderrMock Boundaries (Honest Scope)
What | Status | Details |
MCP Protocol | Real | Full Model Context Protocol implementation (stdio). |
GitHub Actions Integration | Real |
|
Other Tools | Mocked | Jira/Log tools return simulated JSON data. |
🚀 Progressive Credential Loading & Execution Tiers
This project implements Progressive Credential Loading (PCL), allowing it to run immediately out-of-the-box without external dependencies while seamlessly upgrading as credentials are provided.
Tier 1: Zero-Config Mock Mode (Default)
Ideal for CI, testing, and rapid local evaluation.
Execution: Run with default configuration (
cp .env.example .env). Zero API keys, databases, or cloud credentials required.Fallback Behavior: In-memory caches, deterministic offline heuristics, mock vector embeddings, and local mock storage are automatically used.
Health Verification: Endpoints report
{"mode": "mock"}for unconfigured dependencies.
Tier 2: Local Development with Live Services
Connect specific external services while keeping others mocked.
Execution: Provide credentials in
.envfor the services you want active (e.g.,GITHUB_TOKEN, GITHUB_REPO, KUBECONFIG).Progressive Upgrade: The runtime inspects environment variables on boot and dynamically promotes only configured modules to live mode.
Safe Fallback: Any missing credentials automatically remain on mock fallbacks with no crashes or missing service errors.
Tier 3: Production Hardened
Enterprise deployment with production-grade backends, security scans, and container distributions.
OCI Container Image: Pre-built, multi-arch image on GitHub Container Registry:
docker pull ghcr.io/sumitdalavi/ai-devsecops-agent-mcp:v0.2.0Production Orchestration: Mount secrets via Kubernetes Secrets or cloud secret managers with atomic config reload support.
Release Verification: Checksums and SPDX SBOM available on GitHub Releases.
🔒 Release & Security Verification
Every tagged release (v*.*.*) triggers an automated DevSecOps release workflow:
Automated Testing: Runs test suite gates before build.
Container Image Build: Builds production container image (
ghcr.io/sumitdalavi/ai-devsecops-agent-mcp:<tag>).Vulnerability Scanning: Scans the image using Aqua Security Trivy for
HIGHandCRITICALCVEs.SBOM Generation: Generates a Software Bill of Materials (SBOM) in SPDX JSON format (
sbom.spdx.json) using Anchore Syft.GitHub Release Publishing: Packages release notes and attaches
sbom.spdx.jsonas a verifiable supply-chain asset.
Verifying Releases via GitHub CLI
# View release details
gh release view v0.2.0 --repo SumitDalavi/ai-devsecops-agent-mcp
# Download and verify SBOM
gh release download v0.2.0 --repo SumitDalavi/ai-devsecops-agent-mcp --pattern "sbom.spdx.json"
cat sbom.spdx.json | jq .MCP Package Usage
Run or install via GitHub Packages npm registry:
npm config set @sumitdalavi:registry https://npm.pkg.github.com
npx @sumitdalavi/ai-devsecops-agent-mcp📚 Documentation
Architecture — System diagram and component details
Runbook — Setup, commands, and expected outputs
Decisions — ADRs for MCP integration
Changelog — Change history
🚀 Declarative Continuous GitOps Deployment
This system is continuously deployed across multi-cluster environments via ArgoCD v2.10+ and Kustomize overlays managed by the multi-cluster-gitops-promotion catalog hub:
deploy/
├── k8s/
│ ├── base/ # Baseline Deployment, Service, ServiceAccount (PodSecurity restricted)
│ └── overlays/
│ ├── dev/ # 1 replica, 300m/256Mi, automated self-healing
│ ├── staging/ # 2 replicas, 500m/512Mi, automated self-healing
│ └── prod/ # 3 replicas, 1000m/1Gi, gated PR promotion
└── argocd/
├── application.yaml # Default staging Application CRD
├── application-dev.yaml # In-cluster dev Application CRD
├── application-prod.yaml # Production gated Application CRD
└── values-override.yaml # Helm/Kustomize values overridesLocal Manifest Dry-Run Validation
# Validate Dev Overlay
kubectl kustomize deploy/k8s/overlays/dev
# Validate Staging Overlay
kubectl kustomize deploy/k8s/overlays/staging
# Validate Production Overlay
kubectl kustomize deploy/k8s/overlays/prod👨💻 Author
Sumit Dalavi — Senior DevSecOps / Platform Engineer GitHub | LinkedIn
Built with a focus on robust patterns, not toy demos.
Available Tools
6 toolsget-kubernetes-eventsA
Fetches recent Kubernetes events for a specific namespace, crucial for correlating deployment failures, OOMKills, or pod scheduling issues.
Inputs: namespace (required), limit.
get_pipeline_statusB
Fetches the status of recent CI/CD pipeline runs from GitHub Actions. Optionally filter by branch or status.
Inputs: branch, status.
get-prometheus-metricsB
Fetches Prometheus metrics for SLI/SLO analysis, specifically error rates and latency spikes.
Inputs: service (required), metricType (required), timeWindowMinutes.
scan_dependenciesC
Scans project dependencies for known vulnerabilities. Optionally filter by minimum severity threshold.
Inputs: min_severity.
search_logsB
Searches application logs by service name, log level, or keyword. Returns matching log entries with timestamps and trace IDs.
Inputs: level, keyword, service.
triage_vulnerabilitiesA
Queries the vulnerability tracking board and returns CVEs ranked by severity. Optionally filter by severity or status.
Inputs: status, severity.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
The tools mostly target distinct data sources: vulnerability board, logs, dependencies, Kubernetes events, CI/CD pipelines, and Prometheus metrics. The only mild overlap is between triage_vulnerabilities and scan_dependencies, which both concern vulnerabilities but differ in action and source. Descriptions help differentiate them, so confusion is unlikely but possible.
The tool names mix snake_case and kebab-case delimiters (e.g., triage_vulnerabilities vs get-kubernetes-events), and some use imperative verbs while others use a get_ prefix. The meanings remain readable, but the set is not consistently formatted. This inconsistency is noticeable though not chaotic.
Six tools is a well-scoped set for an AI DevSecOps agent covering vulnerability triage, dependency scanning, log search, Kubernetes events, pipeline status, and Prometheus metrics. Each tool earns its place without redundancy or excessive breadth. The count fits the investigative, read-oriented purpose.
The surface covers key incident and security investigation areas: CVEs, dependency scans, logs, Kubernetes events, CI/CD status, and SLI/SLO metrics. Minor gaps remain, such as fetching trace details despite search_logs returning trace IDs, or querying alert/incident state directly. These can be worked around or handled by adjacent systems, so coverage is mostly complete.
Maintenance
Related MCP Connectors
Find, vet, and run MCP tools through a secure audited gateway with prompt-injection risk scoring
MCP gateway: one connection for your AI apps, with tool policies, PII redaction and audit logs.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Governed app access for AI agents: 1,000+ apps & 12,000+ tools via Code Mode MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to securely discover, invoke, and manage tools through a hardened MCP endpoint with protections like injection detection, circuit breakers, retry backoff, response caching, context-window limiting, and state snapshots.6 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables LLM agents to enforce security policies by authorizing tool calls, scanning for prompt injection, checking memory writes, redacting PII, and accessing audit trails through MCP.-
- AlicenseNot gradedqualityBmaintenanceTurns any AI coding agent or MCP client into a governed DevOps engineer by exposing policy-enforced tools for Kubernetes, Docker, Jira, Git/PR, CI/CD, AWS, Terraform, and incident response, with approvals, audit logging, secret redaction, and rollback enforced outside the model.6Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables LLMs to orchestrate AI agents and tasks, inspect DAG workflows, monitor cluster metrics, and perform safe database queries and statements through standardized MCP tools.189Apache 2.0