Token导航 LogoToken导航TokenDH.com
Incident Context Engine logo
运维云端stdio官方级别未说明来源级核验

Incident Context Engine

MCP Server

ICE是一个通过MCP服务器为大型语言模型(LLM)提供运行时和DevOps上下文的系统,用于自动化分析Kubernetes/OpenShift等云原生架构中的事件。

工具数

8

提示词数

0

GitHub Stars

0

资源数

0
PythonVS Code云端部署VS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

fernet-ai

提供方

fernet-ai

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r backend/requirements.txt

详细介绍

Incident Context Engine (ICE)

1. Introduzione

Nelle moderne architetture cloud-native basate su Kubernetes/OpenShift, CI/CD e microservizi, l’analisi degli incidenti applicativi richiede spesso la consultazione manuale di molteplici sistemi:

  • log applicativi
  • stato dei pod Kubernetes
  • deployment e container image
  • pipeline CI/CD
  • commit Git
  • build artifacts

Queste informazioni sono distribuite tra diversi strumenti come:

  • OpenShift / Kubernetes
  • Azure DevOps
  • Git repositories
  • CI/CD pipelines

Il risultato è che il troubleshooting richiede spesso navigazione manuale tra sistemi diversi, aumentando il tempo necessario per identificare la causa di un problema.


2. Visione del progetto

L'Incident Context Engine (ICE) è un sistema progettato per fornire contesto runtime e DevOps a un Large Language Model (LLM) tramite un MCP Server.

In pratica:

ICE espone API interrogabili da GitHub Copilot che permettono all'LLM di recuperare automaticamente informazioni da:

  • OpenShift / Kubernetes
  • Azure DevOps
  • CI/CD pipelines
  • repository Git

Questo permette a Copilot di analizzare incidenti reali con contesto live del sistema.


3. Obiettivo

L’obiettivo del progetto è permettere a GitHub Copilot o altri LLM di rispondere a domande operative come:

  • “Perché questo servizio sta crashando?”
  • “Quale commit ha introdotto questo errore?”
  • “Quale pipeline ha deployato questa versione?”
  • “Chi ha fatto l’ultima modifica al servizio?”

senza che l’utente debba manualmente interrogare:

  • oc
  • Azure DevOps
  • Git
  • pipeline CI/CD

Il modello LLM può invece interrogare direttamente il MCP server ICE, che fornisce il contesto necessario.


4. Ruolo dell’MCP Server

Il Model Context Protocol (MCP) consente agli LLM di interrogare sistemi esterni tramite tool strutturati.

Nel progetto ICE, il MCP server funge da ponte tra Copilot e l’infrastruttura DevOps.

Architettura:

Developer
    ↓
GitHub Copilot (LLM)
    ↓
MCP Client (IntelliJ / VSCode)
    ↓
Incident Context Engine (MCP Server)
    ↓
-------------------------------------
OpenShift CLI (oc)
Azure DevOps APIs
Kubernetes APIs
Git APIs

Il server MCP espone endpoint che permettono all’LLM di interrogare il sistema runtime.


5. Tipologia di informazioni fornite all'LLM

Il server ICE aggrega dati provenienti da diversi sistemi.

Runtime (OpenShift / Kubernetes)

  • pod status
  • restart count
  • container crash
  • OOMKilled
  • readiness probe failure
  • pod logs
  • resource usage (CPU / memory)

Deployment Context

  • deployment name
  • container image
  • image tag
  • numero di repliche

CI/CD Context (Azure DevOps)

  • build pipeline
  • build status
  • artifact generati
  • commit associato alla build

Git Context

  • commit ID
  • autore
  • messaggio
  • timestamp

6. Esempio di interrogazione LLM

Uno sviluppatore può chiedere a Copilot:

"Perché il servizio backend sta crashando in produzione?"

Copilot può automaticamente interrogare il server MCP:

getOpenShiftIncidentContext(service="backend")

Il server ICE esegue:

oc get pods
oc logs
oc describe pod

E interroga Azure DevOps per correlare:

  • build
  • pipeline
  • commit

7. Output restituito al LLM

Il server MCP restituisce un JSON strutturato:

{
  "service": "backend",
  "error": "NullPointerException",
  "pod": "backend-5f98d",
  "deployment": "backend",
  "image": "backend:20250306.1",
  "build": 8452,
  "pipeline": "backend-ci",
  "commit": "abc123",
  "author": "Mario Rossi",
  "message": "fix login bug"
}

Copilot può quindi interpretare il contesto e spiegare all’utente:

"Il crash è probabilmente causato dal commit abc123 introdotto nella build 8452."

8. Vantaggio principale

Il valore del sistema non è solo raccogliere dati, ma renderli immediatamente utilizzabili da un LLM.

Questo abilita un nuovo paradigma:

AI-assisted incident investigation

Dove un LLM può:

  • investigare incidenti
  • correlare dati runtime e CI/CD
  • suggerire cause probabili
  • indicare commit responsabili

9. Benefici

Riduzione del MTTR

Diagnosi incidenti molto più veloce.

Contesto runtime per Copilot

Copilot non lavora più solo sul codice, ma anche sul runtime reale del sistema.

Automazione troubleshooting

L’LLM può eseguire automaticamente le interrogazioni tecniche.

Migliore collaborazione tra team

SRE, DevOps e sviluppatori condividono lo stesso contesto.


10. Evoluzioni future

Il progetto può essere esteso con:

  • integrazione Dynatrace
  • analisi automatica delle regressioni
  • correlazione incidenti multi-servizio
  • alert intelligenti

11. Setup e Configurazione

Per utilizzare ICE come MCP Server, segui questi passaggi:

1. Configurazione delle Credenziali

Copia il file .env ed inserisci i tuoi token e URL:

# OpenShift
OPENSHIFT_API_URL=https://api.cluster.example.com:6443
OPENSHIFT_TOKEN=tuo-token-qui        # Ottienilo con: oc whoami -t
OPENSHIFT_NAMESPACE=tuo-namespace

# Azure DevOps
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/tua-org
AZURE_DEVOPS_PAT=tuo-pat-qui         # Personal Access Token con permessi Build/Code
AZURE_DEVOPS_PROJECT=tuo-progetto

2. Installazione Dipendenze

Assicurati di avere Python 3.10+ installato, quindi esegui:

pip install -r backend/requirements.txt

3. Integrazione con GitHub Copilot

Per integrare ICE in VS Code con GitHub Copilot, crea (o modifica) il file di configurazione MCP di VS Code:

  • Windows: %APPDATA%\Code\User\globalStorage\github.copilot-chat\mcp.json
  • macOS/Linux: ~/Library/Application Support/Code/User/globalStorage/github.copilot-chat\mcp.json

Aggiungi la configurazione per ICE:

{
  "mcpServers": {
    "incident-context-engine": {
      "command": "python",
      "args": ["c:/percorso/assoluto/a/incident-context-engine/backend/main.py"],
      "env": {
        "PYTHONPATH": "c:/percorso/assoluto/a/incident-context-engine/backend;c:/percorso/assoluto/a/incident-context-engine/execution"
      }
    }
  }
}

4. Avvio del Server

Il server viene avviato automaticamente da Copilot tramite il comando configurato sopra. Per testarlo manualmente:

python backend/main.py

12. Tool Disponibili

Attualmente ICE espone i seguenti tool all'LLM:

CategoriaToolDescrizione
OpenShiftget_pod_statusStato dei pod (crash, restart, oom)
OpenShiftget_pod_logsRecupera gli ultimi N log di un pod
OpenShiftget_deployment_infoInfo su immagine e repliche
Azure DevOpsget_build_infoDettagli di build specifiche o recenti
Azure DevOpsget_pipeline_runsUltime esecuzioni di una pipeline
Azure DevOpsget_recent_commitsUltimi commit su un repository Git
Azure DevOpsget_repositoriesLista dei repository Git nel progetto
Compositoget_incident_contextAggregatore: combina runtime e CI/CD in un unico report

13. Testing con MCP Inspector

Se non hai mai usato un server MCP o vuoi testare i tool senza usare Copilot, il metodo più semplice è usare l'MCP Inspector.

A cosa serve?

L'Inspector apre un'interfaccia web interattiva che ti permette di:

  • Vedere l'elenco dei tool registrati dal server.
  • Inserire manualmente i parametri di input (es. il nome di un servizio).
  • Eseguire il tool e vedere l'output JSON reale restituito dai client (OpenShift/Azure DevOps).
  • Verificare se le tue credenziali nel .env sono corrette.

Come usarlo

Dalla cartella root del progetto, esegui:

npx @modelcontextprotocol/inspector python backend/main.py
  1. Il comando avvierà l'ispettore e ti fornirà un link (es. http://localhost:6274/...).
  2. Apri il link nel browser.
  3. Seleziona un tool dalla lista (es. get_pod_status).
  4. Inserisci un parametro (es: service: "backend") e clicca su "Run Tool".
  5. Vedrai la risposta del sistema in tempo reale.

È il modo migliore per assicurarsi che tutto sia configurato correttamente prima di passare all'integrazione finale in VS Code.

目录标签

目录标签

PythonVS Code云端部署事件分析本地部署Kubernetes监控DevOps自动化LLM集成CI/CD关联

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP