Skip to main content
Glama
sanjana-peter

mcp-incident-triage-agent

README.md
# MCP Incident Triage Agent

A deliberately small TypeScript project demonstrating two things:

1. A custom Model Context Protocol (MCP) server that exposes validated backend-operations tools.
2. An AI agent that discovers and invokes those MCP tools to investigate a sample incident.

This is a portfolio project, not a production monitoring platform.

## What it does

The agent can inspect local sample data through two read-only MCP tools:

- `get_service_health` — returns service status, latency, error rate, and dependency information.
- `search_logs` — filters recent logs by service, severity, text, or trace ID.

The agent then produces an evidence-based incident summary with a likely cause and next action.

## Architecture

```text
User prompt
    |
OpenAI Agents SDK
    |
MCP client over stdio
    |
Custom TypeScript MCP server
    |
In-memory service-health and log data
```

## Why the scope is intentionally small

Included:

- One CLI agent
- One local MCP server
- Two read-only tools
- Zod input validation
- Sample operational data
- Unit tests
- Error handling and server cleanup

Not included:

- Web UI
- Database
- Authentication
- Cloud deployment
- Message queues
- Vector database
- Multi-agent orchestration

Those additions would make the project easier to abandon without making the résumé claim much stronger.

## Requirements

- Node.js 20 or newer
- An OpenAI API key

## Setup

```bash
npm install
cp .env.example .env
```

Add your API key to `.env`.

## Run the tests

```bash
npm test
```

## Run the agent

```bash
npm run agent -- "Investigate the learning-api degradation and recommend the safest next action."
```

Try another prompt:

```bash
npm run agent -- "Which service is unhealthy, and what log evidence supports the diagnosis?"
```